• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Çözüldü Excelde Metin Türünde Olan Tarihi Sayı Türüne Çevirmek

Katılım
29 Kasım 2022
Mesajlar
10
Excel Vers. ve Dili
Microsoft 365 Tr 64 Bit
Ofis 2016 Tr 64 Bit
Merhaba;

Dış listeden aldığım veri İngilizce olarak "Aug 29, 2022 12:28:31 PM" şeklinde geliyor. İki tarih arası hesaplamak istediğimde de bu tarihten çıkarma yapılamıyor. Yardımcı olabilir misiniz?
 
Merhaba,

Profilinizde sadece "2016" yazıyor. Hangi dili kullandığınızı da belirtirseniz size verilecek cevaplarda faydalı olacaktır.
 
Sorun günceldir denilen değişiklikler yapılmıştır.
 
A1 hücresindeki veri için deneyiniz.

C++:
=(TRIM(SUBSTITUTE(LEFT(A1;FIND(",";A1)-1);LEFT(A1;3);""))&"."&LOOKUP(LEFT(A1;3);{"Apr";"Aug";"Dec";"Feb";"Jan";"Jul";"Jun";"Mar";"May";"Nov";"Oct";"Sep"};{4;8;12;2;1;7;6;3;5;11;10;9})&"."&TRIM(MID(A1;FIND(",";A1)+1;5)))*1+MID(SUBSTITUTE(A1;" ";"_";3);FIND("_";SUBSTITUTE(A1;" ";"_";3))+1;11)*1
 
Kodları module ekleyip, sayfa üzerinden =tarihCevir(A1) şeklinde kullanabilirsiniz.
Kod:
Function tarihCevir(metin)
    Dim aylar, bol, ay, tarih As Date, saat As Date
    aylar = Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec")
    bol = Split(Replace(metin, ",", ""), " ")
    tarih = DateSerial(bol(2), Application.Match("Aug", aylar, 0), bol(1))
    saat = TimeValue(bol(3) & " " & bol(4))
    tarihCevir = tarih & " " & saat
End Function
 
Ofis 365 için alternatif...

İngilizce sürümde denedim..

C++:
=(INDEX(TEXTSPLIT(SUBSTITUTE(A1,",","")," "),2)&INDEX(TEXTSPLIT(SUBSTITUTE(A1,",","")," "),1)&INDEX(TEXTSPLIT(SUBSTITUTE(A1,",","")," "),3))+INDEX(TEXTSPLIT(SUBSTITUTE(A1,",","")," "),4)
 
Yine Ofis 365 için başka bir alternatif..

Bu biraz daha kısa hali..

C++:
=TEXTJOIN(" ",1,INDEX(TEXTSPLIT(SUBSTITUTE(A1,",","")," "),{2;1;3;4}))*1
 
Kodları module ekleyip, sayfa üzerinden =tarihCevir(A1) şeklinde kullanabilirsiniz.
Kod:
Function tarihCevir(metin)
    Dim aylar, bol, ay, tarih As Date, saat As Date
    aylar = Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec")
    bol = Split(Replace(metin, ",", ""), " ")
    tarih = DateSerial(bol(2), Application.Match("Aug", aylar, 0), bol(1))
    saat = TimeValue(bol(3) & " " & bol(4))
    tarihCevir = tarih & " " & saat
End Function


Merhaba;

Çok iyi şekilde çalıştı. Metinsel formattaki tarihleri sayıya çeviriyor. İki tarih arasındaki farkıda manuel olarak gerçekleştiriyorum.
 
Geri
Üst