20.01.2015 Views

Управление документами Word и Excel на VBA - eDrive

Управление документами Word и Excel на VBA - eDrive

Управление документами Word и Excel на VBA - eDrive

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

30<br />

End If<br />

End Sub<br />

Началь<strong>на</strong>я установка <strong>и</strong>нтерфейса<br />

Пр<strong>и</strong> открыт<strong>и</strong><strong>и</strong> документа <strong>Word</strong> всегда в первую очередь<br />

автомат<strong>и</strong>ческ<strong>и</strong> обрабатывается событ<strong>и</strong>е Open объекта Document, а закрыт<strong>и</strong>ю<br />

предшествует событ<strong>и</strong>е Close. Каждый новый документ <strong>Word</strong> обрабатывает<br />

событ<strong>и</strong>е New.<br />

Пр<strong>и</strong> открыт<strong>и</strong><strong>и</strong> рабочей кн<strong>и</strong>г<strong>и</strong> <strong>Excel</strong> с<strong>на</strong>чала обрабатывается событ<strong>и</strong>е<br />

Open объекта Workbook, а закрыт<strong>и</strong>ю предшествует событ<strong>и</strong>е BeforeClose.<br />

Каждый рабоч<strong>и</strong>й л<strong>и</strong>ст <strong>Excel</strong> обрабатывает событ<strong>и</strong>я Activate, SheetChange <strong>и</strong><br />

Deactivate.<br />

Свойство OnWindow запускает заданную процедуру пр<strong>и</strong> выделен<strong>и</strong><strong>и</strong><br />

определенного ок<strong>на</strong>. С помощью свойства OnTime программа может<br />

реаг<strong>и</strong>ровать <strong>на</strong> событ<strong>и</strong>я, связанные со временем. Для отмены реакц<strong>и</strong><strong>и</strong> <strong>на</strong><br />

событ<strong>и</strong>е свойству OnTime пр<strong>и</strong>сва<strong>и</strong>вается пустая строка.<br />

Пр<strong>и</strong>меры<br />

Sub Document_Open ()<br />

Call СчетОткрыт<strong>и</strong>йДокумента<br />

End Sub<br />

Sub Document_Close ()<br />

Call Следующ<strong>и</strong>йДокумент<br />

ActiveDocument.Save<br />

End Sub<br />

Sub СчетОткрыт<strong>и</strong>йДокумента ()<br />

' С<strong>на</strong>бд<strong>и</strong>те документ полем в колонт<strong>и</strong>туле, а в форму UserForm1<br />

‘ помест<strong>и</strong>те поле Счетч<strong>и</strong>к<br />

On Error GoTo форма<br />

ПереходВКолонт<strong>и</strong>тул<br />

счетч<strong>и</strong>кОткрыт<strong>и</strong>й = Selection.Fields (1).Result<br />

UserForm1.Счетч<strong>и</strong>к.Text = счетч<strong>и</strong>кОткрыт<strong>и</strong>й<br />

Selection.Fields (1).Select<br />

x = Val (счетч<strong>и</strong>кОткрыт<strong>и</strong>й) + 1<br />

z = "QUOTE """ & x & """"<br />

Selection.Fields.Add Range := Selection.Range, _<br />

Type := wdFieldEmpty, Text := z<br />

форма:<br />

ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument<br />

UserForm1.Show<br />

End Sub<br />

Public Sub ПереходВКолонт<strong>и</strong>тул ()

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!