Главная страница

Редактор VBA: получение списка свойств и методов. Министерство образования и науки луганской народной республики


Скачать 0.67 Mb.
НазваниеМинистерство образования и науки луганской народной республики
АнкорРедактор VBA: получение списка свойств и методов
Дата15.06.2022
Размер0.67 Mb.
Формат файлаdocx
Имя файлаIZ_2_SEMESTR_ZAD_1.docx
ТипДокументы
#594985


МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ

ЛУГАНСКОЙ НАРОДНОЙ РЕСПУБЛИКИ

ЛУГАНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

имени Владимира Даля

Кафедра Информатика и программная инженерия

ИНДИВИДУАЛЬНОЕ ЗАДАНИЕ 2-й семестр ( часть 1)

по дисциплине ИНФОРМАТИКА

Студент ЛИСОВСКИЙ Е.А. __________

Группа ИТ-911 Вариант 11

Руководитель работы ____________________ __________

Дата представления на кафедру на рецензию __________

Регистрационный номер _______________ Регистратор __________

Защищена с оценкой __________________

Преподаватель ____________________ __________

Дата __________

Луганск 2021

Оглавление


Редактор VBA: получение списка свойств и методов 3

Понимание объектов, свойств и методов 3

Что такое свойство? 3

Примечания 4

Что такое метод? 4

Получение справки по объектам, методам и свойствам 6

Список параметров (Visual Basic) 7

Синтаксис 7

Компоненты 7

Комментарии 8

Правила 8

Автоматическое дополнение слов 9

Важные моменты в работе с редактором кода: 9

Особенности написания кода в окне Code 11

Закладки и разделение окна редактирования 12

Окно редактирования кода VBA (Code)Окно Code (окно программного кода, или редактор программного кода) предназначено для просмотра,редактирования, или создания нового кода на языке VBA. 13


Редактор VBA: получение списка свойств и методов

Понимание объектов, свойств и методов


Объекты являются основными строительными блоками Microsoft Visual Basic; почти все, что вы делаете в Visual Basic, включает изменение объектов. Каждый элемент Microsoft Word, например документы, таблицы, абзацы, закладки и поля, может быть представлен объектом в Visual Basic.

Что такое свойство?


Свойство — это атрибут объекта или аспект его поведения. Например, свойства документа включают его имя, содержимое и состояние сохранения и включено ли отслеживание изменений. Чтобы изменить характеристики объекта, изменяют значения его свойств.

Чтобы установить значение свойства, выполните ссылку на объект с периодом, именем свойства, равным знаком и новым значением свойства. В следующем примере включается отслеживание изменений в документе с MyDoc.doc.



В этом примере Documents ссылается на коллекцию открытых документов, а имя "Sales.doc" определяет один документ в коллекции. Свойство TrackRevisions установлено для этого единого документа.

Некоторые свойства невозможно установить. В разделе Справка для свойства указывает, можно ли это свойство задать (читать/писать) или только читать (только для чтения).

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



В этом примере ActiveDocument ссылается на документ в активном окне Word. Имя этого документа назначено переменной, ссылается на документ в активном окне Word. Имя этого документа назначено переменной strDocName.

Примечания


В разделе Справка для каждого свойства указывается, можно ли задать это свойство (читать/писать), только читать свойство (только для чтения) или только записывать свойство (только для записи). Кроме того, объектный браузер в редакторе Visual Basic отображает состояние чтения и записи в нижней части окна браузера при выборе свойства.

Что такое метод?


Метод — это действие, которое может выполняться объектом. Например, как и документ может быть напечатан, объект Document имеет метод PrintOut . Методы часто имеют аргументы, которые квалифицируют, как выполняется действие. В следующем примере печатаются первые три страницы активного документа.



В большинстве случаев методы являются действиями, а свойства — качествами. Использование метода вызывает что-то с объектом, а при использовании свойства возвращает сведения об объекте или вызывает изменение качества объекта.

аются, возвращая один объект из коллекции. Например, коллекция Документов содержит открытые документы Word. Для возврата коллекции документов используется свойство Documents объекта Application (объект в верхней части иерархии объектов Word).

После доступа к коллекции можно вернуть один объект с помощью значения индекса в скобки (это похоже на работу с массивами). Значение индекса обычно является числом или именем. Дополнительные сведения см. в статью Возвращение объекта из коллекции.

В следующем примере свойство Documents используется для доступа к коллекции документов. Номер индекса используется для возврата первого документа в коллекции Документов . Затем метод Close применяется к объекту Document , чтобы закрыть первый документ в коллекции Документов .



В следующем примере используется имя (указанное в качестве строки) для идентификации объекта Document в коллекции Документов .



Объекты коллекции часто имеют методы и свойства, которые можно использовать для изменения всей коллекции объектов. Объект Documents имеет метод Сохранить , который сохраняет все документы в коллекции. В следующем примере можно сохранить открытые документы, применяя метод Сохранить .

VBКопировать

Sub SaveAllOpenDocuments()

Documents.Save

End Sub

Объект Document также имеет метод Сохранить , доступный для сохранения одного документа. В следующем примере сохраняется документ с именем Sales.doc.

VBКопировать

Sub SaveSalesDoc()

Documents("Sales.doc").Save

End Sub

Чтобы вернуть объект, который находится дальше в иерархии объектов Word, необходимо "сверлить" его с помощью свойств и методов для возврата объектов.

Чтобы узнать, как это сделать, откройте редактор Visual Basic и нажмите кнопку Object Browser в меню ПросмотрЩелкните приложение в списке Классов слева. Затем щелкните ActiveDocument из списка участников справа. В тексте в нижней части браузера объектов указывается, что ActiveDocument является свойством только для чтения, которое возвращает объект Document . Щелкните документ в нижней части браузера объектов; Объект Document автоматически выбирается в списке Классов, а в списке Участников отображаются члены объекта Document. Прокрутите список участников до тех пор, пока не найдете close. Щелкните метод Close . В тексте в нижней части окна Object Browser показан синтаксис метода. Дополнительные сведения о методе нажмите кнопку F1 или нажмите кнопку Справка , чтобы перейти к теме Справка метода Close .

С учетом этих сведений можно написать следующую инструкцию по закрытию активного документа.

VBКопировать

Sub CloseDocSaveChanges()

ActiveDocument.Close SaveChanges:=wdSaveChanges

End Sub

В следующем примере максимально увеличивается окно активного документа.

VBКопировать

Sub MaximizeDocumentWindow()

ActiveDocument.ActiveWindow.WindowState = wdWindowStateMaximize

End Sub

Свойство ActiveWindow возвращает объект Window , который представляет активное окно. Свойство WindowState задавалось максимальной константе (wdWindowStateMaximize).

В следующем примере создается документ и отображается диалоговое окно Save As , чтобы было предоставлено имя документа.

VBКопировать

Sub CreateSaveNewDocument()

Documents.Add.Save

End Sub
Свойство Documents возвращает коллекцию Документов. Метод Add создает новый документ и возвращает объект Document . Затем метод Сохранить применяется к объекту Document .

Как видите, для сверки объекта используются методы или свойства. То есть вы возвращаете объект, применяя метод или свойство к объекту выше него в объектной иерархии. После возврата нужного объекта можно применить методы и управлять свойствами этого объекта.

Получение справки по объектам, методам и свойствам


До ознакомления с объектной моделью Word можно использовать средства, которые помогут вам сверлить иерархию.

  • Microsoft IntelliSense. При введите период (.) после объекта в редакторе Visual Basic, отображается список доступных свойств и методов. Например, если ввести Application., отображается список методов и свойств объекта Application .

  • Справка. Вы также можете с помощью Справки выяснить, какие свойства и методы можно использовать с объектом. Каждая тема объекта в Справке включает скачок See Also, отображает список свойств и методов объекта. Нажмите кнопку F1 в браузере объекта или в модуле, чтобы перейти к соответствующей теме справки.

  • Объектный браузер. Браузер объекта в Visual Basic редактора отображает члены (свойства и методы) объектов Word.

Список параметров (Visual Basic)


Указывает параметры, которые должны быть вызваны процедурой при ее вызове. Несколько параметров разделяются запятыми. Ниже приведен синтаксис для одного параметра.

Синтаксис


VBКопировать

[ ] [ Optional ] [{ ByVal | ByRef }] [ ParamArray ]

parametername[( )] [ As parametertype ] [ = defaultvalue ]

Компоненты


attributelist
Необязательный элемент. Список атрибутов, применяемых к этому параметру. Список атрибутов необходимо заключить в угловые скобки (" " и " > ").

Optional
Необязательный элемент. Указывает, что этот параметр не является обязательным при вызове процедуры.

ByVal
Необязательный элемент. Указывает, что процедура не может заменить или переназначить элемент переменной, лежащий в основе соответствующего аргумента в вызывающем коде.

ByRef
Необязательный элемент. Указывает, что процедура может изменить базовый элемент Variable в вызывающем коде так же, как и сам вызывающий код.

ParamArray
Необязательный элемент. Указывает, что последний параметр в списке параметров является необязательным массивом элементов указанного типа данных. Это позволяет вызывающему коду передавать процедуре произвольное число аргументов.

parametername
Обязательный. Имя локальной переменной, представляющей параметр.

parametertype
Обязательный, если Option Strict имеет значение On . Тип данных локальной переменной, представляющей параметр.

defaultvalue
Требуется для Optional параметров. Любое константное или константное выражение, результатом которого является тип данных параметра. Если тип — Object , или класс, интерфейс, массив или структура, значением по умолчанию может быть Nothing только.

Комментарии


Параметры заключаются в круглые скобки и разделяются запятыми. Параметр может быть объявлен с любым типом данных. Если не указать parametertype , по умолчанию используется Object значение.

Когда вызывающий код вызывает процедуру, он передает аргумент в каждый обязательный параметр. Дополнительные сведения см. в разделе различия между параметрами и аргументами.

Аргумент, который вызывающий код передает каждому параметру, является указателем на базовый элемент в вызывающем коде. Если этот элемент является неизменяемым (константой, литералом, перечислением или выражением), любой код изменить его невозможно. Если это элемент переменной (объявленная переменная, поле, свойство, элемент массива или элемент структуры), вызывающий код может изменить его. Дополнительные сведения см. в разделе различия между изменяемыми и неизменяемыми аргументами.

Если передается ByRef элемент переменной, процедура также может изменить ее. Дополнительные сведения см. в разделе различия между передачей аргумента по значению и по ссылке.

Правила




  • Скобки. Если указан список параметров, его необходимо заключить в круглые скобки. Если параметры отсутствуют, можно по-прежнему использовать круглые скобки, включающие пустой список. Это повышает удобочитаемость кода путем уточнения того, что элемент является процедурой.

  • Необязательные параметры. При использовании Optional модификатора для параметра все последующие параметры в списке также должны быть необязательными и объявлены с помощью Optional модификатора.

Каждое объявление необязательного параметра должно предоставлять defaultvalue предложение.

Дополнительные сведения см. в разделе необязательные параметры.

  • Массивы параметров. Для ParamArray параметра необходимо указать ByVal .

В одном списке параметров нельзя использовать Optional и, и ParamArray .

Дополнительные сведения см. в разделе массивы параметров.

  • Механизм передачи. Механизмом по умолчанию для каждого аргумента является ByVal , что означает, что процедура не может изменить базовый элемент Variable. Однако если элемент является ссылочным типом, процедура может изменить содержимое или члены базового объекта, даже если он не может заменить или переназначить сам объект.

  • Имена параметров. Если тип данных параметра является массивом, parametername сразу после круглых скобок. Дополнительные сведения об именах параметров см. в разделе Имена объявленных элементов.


Автоматическое дополнение слов


Автоматическое дополнение слов

Средство Complete Word (Автоматически дополнить слово) редактора Visual Basic позволяет автоматически ввести практически любой VBA-термин. Активизируется это средство нажатием Ctrl +пробел. В результате на экране возникает список, наподобие обсуждавшегося выше списка свойств и методов. Но в данном случае в списке будет практически все, что вы могли бы напечатать, - объекты, функции, процедуры, константы, методы, свойства и созданные вами переменные. Исключение составляют лишь ключевые слова для обозначения встроенных типов данных, таких как Integer и Variant.

Если перед тем, как нажать Ctrl+пробел, напечатать одну-две буквы, появившийся список будет значительно короче, поскольку будет содержать только строки, начинающиеся с заданных символов. Более того, если вы напечатаете достаточно начальных символов для того, чтобы в списке осталось только одно слово, редактор Visual Basic дополнит начатое вами, как только будут нажаты клавиши Ctrl +пробел, - и без появления какого бы то ни было списка.

Ключевые слова VBA и имена доступных в данный момент классов очень удобно вводить при помощи автоматического дополнения слов. Для этого достаточно выбрать меню Edit — Complete Word или нажать комбинацию клавиш . Можно предварительно ничего не печатать, а можно набрать одну-две буквы ключевого слова.

Важные моменты в работе с редактором кода:




  • если вы напечатаете одну строку кода с отступом, то такой же отступ будет установлен для следующих строк. Изменить поведение можно при помощи параметра Auto Indent в диалоговом окне Options;

  • если редактор кода распознает ключевое слово, он автоматически сделает его первую букву заглавной и выделит все слово синим цветом;

  • часто бывает необходимо закомментировать или раскомментировать несколько строк сразу. Для этой цели можно включить отображение панели инструментов Edit и воспользоваться кнопками Comment Block и Uncomment Block;

  • если при создании процедуры вы пишете ключевое слово Sub или Function, то редактор автоматически дописывает оператор End Sub или End Function. Между процедурами вставляется строка-разделитель;

  • если при переходе на новую строку редактор кода обнаружит синтаксическую ошибку, то вам будет выдано предупреждение. Отменить предупреждения редактора можно, убрав галочку с пункта Auto Syntax Check в диалоговом окне Options. Работе это сильно не повредит, потому что синтаксически неверные строки в любом случае будут автоматически выделяться красным цветом;

в редакторе кода вполне допускается работа сразу с несколькими окнами редактирования кода. Переход между ними осуществляется с помощью горячих клавиш  или ;

Как отобразить панель инструментов Edit

Чтобы отобразить панель инструментов Edit нужно:

Кликнуть по иконке Toolbar Options панели управления (см. рисунок ниже).

Выбрать Add or Remove Buttons — Customize...

В появившемся окне (Customize) перейти на вкладку Toolbars и отметить галочкой пункт Edit.

Далее эту панель можно закрепить рядом с основной панелью инструментов. Так вам не нужно будет тратить лишнее время на выполнения нужной команды меню Edit, ведь достаточно будет просто нажать на соответствующую иконку команды.






Особенности написания кода в окне Code


В редактор кода встроено множество средств, которые облегчают написание и редактирование программного кода.

Самое полезное средство – это получение списка свойств и методов.

В большинстве VBA-программ используются свойства и методы различных объектов, при этом многие методы принимают параметры. Помнить точное название каждого свойства и метода, а также очередность передачи параметров невозможно, а разыскивать в очередной раз справку по этому объекту в документации – это ненужная трата времени.

Показ списка свойств и методов в редакторе Visual Basic включен по умолчанию. Пользоваться этой функцией очень просто: достаточно напечатать имя переменной, представляющей объект, и поставить после него точку. Автоматически откроется список всех свойств и методов этого объекта. В этом списке можно выбрать нужное свойство или метод и нажать клавишу . Если список большой, то можно набрать первые буквы имени свойства или метода.

Если вы случайно закрыли список, то открыть его заново можно при помощи меню Edit – List Properties/Methods или нажатием клавиш .

Если показ списка свойств и методов у вас отключен, то включить его можно при помощи меню Tools – Options (на вкладке Editor окна Options отмечаем галочкой пункт Auto List Members).

Редактор Visual Basic может показывать вам не только перечень всех свойств и методов, но и все параметры, которые принимает данный метод. Это свойство также работает автоматически: достаточно после имени метода напечатать пробел. Для того чтобы явно вызвать список всех параметров, можно воспользоваться меню Edit – Parameter Info или горячими клавишами .

Включить или отключить автоматический показ информации о параметрах можно, поставив или сняв галочку с параметра Auto Quick Info на той же вкладке Editor окна Options.

Список констант (допустимых значений для данного свойства) также появится автоматически после того, как вы напечатаете знак равенства <=>. Вывести допустимые значения для данного свойства также можно с помощью меню Edit — List Constants или горячих клавиш .


Закладки и разделение окна редактирования


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

Чтобы разделить окно программного кода на две части, нужно поместить указатель мыши на маркер разбивки, нажать левую кнопку мыши и перетащить появившуюся в окне линию вниз, так чтобы окно оказалось разделённым на две части.

Чтобы отменить разбиение окна на две части, нужно сделать двойной клик левой кнопкой мыши по маркеру разбивки.

Также, очень часто в процессе написания кода программы, возникает необходимость внести изменения в какую-нибудь другую часть кода. И если перейти в другое место кода прямо сейчас, то потом потребуется определённое время на то, чтобы отыскать строку где была прервана работа. А так как мы ценим своё время и не хотим тратить его попусту, то лучше всего использовать закладки в редакторе коде.

Работа с закладками производится через меню Edit – Bookmark. Для того чтобы включить или отключить закладку, нужно установить указатель ввода на нужную строку и воспользоваться командой Toggle Bookmark. Для удобства, панель инструментов Edit можно закрепить рядом со стандартной панелью инструментов (как это сделать будет показано в конце урока).
Окно редактирования кода VBA (Code)О кно Code (окно программного кода, или редактор программного кода) предназначено для просмотра,редактирования, или создания нового кода на языке VBA.
Открыть окно редактора кода можно несколькими способами:

  1. Выбрать команду меню View — Code.

  2. Нажать клавишу F7.

  3. В Project Explorer, или в дизайнере форм (UserForm) кликнуть по нужному элементу правой кнопкой мыши и в появившемся контекстном меню выбрать View Code.



Окно редактирования кода допускает два режима представления кода:

  1. Procedure View – просмотр отдельной процедуры.

  2. Full Module View – просмотр всего модуля в целом.

Для переключения режимов представления кода предназначены две кнопки, которые расположены в нижнем левом углу окна редактора кода.

В верхней части окна редактора кода находятся два раскрывающихся списка General (Общий) и Declarations (Объявления).

Слева находится список объектов. В нем вы можете выбрать объект, к которому будет относиться ваш код. Если вы открыли программный код модуля, то здесь будет только пункт General. Другое дело, если открыта форма, то в этом списке вы сможете выбрать саму форму или любой ее элемент управления и записать для него код.

Список справа – это список процедур и событий. В нем есть раздел Declarations – объявления уровня всего модуля и список всех процедур (макросов) для стандартного модуля или событий, если создается код для формы. При выборе нужного события будет автоматически создана нужная процедура, обрабатывающая это событие.

Список литературы

  1. https://docs.microsoft.com/ru-ru/office/vba/word/concepts/objects-properties-methods/understanding-objects-properties-and-methods

  2. https://docs.microsoft.com/ru-ru/dotnet/visual-basic/language-reference/statements/parameter-list

  3. https://d-nik.pro/programmirovanie/programmirovanie-na-vba/143-okno-redaktirovaniya-koda-vba-code#::text=%D0%9A%D0%BB%D1%8E%D1%87%D0%B5%D0%B2%D1%8B%D0%B5%20%D1%81%D0%BB%D0%BE%D0%B2%D0%B0%20VBA%20%D0%B8%20%D0%B8%D0%BC%D0%B5%D0%BD%D0%B0,%D0%BE%D0%B4%D0%BD%D1%83%2D%D0%B4%D0%B2%D0%B5%20%D0%B1%D1%83%D0%BA%D0%B2%D1%8B%20%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%B2%D0%BE%D0%B3%D0%BE%20%D1%81%D0%BB%D0%BE%D0%B2%D0%B0.





написать администратору сайта