Помогите !!! автоматическое добавление даты...

Автор ForumOOo (бот), 7 июня 2011, 17:34

0 Пользователи и 1 гость просматривают эту тему.

Yelik

Цитата: rami от  9 апреля 2015, 16:35
Присоединяюсь к вопросам JohnSUN:
Цитата: JohnSUN от  9 апреля 2015, 11:20Давай уточним - какая именно дата должна зафиксироваться в B3? Дата сохранения, дата печати, дата создания?.. В свойствах документа этих дат как миллионеров во Флориде... и ещё добавить можно, в пользовательских свойствах... И выдернуть в нужную ячейку именно её (дату из свойств) - гораздо проще... Опять же, как уберечься от нечаянного изменения даты при повторном открытии файла?
В зависимости от условий задачи решение может быть очень разным.
Дата последней модификации, может быть дата сохранения, если дату будет ставить до сохранения, чтобы можно было распечатать.

rami

Назначьте макрос:
Sub Main
ThisComponent.Sheets(0).getCellByposition(1,2).setValue(Now)
End Sub

событию Печать документа
Дата появится в момент вызова диалога печати.

JohnSUN

Отличное решение! Я бы чуть дополнил:
Sub setDateOfFirstPrint
Dim oCell As Variant
oCell = ThisComponent.Sheets(0).getCellByposition(1,2)
If Trim(oCell.getString())="" Then oCell.setValue(Now)
End Sub
То есть, если в B3 еще ничего нет то вписать текущую дату-время.
Тогда если этот файл нужно будет повторно распечатать из архива (ну, потерялся документ, бывает!), то значение будет то же, что и при печати оригинала.
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

Yelik

Цитата: rami от  9 апреля 2015, 17:06
Назначьте макрос:
Sub Main
ThisComponent.Sheets(0).getCellByposition(1,2).setValue(Now)
End Sub

событию Печать документа
Дата появится в момент вызова диалога печати.
Цитата: JohnSUN от  9 апреля 2015, 17:58
Отличное решение! Я бы чуть дополнил:
Sub setDateOfFirstPrint
Dim oCell As Variant
oCell = ThisComponent.Sheets(0).getCellByposition(1,2)
If Trim(oCell.getString())="" Then oCell.setValue(Now)
End Sub
То есть, если в B3 еще ничего нет то вписать текущую дату-время.
Тогда если этот файл нужно будет повторно распечатать из архива (ну, потерялся документ, бывает!), то значение будет то же, что и при печати оригинала.
К сожалению, возвращает ошибку

rami

Цитата: Yelik от 10 апреля 2015, 07:06К сожалению, возвращает ошибку
Если вы удаляете макрос, то удаляйте и связанные с ним события. У вас неудалённое событие ищет удалённый макрос ???

Yelik