Добрый день! Не нашел решение своей проблеме. Может уже и обсуждалось.
Написал две простые функции:
[vba]Код
Function objFileDate(n1)
'If Dir(n1) <> "" Then Range(n2) = FileDateTime(objFile)
If Dir(n1) = "" Then objFileDate = "не создан"
If Dir(n1) <> "" Then objFileDate = "создан"
End Function
Function DateFile(oFile As String)
If Dir(oFile) = "" Then DateFile = ""
If Dir(oFile) <> "" Then DateFile = FileDateTime(oFile)
End Function
[/vba]
На листе "Лист1" вписал вот такой код:
[vba]Код
Private Sub Worksheet_Activate()
Calculate
End Sub
[/vba]
Проблема в том что если переключится между листами функции не пересчитываются.
Для проверки создал два файла на диске "C:\" "test1.txt" и "test2.txt".
Захожу на "лист2" переименовываю "test2.txt" на "test3.txt".
Перехожу на "лист1" значения во второй строке не изменились.
В чем может быть проблема? Или я не правильно функции написал?