Этот макрос написан на языке Visual Basic для программы Microsoft Word. Он предназначен для подготовки файлов Word к размещению на сайте

Вид материалаДокументы
Подобный материал:
Макрос для WORD

Этот макрос написан на языке Visual Basic для программы Microsoft Word. Он предназначен для подготовки файлов Word к размещению на сайте. Этот макрос создает уже готовый ZIP-файл, необходимый для указания его в полях типа HTML3.

Процедура установки макроса:
  1. Открыть Microsoft Word.
  2. Выбрать в меню «Сервис / Макрос / Редактор VisualBasic» или нажать Alt+F11.
  3. В окне структуры шаблонов документов (обычно слева сверху) найти шаблон Normal.dot, нажать на нем правую кнопку мыши и выбрать пункт «Insert / Module».
  4. Открыть вновь созданный модуль (он помещается в раздел «Modules» в дереве шаблона) двойным щелчком мыши.
  5. Вставить код макроса в поле редактирования модуля.
  6. Нажать кнопку «Сохранить» или выбрать в меню «File / Save». Таким образом, макрос сохранится в шаблон и будет доступен из любого документа.
  7. Закрыть окно редактора Visual Basic (нажать Alt+F4).


Вызвать макрос можно, выбрав в меню «Сервис / Макрос / Выполнить», или нажав Alt+F8 и в списке вы увидите его название HTML_Save. Исполнить его можно, нажав на кнопку «Исполнить».

Если есть необходимость, то макрос можно вывести на панель инструментов или присвоить ему горячую клавишу.


Этот макрос:

- убирает флажок «Использовать VML при отображении графики в обозревателях»

- формирует в каталоге "С:\На сайт" папку с уникальным именем


год+месяц+день+часы+минуты+секунды и сохраняет туда документ как

веб-страницу.

- документу присваивается уникальное имя

doc+год+месяц+день+часы+минуты+секунды

- закрывает документ

- закрывает программу Word, если нет открытых документов

- упаковывает созданный HTM-файл и папку с изображениями в ZIP-архив

- после архивирования удаляет исходные файлы


Но:

- картинки не сжимает, поэтому макрос можно использовать только для документов, в которых картинки уже сжаты или картинки отсутствуют

- для архивирования используется внешний архиватор WinRar 3.11 который установлен в C:\Program Files\WinRAR\WinRAR.exe Поэтому для коректной работы надо установить архиватор в указанное место, или прописать в программном коде макроса другой путь расположения архиватора.


Код макроса:

Sub HTML_Save()

'

' HTML_Save Макрос

' Макрос записан 25.06.2007 Володя

'

With ActiveDocument.WebOptions

.RelyOnVML = False

End With

Set fs = CreateObject("Scripting.FileSystemObject")

If Not fs.FolderExists("C:\На сайт") Then fs.CreateFolder ("C:\На сайт")

d_str = Format(Now, "yyyyMMddhhmmss")

f = "C:\На сайт\" + d_str

fs.CreateFolder (f)

a_name = f + " " + Split(ActiveDocument.Name, ".")(0)

ActiveDocument.SaveAs FileName:=f + "\doc" + d_str + ".php", FileFormat:=wdFormatHTML, _

LockComments:=False, Password:="", AddToRecentFiles:=True, WritePassword _

:="", ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _

SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _

False

'ActiveWindow.View.Type = wdWebView

ActiveDocument.Close

Dim RetVal

cmd_str = "C:\Program Files\WinRar\WinRar.EXE" + " " + "a -r -df -ep1 -afzip " + Chr(34) + a_name + ".zip" + Chr(34) + " " + Chr(34) + f + Chr(34)

RetVal = Shell(cmd_str, 1)

If Application.Documents.Count = 0 Then Application.Quit


End Sub


Способ установки (Видео)