Tarih formatından sayısal formata dönüşüm

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
2,945
Excel Vers. ve Dili
Office 2013 İngilizce
Merhaba
Ekli dosya da B2 hücresinde belirtilen Ara.75 ifadesini 12,75 sayısal değerine dönüştürmenin pratik bir yolu var mıdır?

Eki.15 >> 10,15
Kas.25
>>
11,75
Ara.75
>> 12,75


gibi...

Teşekkürler,
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,314
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

C++:
=--(AY("1"&SOLDAN(B2;3))&","&SAĞDAN(B2;2))
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
2,945
Excel Vers. ve Dili
Office 2013 İngilizce
Deneyiniz.

C++:
=--(AY("1"&SOLDAN(B2;3))&","&SAĞDAN(B2;2))
Korhan Hocam teşekkürler,
Ben makro ile çözüm sormuştum,
kendime göre aşağıdaki çözümü ürettim ama daha pratik bir yöntemi olabilir mi diye araştırıyordum.
iyi Çalışmalar.

Kod:
Sub Test()
Dim myVar, str As String
Dim a As Byte, x As Byte
Dim deg

myVar = Sayfa1.Range("B2").Value
a = InStr(1, myVar, ".")

If a > 0 Then
    str = Split(myVar, ".")(0)
    deg = Split(myVar, ".")(1)
   x = Select_Case_A(str)

End If

sonuc = CDbl(x & "," & deg)
MsgBox sonuc

End Sub
Kod:
Function Select_Case_A(myStr As String) As Byte
Dim deger As Byte

Select Case myStr

    Case "Oca": deger = 1
    Case "Şub": deger = 2
    Case "Mar": deger = 3
    Case "Nis": deger = 4
    Case "May": deger = 5
    Case "Haz": deger = 6
    Case "Tem": deger = 7
    Case "Ağu": deger = 8
    Case "Eyl": deger = 9
    Case "Eki": deger = 10
    Case "Kas": deger = 11
    Case "Ara": deger = 12
    Case Else: deger = 0

End Select

Select_Case_A = deger

End Function
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,314
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Önerdiğim formülü koda çevirebilirsiniz.

C++:
Option Explicit

Sub Test()
    MsgBox Month(1 & "." & Split(Range("B2").Text, ".")(0)) & "," & Split(Range("B2").Text, ".")(1)
End Sub
 
Üst