-1
CDate (gg/aa/yyyy) kullanılarak biçimlendirilmiş bir hücreye bir giriş iletisi yanıtı görüntülemek istiyorum. Giriş dd/aa/yy olarak yapıldıysa neden kod hata mesajını göstermiyor? Program kabul eder ancak çıktı yy/mm/dd olarak gösterilir.VBA'da Çalışma Biçimi Çalışma Biçimi
Sub inputSettlementDate()
Dim varInputDate As Variant
Dim lngERow As Long
varInputDate = InputBox("Please enter the Settlement Date using this format dd/mm/yyyy.", "Settlement Date")
If IsDate(varInputDate) Then
varInputDate = Format(CDate(varInputDate), "dd/mm/yyyy")
Else
MsgBox "Please enter a valid date format dd/mm/yyyy"
End If
If IsDate(varInputDate) Then
lngERow = Range("B" & Rows.Count).End(xlUp).Row + 1
Range("B" & lngERow).Value = varInputDate
End If
End Sub
Merhaba ... Biçimi Genel olarak değiştirdim ama yine de aynı. Giriş kutusuna "24/3/2016" yerine "24/3/16" yazdım. Format yanlış olduğu için bir hata mesajı görüntüleyeceğini düşündüm. Çıktı "16/03/2024" olarak gösterir. – ArleneJ
Tamam, önce, daha önce cevaplamadığım bir şey. Eğer dd/aa/yy koyduysanız, IsDate (varInputDate) satırı geçerli bir tarih olarak değerlendirir ve bir hata göstermemek üzere normal işleme girer. "Merhaba dünya" gibi düzenli bir dizeyle deneyin ve hatayı alırsınız. İkinci olarak, CDate, sisteminizin yerel ayarlarına göre tarih biçimlerini tanır. Bunu kaldırmayı deneyin. –
işe yarıyor! Bu benim (not al: ilk önce) kodu ile yanlış bir şey yok ortaya çıkıyor. Teşekkürler! – ArleneJ