к оглавлению   ООП 3GL к 4GL - визуальному программированию

Язык визуального программирования приложений Visual Basic for Applications

Основные объекты VBA

Объект Workbook и семейство Workbooks

В иерархии Excel объект workbook (рабочая книга) идет сразу после объекта Application и представляет файл рабочей книги. Рабочая книга хранится либо в файлах формата XLS (стандартная рабочая книга) или XLA (полностью откомпилированное приложение). Свойства и методы рабочей книги позволяют работать с файлами.

Свойства объекта Workbook и семейства Workbooks

Свойства

Выполняемые действия и допустимые значения

ActiveSheet

Возвращает активный лист книги. Например:

MsgBox "Имя активного листа " & ActiveSheet . Name — выводит в диалоговом окне имя активного рабочего листа

ActiveDialog

Возвращает активное диалоговое окно

ActiveChart

Возвращает активную диаграмму

Sheets

Возвращает семейство всех листов книги

Worksheets

Возвращает семейство всех рабочих листов книги

Charts

Возвращает семейство всех диаграмм книги (которые не внедрены в рабочие листы)

Count

Возвращает число объектов семейства workbooks

HasPassword

Допустимые значения: True (если у документа имеется пароль защиты), False (в противном случае)

WriteRe served Допустимые значения: True (если документ закрыт для записи), False (в противном случае)

Saved

Допустимые значения: True (если не производились изменения в документе со времени его последнего сохранения), False (в противном случае)

MailSystem

Возвращает имя инсталлированных на компьютере средств работы с электронной почтой. Допустимые значения:

  • xlNoMailSystem (не установлена система электронной почты)
  • xlMAPi (установлена система Microsoft Mail)
  • xlPowerTalk (установлена система Apple PowerTalk Mail, на компьютерах Macintosh).

В следующем примере проверяется, инсталлирована ли электронная почта. Если электронная почта не установлена, то отображается соответствующее сообщение:

If Application. MailSystem <> xlMAPI Then

MsgBox "Microsoft Mail неинсталлирован"

End If

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

Методы

Выполняемые действия

Activate

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

Например:

Workbook. Activate

 

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

Синтаксис:

Add (Template)

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

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

SheetsInNewWorkbook

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

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

SendMail

Отсылка почты используя встроенные средства Microsoft Mail (MAPI).

Синтаксис:

SendMail (Recipients, Subject, ReturnReceipt )

  • Recipients — строка или массив строк, перечисляющих получателей
  • Subject — строка, специфицирующая тему сообщения
    Optional Variant.
  • ReturnReceipt — допустимые значения True (требуется уведомление о получении сообщения) и False (в противном случае)

В следующем примере рабочая книга отсылается по электронной почте получателю Порфирию Заковыркину:

ThisWorkbook . SendMail recipients : = " Порфирий Заковыркин"

События объекта Workbook и семейства Workbooks

Событие Когда возникает событие
BeforeClose При закрытии рабочей книги
BeforePrint Перед печатью рабочей книги
BeforeSave Перед сохранением рабочей книги
Deactivate Когда рабочая книга теряет фокус
NewSheet При добавлении нового листа
Open При открытии рабочей книги
SheetActivate При активизации любого рабочего листа
Sheet Deactivate Когда рабочий лист теряет фокус
к оглавлению   ООП 3GL к 4GL - визуальному программированию

Знаете ли Вы, в чем фокус эксперимента Майкельсона?

Эксперимент А. Майкельсона, Майкельсона - Морли - действительно является цирковым фокусом, загипнотизировавшим физиков на 120 лет.

Дело в том, что в его постановке и выводах произведена подмена, аналогичная подмене в школьной шуточной задачке на сообразительность, в которой спрашивается:
- Cколько яблок на березе, если на одной ветке их 5, на другой ветке - 10 и так далее
При этом внимание учеников намеренно отвлекается от того основополагающего факта, что на березе яблоки не растут, в принципе.

В эксперименте Майкельсона ставится вопрос о движении эфира относительно покоящегося в лабораторной системе интерферометра. Однако, если мы ищем эфир, как базовую материю, из которой состоит всё вещество интерферометра, лаборатории, да и Земли в целом, то, естественно, эфир тоже будет неподвижен, так как земное вещество есть всего навсего определенным образом структурированный эфир, и никак не может двигаться относительно самого себя.

Удивительно, что этот цирковой трюк овладел на 120 лет умами физиков на полном серьезе, хотя его прототипы есть в сказках-небылицах всех народов всех времен, включая барона Мюнхаузена, вытащившего себя за волосы из болота, и призванных показать детям возможные жульничества и тем защитить их во взрослой жизни. Подробнее читайте в FAQ по эфирной физике.

НОВОСТИ ФОРУМА

Форум Рыцари теории эфира


Рыцари теории эфира
 10.11.2021 - 12:37: ПЕРСОНАЛИИ - Personalias -> WHO IS WHO - КТО ЕСТЬ КТО - Карим_Хайдаров.
10.11.2021 - 12:36: СОВЕСТЬ - Conscience -> РАСЧЕЛОВЕЧИВАНИЕ ЧЕЛОВЕКА. КОМУ ЭТО НАДО? - Карим_Хайдаров.
10.11.2021 - 12:36: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от д.м.н. Александра Алексеевича Редько - Карим_Хайдаров.
10.11.2021 - 12:35: ЭКОЛОГИЯ - Ecology -> Биологическая безопасность населения - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> Проблема государственного терроризма - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> ПРАВОСУДИЯ.НЕТ - Карим_Хайдаров.
10.11.2021 - 12:34: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вадима Глогера, США - Карим_Хайдаров.
10.11.2021 - 09:18: НОВЫЕ ТЕХНОЛОГИИ - New Technologies -> Волновая генетика Петра Гаряева, 5G-контроль и управление - Карим_Хайдаров.
10.11.2021 - 09:18: ЭКОЛОГИЯ - Ecology -> ЭКОЛОГИЯ ДЛЯ ВСЕХ - Карим_Хайдаров.
10.11.2021 - 09:16: ЭКОЛОГИЯ - Ecology -> ПРОБЛЕМЫ МЕДИЦИНЫ - Карим_Хайдаров.
10.11.2021 - 09:15: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Екатерины Коваленко - Карим_Хайдаров.
10.11.2021 - 09:13: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вильгельма Варкентина - Карим_Хайдаров.
Bourabai Research - Технологии XXI века Bourabai Research Institution