БлогNot. Word и заметки дня...

Помощь дата->рейтинг Поиск Почта RSS канал Статистика nickolay.info Домой

Word и заметки дня...

Задача - заставить Word работать с "файлом дня", имя которого будет назначаться и меняться автоматически, например, 14 марта 2014 года будет автоматически открываться (или создаваться) файл 140314.doc, а 15-го - 150314.doc

Проблема легко решается с помощью Visual Basic for Applications, встроенного во все основные версии офиса.

Создадим макрос на VBA и пропишем его в шаблоне по умолчанию Normal.dot. Для этого делается следующее:

Текст макроса от версии офиса, конечно же, не зависит:

Dim Path, Dt, Fs
Path = "c:\Temp\" 
'путь к папке с файлами
Dt = Path & Format(Date, "ddmmyy") & ".doc"
Set Fs = CreateObject("Scripting.FileSystemObject")
If Fs.FileExists(Dt) Then
 Documents.Open FileName:=Dt
Else
 Documents.Add
End If
ActiveDocument.SaveAs FileName:=Dt

Путь к папке, куда "складируются" файлы, можно поменять.

Теперь нам нужно, чтобы этот макрос выполнялся автоматически при запуске Word. Для этого в удобном месте, например, на рабочем столе, создадим файл runme.bat (можно создать обычный текстовый документ, изменить имя на указанное и согласиться со сменой типа файла, потом правая кнопка на имени файла, команда Изменить - и он загрузится в Блокнот). Вот текст файла runme.bat вместе с комментариями:

@echo off
rem Впишите ниже свой путь к Winword.exe;
rem Ключ имеет вид /mИмя_Вашего_Макроса
"C:\Program Files\Microsoft Office 2003\OFFICE11\Winword.exe" /mMain

Путь к исполняемому файлу Ворд'а Winword.exe следует скорректировать в зависимости от вашей версии, например, для 2010-й может быть

"C:\Program Files\Microsoft Office\Office14\WINWORD.EXE" /mMain

Всё готово и работает. Здесь просто создаётся пустой "файл дня", при необходимости же можно сделать (выбрать) шаблон и создавать файл уже на его основе, как-то так:

Documents.Add Template:="C:\Program Files\Microsoft Office 2003\Templates\1049\Brochure.dot"

вместо строки

Documents.Add

Путь к шаблону также может быть любым другим.


теги: дата vba word

14.03.2014, 12:17; рейтинг: 9681

  свежие записипоиск по блогукомментариистатистикао "вирусах" в архивах .zip

Наверх Яндекс.Метрика
© PerS
вход