Пример:
Sub SendText()
Dim hWin
hWin = Shell(“I:\Win\Winword.exe”, 1)
Application.Wait Now+TimeValue(“00:00:05”)
AppActivate hWin
SendKeys “Доброе утро! {Enter}”
End Sub
Клавиша |
Код |
BackSpace |
{BACKSPASE} {BS} |
Breake |
{BREAKE} |
{CAPSLOOK} |
|
{CLEAR} |
|
{DELETE} {DEL} |
|
{DOWN} |
|
{END} |
|
{ENTER} |
|
{ESC} |
|
{HELP} |
|
{HOME} |
|
{INSERT} |
|
|
Тема Передача данных между приложениями Windows
Лекция 2 Передача данных функциями Visual Basic
VB может использовать все возможности системы Windows
1. Запуск приложения и установление связи
Set WB = CreateObject(Имя_класса)
Программа |
Класс |
Word for windows |
Word.Basic |
Excel |
Excel.Application |
Project |
MAProject.Project |
Access |
Access.Application |
Для запуска Word из электронной таблицы:
Set WB =CreateObject(“Word.Basic”)
Теперь переменная WB представляет собой объект, с которым в VB можно работать как с обычным объектом, используя все его внутренние объекты, их свойства и методы.
2. Управление одним приложением из другого
Откроем файл в Word
WB.FileOpen “C:\VB\MYBOOK.DOC”
Изменим параметры страницы этого файла:
WB.FilePageSetup _
.Tab = 0; _
|
.TopMargin = 2,5 см, _
.BottonMargin = 2,5 см, _
.LeftMargin = 2,5 см, _
.RightMargin = 2,5 см, _
Сохраним внесенные изменения закрытием файла:
Аргумент метода задает режим сохранения: 1 - сохранять без запроса
Теперь надо закрыть Word и разорвать с ним связь:
Set WB = Nothing
3. Обмен информацией между приложениями:
Передадим из Excel в Word предварительно выделенную часть таблицы:
В Excel откроем Word и в нем откроем новый документ:
WB.FileNew
WB.FileSaveAs “Report.doc”
Скопируем выделенные ячейки в буфер обмена:
Selection.Copy
Вставим их в документ Word:
WB.EditPaste
и добавим маркер конца абзаца:
WB.InsertPara
на всякий случай снимем режим копирования:
WB.CutCopymode = False
теперь сохраним файл:
WB.FileSave
далее разрываем связь с приложением Word.
|
Для закрытия управляющего приложения можно использовать метод:
Application.Quit
4. Применение OLE
OLE имеет больше возможностей, чем DDE. Имеется два OLE:
n OLE: Linking and Embedding (Связь и внедрение) копирование объекта в одной программе и вставка связи с ним в другой программе
n OLE Automation (Автоматизация OLE ) - один объект может управлять другой программой посредством доступа к ее свойствам и методам
4.1 Применение OLE Automation
Для начала следует узнать все об объектах и методах управляемой программы. Если программа имеет объекты, зарегистрированные и доступные в системе, можно их увидеть в Object Brouser. Для его использования (он есть в Excel) программу надо зарегистрировать в Excel:
n войти в Tools/Referenses (сервис/ссылки)
n включить индикатор, соответствующий регистрируемой программе
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.