Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на вопросы к ОП.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
300.03 Кб
Скачать

Input #1, str

Close #1

n = Val(str)

Open "C:\2.txt" For Input As #2

Input #2, str1

Close #2

n1 = Val(str1)

n2 = n1 + n

Open "C:\3.txt" For Output As #3

Write #3, n2

Close #3

End Sub

26 Методы объекта Workbook и семейства Workbooks.

Activate Активизирует рабочую книгу так, что ее первый рабочий лист становится активным.Workbook. Activate

Add Создает новый объект для семейства Workbooks.

Add (Template) Template — задает шаблон, на основе которого создается новая рабочая книга. Допустимые значения: xlWBATChart, xlWBATExce14IntlMacroSheet, xlWBATExce14MacroSheet или xlWBATWorksheet.

Если аргумент Template опущен, то создается новая рабочая книга с количеством листов, заданных свойством SheetsInNew Workbook

Protect Защищает рабочую книгу от внесения в нее изменений. Protect (Password, Structure, Windows)

Password — строка, используемая в качестве пароля для защиты книги

Structure — допустимые значения True (защищена структура книги, т. е. взаимное расположение листов) и False (не защищена)

windows — допустимые значения True (защищено окно книги) и False (не защищено)

В следующем примере устанавливается защита для активной рабочей книги: ActiveWorkbook. Protect Password:= «ВинниПух»

Unprotect Снятие защиты с рабочей книги Unprotect (Password) Password — строка, используемая в качестве пароля для защиты листа

В следующем примере снимается защита с активной рабочей книги: ActiveWorkbook. Unprotect Password: = «ВинниПух «

Close Закрытие рабочей книги

Open Открытие существующей рабочей книги

OpenText Открытие текстового файла, содержащего таблицу данных

Save Сохранение рабочей книги

SaveAs Сохранение рабочей книги в другом файле. SaveAs (Filename) Filename — строка, указывающая имя файла, в котором будет сохранена рабочая книга

В следующем примере активная рабочая книга сохраняется в файле с именем НоваяВерсия: ActiveBook. SaveAs Filename: = „НоваяВерсия“

SaveAsCopy Сохранить рабочую книгу в другом файле, оставляя рабочую книгу в памяти с прежним именем. SaveAs (Filename, FileFormat)

Filename — строка, указывающая имя файла, в котором будет сохранена рабочая книга

В следующем примере активная рабочая книга сохраняется в файле с именем ЗапаснаяВерсия: ActiveBook. SaveAsCopy Filename: = „ЗапаснаяВерсия“

PrintPreview Предварительный просмотр

Printout Печать содержимого рабочей книги

Private Sub CommandButton1_Click()

Dim a, b, c, s As Single

a = CSng(UserForm1.TextBox1)

b = CSng(UserForm1.TextBox2)

c = CSng(UserForm1.TextBox3)

s = a + b + c

UserForm1.TextBox4 = s

End Sub

код для кнопки отмена Private Sub CommandButton2_Click()

UserForm1.Hide

End Sub

27 Иерархические объекты Visual Basic for Application в Microsoft Office Word.

На практике для решения большинства программных задач достаточно знать всего лишь пять объектов Word:

1.объект Application;

2.объект Document (с коллекцией Documents);

3.объект Selection;

4.объект Range;

5.объект Bookmark (с коллекцией Bookmarks).

Объект Application — это само приложение Microsoft Word. Все остальные объекты Word "вложены" в этот объект. Создать этот объект — значит запустить Word на вашем компьютере. На одну ступень ниже объекта Application в объектной модели Word (и по логике использования в приложениях) находятся коллекция Documents и объекты Document, из которых она состоит.

После того, как мы запустили приложение, нашли и активизировали нужный нам файл, следующее действие, которые выполняется чаще всего — ввод или редактирование текста в нужном месте. Для этого используются объекты Selection, Range и Bookmark. Каждое из них используется в своих ситуациях и для своих задач.

Обычно перед тем, как что-либо сделать в окне документа Word, пользователь либо выделяет нужный участок текста, либо переставляет указатель вставки текста в нужное место. Объект Selection представляет именно такой выделенный участок текста (а если ничего не выделено, то место, где находится указатель вставки).

Как уже говорилось, чаще всего разработчиками для определения места ввода текста и навигации по документу используется объект Selection. Для этих же целей можно использовать и объект Range. Главное отличие между объектами Range и Selection заключается в том, что объект Selection может определить и пользователь (выделив текст мышью), а объект Range можно определить только программно, и он не зависит от текущего положения указателя или действий пользователя.

Объект Bookmark — это просто закладка. На практике это — самый удобный способ навигации по документам, созданных при помощи шаблонов (например, отчетов). Принципиальное отличие его от объектов Selection и Range заключается в том, что все выделения и диапазоны теряются при закрытии документа (объекты Range вообще существуют только во время работы создавшей их процедуры, а закладки сохраняются вместе с документом. Если документ создан на основе шаблона, то все закладки, которые были определены в шаблоне, будут определены и в созданном на основе этого шаблона документе.

Private Sub CommandButton1_Click()

Dim y, x As Single

x = CSng(UserForm1.TextBox1)

If x <= 0 Then

y = Sin(x)

Else

y = Cos(x)

End If

UserForm1.TextBox2 = y

End Sub

код для кнопки отмена

Private Sub CommandButton2_Click() UserForm1.Hide

End Sub

28 Свойства иерархических объектов Visual Basic for Application в Microsoft Office Word.

Объект Application — это само приложение Microsoft Word. Все остальные объекты Word "вложены" в этот объект. Создать этот объект — значит запустить Word на вашем компьютере.

Свойства.

ActiveDocument — возвращает объект активного документа в данном экземпляре Word.

ActivePrinter — позволяет получить или настроить активный принтер в ходе работы программы. Также используется очень активно, например, если результаты работы вашего приложения необходимо печатать на определенном сетевом принтере.

AutomationSecurity — определяет уровень безопасности при программном открытии файлов. По умолчанию установлено значение msoAutomationSecurityLow, что значит — открывать со включенными макросами. Можно также использовать значения msoAutomationSecurityForceDisable — отключить макросы и msoAutomationSecurityByUI — то, что настроено на графическом интерфейсе.

BackgroundPrintingStatus — сколько заданий Word стоит в очереди на печать.

Build — возвращает версию и номер сборки Word. Очень полезно для проверки на совместимость, если ваше приложение работает только под определенными версиями Word.

Самые важные свойства объекта Document представлены ниже:

ActiveWritingStyle — текущий активный стиль (заголовок определенного уровня, обычный текст, гиперссылка и т.п.). Рекомендуется проверить перед вводом текста.

AttachedTemplate — возможность подключить шаблон (со всеми макросами, стилями, записями автотекста и т.п.) или проверить, какой шаблон подключен (вручную это можно сделать через меню Сервис -> Шаблоны и надстройки).

Background — возвращает объект Shape, представляющий фоновый рисунок (фоновые рисунки видны только в режиме Web-документ);

BuiltInDocumentProperties — возможность получить ссылку на коллекцию DocumentProperties с одноименными объектами, представляющими встроенные свойства документа (название, автор, категория, комментарии и т.п.);

Content — свойство, возвращающее объект Range, представляющий главную цепочку документа (main document story). Если говорить проще — просто текст документа, без колонтитулов, сносок, комментариев и т.п.

Обычно перед тем, как что-либо сделать в окне документа Word, пользователь либо выделяет нужный участок текста, либо переставляет указатель вставки текста в нужное место. Объект Selection представляет именно такой выделенный участок текста (а если ничего не выделено, то место, где находится указатель вставки).

Find — очень важное свойство, которое возвращает объект Find. Подробнее про этот объект и про его вложенный объект Replace будет рассказано в разделе, посвященном поиску и замене текста.

Flags — свойство, которое позволяет проверить или изменить некоторые моменты, связанные с выделением: является ли оно активным, находится ли в конце строки и т.п. Регулирует пять параметров одновременно при помощи битовой маски.

Font — возвращает объект Font, при помощи которого можно управлять оформлением текста в выделении. Доступны все возможности, которые есть на графическом интерфейсе в меню Формат->Шрифт.

Sub CommandButton1_Click()

Dim a, b, c As Single

a = CSng(TextBox1.Text)

b = CSng(TextBox2.Text)

If CheckBox1.Value = True Then

c = a + b

UserForm1.Label4 = c

End If

If CheckBox2.Value = True Then

c = a * b

UserForm1.Label4 = c

End If

If (CheckBox1.Value = False) And (CheckBox2.Value = False) Then

UserForm1.Label4 = "Ошибка. Не указана операция"

End If

End Sub

29 Методы доступа к документу в Visual Basic for Application в Microsoft Office Word.

Методы объекта Document.

Activate() — этот метод позволяет сделать указанный вами документ активным (например, для ввода текста).

Close() — закрыть документ. Можно закрыть с сохранением (по умолчанию), а можно — без (если указать соответствующий параметр).

Save() — смысл этого метода очевиден. Если документ еще не сохранялся, открывается диалоговое окно Save As.

SaveAs() — очень мощный и сложный метод. Можно определить путь для сохраняемого документа, его формат, кодировку, пароли на открытие и изменение документа, вставку шрифтов и многое другое. Очень полезный метод, например, для автоматической конвертации документов.

Select() — позволяет просто выделить весь документ. Этот метод существует для очень большого количества объектов, в том числе Selection и Range.

Методы объекта Select.

Calculate() — возможность посчитать математическое выражение прямо в процессе ввода текста и вернуть его результат (только используя тип данных Single).

ClearFormatting() — очистить форматирование (и на уровне текста, и на уровне параграфа). Свойство можно применять не только для объекта Selection, но и для объектов Find и Replace.

Collapse() — превратить выделение в точку вставки. Можно использовать два варианта: точка вставки на начало выделения и на конец выделения. Очень удобно, если вам требуется только вставить новый текст без удаления старого.

Copy(), CopyAsPicture(), Cut(), Paste() и Delete() — комментировать эти методы, видимо, необходимости нет.

Макрос1()

Range("A1").Select

ActiveCell = "Курс"

n = InputBox("Введите курс доллара")

Range("B1").Select

ActiveCell = n

Range("C1").Select

ActiveCell = "руб"

Range("A2").Select

ActiveCell = "Доллар"

Range("B2").Select

ActiveCell = "Рубль"

n1 = InputBox("Введите количество долларов")

Range("A3").Select

ActiveCell = n1

Range("B3").Select

ActiveCell.Formula = "=$b$1*a3"

End Sub

30 Поиск и замена информации средствами Visual Basic for Application в Microsoft Office Word.

Объекты Find и Replacement, как понятно из их названий, предназначены для выполнения операций поиска и замены. Объект Find — это условия поиска, "упакованные" в программный объект. У него множество свойств (Text, Style, Font, Forward, MathCase, LanguageID и т.п.), которые позволяют эти условия поиска определить. Чтобы запустить поиск, используется метод Execute() со множеством необязательных параметров, которые во многом дублируют свойства этого объекта (передав параметр ReplaceWith, можно выполнить даже замену текста). Для того, чтобы заменить все или просто проверить результаты поиска, используется значение, возвращаемое методом Execute(). Если значение обнаружено (поиск был успешен), то возвращается true, а если нет — false.

Как будет работать объект Find, зависит от того, из под какого объекта он был создан. Если он был создан при помощи свойства Find объекта Selection, то при обнаружении нужного фрагмента он выделяется. Если он был создан при помощи такого же свойства объекта Range, то диапазон переопределяется на найденный текст. Например, чтобы найти и выделить следующее вхождение текста "2004", можно использовать код:

Selection.Find.Text = "2004"

Selection.Find.Execute

Объект Replacement точно так же хранит настройки замены. Например, чтобы заменить везде до конца документа текст "2004" на "2005", можно использовать код

Selection.Find.Text = "2004"

Selection.Find.Replacement.Text = "2005"

Selection.Find.Execute Replace := wdReplaceAll

Многие программисты подстраховываются на случай, если во время поиска и замены возникнет ошибка из-за разницы в форматировании и используют метод ClearFormatting(). Этот метод очищает форматирование внутри объекта Find (на сам документ это никак не влияет) и позволяет производит поиск без учета форматирования. Например, наш код при использовании этого метода может выглядеть так:

Selection.Find.Text = "2004"

Selection.Find.ClearFormatting

Selection.Find.Replacement.Text = "2005"

Selection.Find.Replacement.ClearFormatting

Selection.Find.Execute Replace:=wdReplaceAll

Sub primer()

With Selection.Find

.ClearFormatting 'поис без учета форматирования

.Text = "сформировать" 'отыскиваемый текст

.Execute 'выполнение поиска

If .Found = True Then 'если текст найден то удаление текста

Selection.Delete

End If

Selection.Find.Execute Replace:=wdReplaceAll 'применить ко всему тексту

End With

End Sub

31 Иерархические объекты Visual Basic for

Application в Microsoft Office Access.

Модель обьектов Access отлична от моделей обьектов, рассмотренных в предыдущих главах приложений. Она включает в себя две модели: модель обьектов приложения Access, и модель доступа к данным (DAO, Data Access Object), обьекты которые используются для работы с данными. Модель обьектов приложения Access содержит обьекты, управляющие текущим сеансом работы. Эта модель используется для создания интерфейса базы данных, открытия формы либо отчета в другом приложении.

Объекты Application Тип Обьект Ссылается на активное приложение Microsoft Access. Используется для управления приложением. Аналогичен обьекту Application других приложений Forms Семейство. Содержит обьект Form, соответствующие всем открытым в данный момент формам в базе данных Access.

Reports Семейство. Содержит обьект Report, соответствующие всем открытым в данный момент формам в базе данных Access.

Controls Семейство Содержит обьекты Control, представляющие все элементы управления в конкретной форме, отчете или секции, вложенные или присоединенные элементы управления.

Modules Семейство . Содержит обьекты Module, соответствующие всем открытым в данный момент стандартным модулям классов в базе данных Access.

Screen Обьект Представляет ссобой ссылку на конкретную форму, отчет или элемент управления, который в данный момент имеен фокус. DoCmd Объект Позволяет выполнить макрокоманду из процедуры на Visual Basic/ References Семейство Содержит объекты Reference, представляющие собой установленные ссылки в приложении Access. С помощью этих ссылок можно использовать внешние библиотеки других приложений

Другая часть модели обьектов Access- это модель DAO. Эти обьекты позволяют работать со структурой базы данных с помощью VBA. К обьектам непосредственного доступа к данным относятся таблицы, запросы, связи, индексы. Обьекты DAO обеспечивают доступ и обработку данных в базах данных, управления базами данных и их обьектами с помощью свойств и методов, так же позволяет создавать новые обьекты, изменять структуры базы данных.

Public Sub CommandButton1_Click()

Dim a, b, r, n As Integer

a = Int(10 * Rnd())

b = Int(10 * Rnd())

If a > b Then

Label1.Caption = a

Label3.Caption = b

Else

Label1.Caption = b

Label3.Caption = a

End If

End Sub

Public Sub CommandButton2_Click()

a = CInt(Label1.Caption)

b = CInt(Label3.Caption)

r = Abs(a - b)

n = CInt(TextBox1.Text)

If r = n Then

Label5.Caption = "Верно"

Else

Label5.Caption = "Ошибка"

End If

End Sub

32 Иерархические объекты Visual Basic for Application в Microsoft Office PowerPoint

Power Point — программа работы с презентациями (то есть наборами графических изображений — слайдов, иногда со звуковым сопровождением). Чаще всего приходится программным способом выполнять следующие действия:

автоматически создавать презентации (например, на основе набора изображений в каталоге);

производить обработку презентаций — менять формат изображения, добавлять или изменять аудиосопровождение и т.п. Чаще всего подобные действия приходится производить в тех ситуациях, когда презентации были связаны с внешними файлами и эти файлы изменяются.

В PowerPoint система объектов выглядит следующим образом:

объект самого высокого уровня — Application, с набором свойств и методов, очень похожим на аналогичные объекты в Word и Excel;

на уровень ниже — коллекция Presentations с объектами Presentation. Можно сказать, что эти объекты по месту в иерархии примерно аналогичны объекту Workbook в Excel;

в объект Presentation встроена коллекция Slides с объектами Slide (в качестве примерного аналога можно привести листы в книгах Excel);

в объект Slide встроена коллекция Shapes с объектами Shape. Объекты Shape представляют все элементы слайда (всего их 22 типа) — изображение, надпись, диаграмма, заголовок, таблица, автофигура и т.п.

Вокруг этих четырех объектов — Application, Presentation, Slide и Shape и строится вся объектная модель Power Point.

Sub Макрос1()

Documents. Add. Template:=”C:/primer.doc.”

Documents. Open File Name:="C:/primer.doc.”

Active Document. Sentences(1).Select

Selection.Font.Size =18

ActiveDocument.Paragraphs(7).Range.Select

Selection.Font.Italic = wdToggle

Selection.Font.Color = wdColorGreen

ActiveDocument.Words(15).Select

Selection.Font.Bold = wdToggle

Selection.Font.Italic = wdToggle

Selection.Font.Underline = wdUnderlineSingle

ActiveDocument.SaveAs FileName:=" C:/primer.doc.”

ActiveDocument.Close

33 Свойства иерархических объектов Visual Basic for Application в Microsoft Office PowerPoint.

Корневой обьект в иерархии обьектной модели Power Point- обьект Application. Его многочисленные свойства, методы и события предназначены для решения самых общих задач, связаных с функционированием приложения Power Point.

Событие ColorSchemeChanged изменена цветовая схема

NewPresentation созданановая книга

PresentationBeforeSave перед выполнением сохранение презентации

PresentationClose Закрытие презинтации PresentationNewSlide Создан новый слайд PresentationOpen открытие презентации PresentationPrint Распечатка презитации PresentationSave Сохранение презинтации SlideShowBegin Начало покаа слайдов SlideShowEndКнец показа слайдов SlideShowNextBuild Появление анимирующего бьекта SlideShowNextSlide Переход к новому слайду при показе WindowActivate окно стало активным WindowBeforeDoubleClick Двойной щелчек на обьекте в окне WindowBeforeRightClick Щелчек правой кнопкой мыши на обьекте в окне WindowDeactivate окно перестало быть активным WindowSelectionChange Смена выбранного обьекта в окне

Sub Макрос1()

Documents. Add. Template:=”D:/zadanie.doc.”

Documents. Open File Name:=" D:/zadanie.doc.”

ActiveDocument.Sentences(1).Select

Selection.Font.Size =18

Selection.Font.Color = wdColorRed

ActiveDocument.Paragraphs(5).Range.Select

Selection.Font.Bold = wdToggle

ActiveDocument.Words(7).Select

Selection.Font.Bold = wdToggle

Selection.Font.Italic = wdToggle

Selection.Font.Underline = wdUnderlineSingle

ActiveDocument.SaveAs FileName:=" D:/zadanie.doc.”

ActiveDocument.Close

9