Arkadaşlar kullandığım bir fonksiyon var. Makro ile kodlandı bu fonksiyon. Bugüne kadar sorunsuz kullanıyordum. Ancak bu fonksiyon aynı çalışma sayfasında bazı hücrelerde sorunsuz olarak çalışmasına rağmen bazı hücrelerde hatalı sonuç veriyor. Bütün hücrelerin formatı "General" biçiminde. Yani orda da bir sıkıntı yok. Hücre formatları aynı olmasına rağmen bu fonksiyonun bazı hücrelerde çalışıp bazı hücrelerde yanlış sonuç verme nedenini çözemedim. Söz konusu fonksiyon için kullanılan kod herhangi bir spesifik hücre için kodlanmış değil. Bütün çalışma kitabında geçerli. Yardımcı olabilirseniz sevinirim. Sorun ne olabilir?
Kod:
Function FreezeAfter(expression As String, deadline As Date) As Variant
Application.Volatile
Dim myText As String
Dim myVal As Variant
If Now > deadline Then
myText = Application.Caller.Text
If IsNumeric(myText) Then
myVal = Val(myText)
Else
myVal = myText
End If
Else
myVal = Application.Evaluate(expression)
End If
FreezeAfter = myVal
End Function