Читаем Интернет-журнал "Домашняя лаборатория", 2007 №7 полностью

Запустив эту программу несколько раз, получаем, что в переменную "papka" записывается путь и имя папки, но, если в пути или имени были пробелы, то путь окаймляется кавычками: "C: \Program Files\Microsoft Office\Шaблoны\", а если пробелов в пути не было, то кавычки по краям не ставятся. Поэтому возвращаемую переменную нужно обработать — убрать кавычки.

Сделать это можно с помощью уже известных нам команд "Left", "Right", "Mid" и "Len":

If Right (papka, 1) = Chr$ (34) Then papka = Mid (papka, 2, Len (papka) — 2)

"Chr$(34)" — это команда, которая возвращает символ с ASCII-кодом 34: кавычку. (Каждый символ в Word имеет свой номер — ASCII-код, по которому его можно вызвать на экран. Узнать код выделенного символа можно командой "MsgBox Asc(Selection.Text)". Узнать о командах "Chr$" и "Asc" можно, поискав информацию в Справочной системе.)

Кроме того, не мешало бы сделать так, чтобы при запуске программы окно "Копирование файла" по умолчанию стояло бы на директории с активным документом — не всегда же нужно сохранять все обрабатываемые документы в отдельной папке! Нет ничего проще — установим параметр "Directory" как

"ActiveDocument.Path" перед командой".Display":

With Dialogs (wdDialogCopyFHe)

Directory = ActiveDocument.Path

Display

papka =.Directory

End With

If Right (papka, 1) = Chr$ (34) Then papka = Mid (papka, 2, Len (papka) — 2)

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

Наконец, сделаем так, чтобы нажатие кнопки "Отмена" в диалоговом окне приводило бы не к простому продолжению работы программы, а к выходу из нее. Для этого в справке по слову".Display" узнаем, что эта команда является функцией — то есть возвращает определенное значение, в зависимости от того, какая кнопка была нажата (рис. 5.41).



Рис. 5.41.Microsoft Office 97. Справка по методу .Display. Видно, что этот метод возвращает значение — "Return Value", то есть, является функцией.


Добавим в программу условие и команду выхода из программы — он должен произойти, если в диалоговом окне нажата кнопка "Отмена" (тогда функция. Display вернет в программу значение "0"):

With Dialogs(wdDialogCopyFile)

Directory = ActiveDocument.Path

If.Display = 0 Then Exit Sub

papka =.Directory

End With

If Right (papka, 1) = Chr$ (34) Then papka = Mid (papka, 2, Len (papka) — 2)

Теперь при нажатии кнопки "Отмена" в диалоговом окне выбора папки произойдет выход из программы.

Необходимо вставить этот код в нашу программу. Довольно ясно, что данный код должен располагаться в ее начале, — чтобы можно было задать папку для сохранения файлов и, запустив автоматическую их конвертацию, уйти от компьютера и заняться другими делами. Кроме того, следует несколько модифицировать команду сохранения документа, заменив путь к файлу переменной "papka" (вернувшись к предыдущей версии этой команды — без использования свойства. FullName). В итоге она будет выглядеть так:

ActiveDocument.SaveAs FileName:=рарка + Left (ActiveDocument.Name, Len(ActiveDocument.Name) -4), FileFormat:=wdFormatRTF

И вот, наконец, можно привести окончательный вид нашего макроса со всеми внесенными в него доработками:

Перейти на страницу:

Похожие книги

Лучшие модели на любую фигуру без примерок и подгонок
Лучшие модели на любую фигуру без примерок и подгонок

Книга представляет собой сборник, который содержит схемы построения чертежей из двух предыдущих бестселлеров автора, а также предлагает ряд новых моделей. Галия Злачевская – автор эксклюзивной методики конструирования швейных изделий. Особенность ее метода в том, что вариант построения модели подбирается с учетом особенностей силуэта фигуры, поэтому крой сразу получается точным. И главное – больше никаких примерок и подгонок! Следуя простым рекомендациям автора, вы легко сможете «шаг за шагом» освоить эту методику и в итоге – получите идеально сидящую вещь.Вы научитесь создавать современные, неповторимые и оригинальные модели для мужчин, женщин, детей и даже малышей до 3 лет с минимальными затратами времени и сил.

Галия Мансуровна Злачевская

Сделай сам / Хобби и ремесла / Дом и досуг