Kusura bakmayın, ben deneme yapmak için değiştirmiştim, unutmuşum.
Aşağıdaki formül ile tarih formatına çevriliyor.
Kod:
=METNEÇEVİR(EĞER(SAĞDAN(B3;2)="AM";PARÇAAL(B3;11;2);PARÇAAL(B3;11;2)+12)&YERİNEKOY(PARÇAAL(B3;13;6);".";":")&","&PARÇAAL(B3;20;3);"ss:dd:nn,000 AM/PM")*1
Yukarıdaki formülde, Tarihler aynı olduğu için sadece saat, dakika, saniye... bazında çevirdim.
(06/11/2020, 23:46)alicimri yazdı: Yukarıdaki formülde, Tarihler aynı olduğu için sadece saat, dakika, saniye... bazında çevirdim.
Hocam aslında farklı tarihler de var mümkünse tarihleri de yapabilir misiniz
saatler bu şekilde olmuş elinize sağlık.
01-SEP-20 05.52.08.526000000 PM 00.01.1900 17:52:09
03-SEP-20 06.08.19.588000000 AM 00.01.1900 06:08:20
07-OCT-20 01.28.19.303000000 PM 00.01.1900 13:28:19
12-OCT-20 08.25.25.000000000 AM 00.01.1900 08:25:25
01-NOV-20 10.30.19.881000000 AM 00.01.1900 10:30:20
02-NOV-20 03.05.02.944000000 PM 00.01.1900 15:05:03
Doğru anladıysam alttaki kod olması gerek.
Sub SaatTarh()
Dim aranan, parca, parca1, i As Long, son As Long
Range("L3:L" & Rows.Count).ClearContents
son = Range("A" & Rows.Count).End(3).Row
If son < 3 Then son = 3
For i = 3 To son
aranan = Range("B" & i).Value
parca = Replace(Mid(aranan, InStr(1, aranan, " ") + 1, 8), ".", ":")
If InStr(1, aranan, "AM") > 0 Then
parca1 = (12 + Left(parca, 2) + 0) & Mid(parca, 3, 8)
Else
parca1 = parca
End If
Range("L" & i).Value = Mid(aranan, 1, InStr(1, aranan, " ") - 1) & " " & parca1
Next
Range("L4:L1048576").NumberFormat = "dd.mm.yyyy hh:mm:ss"
End Sub
Sayın @
feraz
Bende uğraşıyordum, sen işi çözmüşsün ama AM öğleden önce, PM öğleden sonra, ters olmuş.
(07/11/2020, 10:25)alicimri yazdı: Sayın @feraz
Bende uğraşıyordum, sen işi çözmüşsün ama AM öğleden önce, PM öğleden sonra, ters olmuş.
İnşAllah çözülmüştür.Dediğiniz olay için PM ile değişmesi gerekir ilkili yer