Вставить текущую дату в шаблон Excel при создании

Я создаю здесь шаблон Excel (* .xlt) для пользователя, и одна из вещей, которые я хочу сделать, - это вставить текущую дату при создании нового документа (то есть, когда они дважды щелкают файл в проводник Виндоус). Как мне это сделать?

Обновлять: Мне следовало добавить, что я бы предпочел не использовать никаких vba (макросов). Если это единственный вариант, пусть так и будет, но я бы очень хотел, чтобы мой пользователь не заставлял не забывать нажимать какую-нибудь кнопку «разрешить содержимое макроса».

Преобразование HTML-таблицы в профессиональный документ Excel
Преобразование HTML-таблицы в профессиональный документ Excel
Это самый простой способ создания Excel из HTML-таблицы.
Импорт excel в laravel в базу данных
Импорт excel в laravel в базу данных
Здравствуйте, дорогой читатель, в этой статье я расскажу практическим и быстрым способом, как импортировать файл Excel в вашу базу данных с помощью...
3
0
5 912
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Вы можете отредактировать шаблон по умолчанию для Excel -

В каталоге Book.xlt есть файл XLSTART, обычно расположенный по адресу C:\Program Files\Microsoft Office\Office\XLStart\.

Вы должны иметь возможность добавить макрос под названием Workbook_Open

Private Sub Workbook_Open()
    If ActiveWorkBook.Sheets(1).Range("A1") = "" Then
        ActiveWorkBook.Sheets(1).Range("A1") = Now
    End If
End Sub

Мой VBA немного ржавый, но вы можете обнаружить, что что-то вроде этого работает.

Ответ принят как подходящий

Вы можете использовать функцию рабочего листа = СЕГОДНЯ (), но, очевидно, это будет обновляться до текущей даты при каждом пересчете рабочей книги.

Единственный другой метод, о котором я могу думать, - это, как сказал 1729, кодирование события Workbook_Open:

Private Sub Workbook_Open()
    ThisWorkbook.Worksheets("Sheet1").Range("A1").Value = Date
End Sub

Вы можете уменьшить проблему, требующую от пользователя принимать макросы каждый раз, путем цифровой подписи шаблона (в инструментах VBA IDE | Цифровая подпись ...) и выбора цифрового сертификата, однако вам потребуется получить сертификат из коммерческого сертификата. полномочия (см. http://msdn.microsoft.com/en-us/library/ms995347.aspx). Пользователь должен будет выбрать всегда доверять этому сертификату при первом запуске шаблона, но после этого им больше не будет предлагаться.

Чтобы избежать использования VBA и если вы думаете, что ваши пользователи могут следовать инструкциям, вы можете попросить их скопировать дату, а затем вставить специальные значения->, чтобы установить дату, чтобы она не изменилась в будущем.

Другие вопросы по теме