Добрый день! Подскажите, пожалуйста, как можно зафиксировать время открытия и закрытия файла в определенной ячейке листа. Файл будет использоваться для отображения результатов теста. И нужно отобразить и зафиксировать время начала и окончания теста. Возможно это можно сделать при помощи макроса? Я смогла додуматься только до отображения с помощью формулы (в файле), но это не годится (значения не фиксируется) Заранее спасибо!
Добрый день! Подскажите, пожалуйста, как можно зафиксировать время открытия и закрытия файла в определенной ячейке листа. Файл будет использоваться для отображения результатов теста. И нужно отобразить и зафиксировать время начала и окончания теста. Возможно это можно сделать при помощи макроса? Я смогла додуматься только до отображения с помощью формулы (в файле), но это не годится (значения не фиксируется) Заранее спасибо!k987
Private Sub Workbook_BeforeClose(Cancel As Boolean) Cells(ActiveSheet.UsedRange.Rows.Count, 2).Value = "Тест окончен: " & Format(Now, "hh:mm:ss") End Sub
Private Sub Workbook_Open() Cells(ActiveSheet.UsedRange.Rows.Count + 1, 1).Value = "Тест начат: " & Format(Now, "hh:mm:ss") End SubEnd Sub
[/vba]
k987, здравствуйте. Можно так: [vba]
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean) Cells(ActiveSheet.UsedRange.Rows.Count, 2).Value = "Тест окончен: " & Format(Now, "hh:mm:ss") End Sub
Private Sub Workbook_Open() Cells(ActiveSheet.UsedRange.Rows.Count + 1, 1).Value = "Тест начат: " & Format(Now, "hh:mm:ss") End SubEnd Sub
Только, если файл снова открыть, значение, хранящееся в ячейке с временем открытия перезапишется. Ну и при закрытии, соответственно. Поэтом предлагаю дополнить процедуры функцией MsgBox с запросом перезаписи информации [vba]
Код
if MsgBox("Перезаписать время открытия ", vbYesNo) = vbYes then Sheets("Лист1").Range("B4") = "Тест начат " & Format(Now, "DD.MM.YYYY hh:mm:ss")
[/vba] И точно так же для закрытия
Только, если файл снова открыть, значение, хранящееся в ячейке с временем открытия перезапишется. Ну и при закрытии, соответственно. Поэтом предлагаю дополнить процедуры функцией MsgBox с запросом перезаписи информации [vba]
Код
if MsgBox("Перезаписать время открытия ", vbYesNo) = vbYes then Sheets("Лист1").Range("B4") = "Тест начат " & Format(Now, "DD.MM.YYYY hh:mm:ss")
_Boroda_, Доброго времени суток! Прекрасный инструмент! Но как сделать. что бы данные не перезаписывалис? А записались только 1 раз. Заранее спасибо за ответ!
_Boroda_, Доброго времени суток! Прекрасный инструмент! Но как сделать. что бы данные не перезаписывалис? А записались только 1 раз. Заранее спасибо за ответ!dredd812