Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Рассмотрим второй способ организации ввода/вывода.

Поиск

Окно форм

Для создания диалоговых окон, разрабатываемых приложений в VBA, используются формы. Редактор форм является одним из основных инструментов визуального программирования. Форма в проект добавляется с помощью команды Вставка, Форма (Insert, Form) или нажатием кнопки Вставить UserForm.

В результате на экран выводится незаполненная форма с панелью инструментов  Панель элементов (рис. 4).

Рисунок 4 – Окно форм

Используя панель инструментов Панель элементов из незаполненной формы, можно сконструировать любое требуемое для приложения диалоговое окно. Размещение нового управляющего элемента в форме осуществляется следующей последовательностью действий:

 

1. Щелкните значок того элемента, который вы собираетесь разместить в форме.

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

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

4. Отпустите кнопку мыши. Элемент управления на нужном место создан.

 Размеры формы и расположенных на ней элементов управления можно изменять. Технология изменения размеров стандартная для Windows: выделить изменяемый элемент, разместить указатель мыши на одном из размерных маркеров и протащить его при нажатой левой кнопки мыши так, чтобы объект принял требуемые размеры. Окно редактирования форм поддерживает операции буфера обмена. Таким образом, можно копировать, вырезать и вставлять элементы управления, расположенные на поверхности формы.

 Любой управляющий элемент, который вы разместили на форме, обладает рядом свойств.

ОПЕРАТОР ПРИСВОЕНИЯ

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

Синтаксис:

 

Переменная (или Постоянная) = Выражение

 

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

 Например:

x = 2

x = x+2

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

Организация ввода/вывода

Решение любой задачи имеет три части:

-  Ввод данных;

-  Обработка данных;

-  Вывод результата.

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

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

 Вывод результата – это код программы, который позволяет отобразить полученный результат в необходимом виде: на экране (лист excel, форма), на принтере и т.д.

Ввод/вывод данных можно осуществлять несколькими способами:

 -запись и чтение данных из ячеек Excel.

 - диалоговые окна (InputBox\MsgBox).

 - конструирование собственных диалоговых окон (UserForm).

Сохранение программы

       Если программу сохраняется первый раз или вас устраивает уже существующее имя, то сохранять можно как в VBA, так и в Excel;

 

Если вас не устраивает уже существующее имя, то сохранять необходимо таким образом: выйти в Excel, выбрать пункт меню ^ Файл, а в нем пункт - Сохранить как.

РАССМОТРИМ ПЕРВЫЙ ИЗ НИХ.

Производить запись и чтение данных из ячеек Excel можно используя два свойства: Range и Cells.

 Свойство Range требует один аргумент – имя ячейки, записанное при помощи относительной или абсолютной адресации.

Например:

 Range(“A1”)

       Range(“$A$1”)

Свойству Cells требуется два аргумента, номер строки и номер столбца, на пересечении которых находится ячейка.

Например:

 Сеlls(2,4) (обращение к ячейке D2)

ПОРЯДОК ВЫПОЛНЕНИЯ:

1. Выполнить команду Alf+F11.

2. Выполнить команду ВСТАВКА/МОДУЛЬ (Insert/Module)

3. Выполнить команду ВСТАВКА/Процедура (Insert/Procedure)

4. Ввести имя процедуры (по правилу именования)

5. Набрать программу для вычисления выражения с=Sin(a)/Cos(b) .

       Текст программы представлен на рисунке 5.

 

 

Рисунок 5.

       Проверить работу программы.

Схема алгоритма

 

Для организации ввода/вывода также можно использовать диалоговые окна. Наиболее часто в программах VBA встречаются две разновидности диалоговых окон: окна сообщений и окна ввода.

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

 Окно ввода создается и выводится на экран с помощью функции InputBox.

Функция InputBox

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

Синтаксис:

 InputBox(prompt[, title] [, default])

 prompt — строковое выражение, отображаемое как сообщение в диалоговом окне. Строковое значение prompt может содержать несколько строк. Для разделения строк допускается использование символа возврата каретки (chr (13)), символа перевода строки (chr(10)) или комбинацию этих символов (chr( 13) & Chr (10));

 title — строковое выражение, отображаемое в строке заголовка диалогового окна. Если этот аргумент опущен, в строку заголовка помещается имя приложения;

 default — строковое выражение, отображаемое в поле ввода как используемое по умолчанию, если пользователь не введет другую строку. Если этот аргумент опущен, поле ввода изображается пустым.

Например:

 

 Имя =InputBox(“Введите Ваше имя”, “Пример окна ввода”)

 

 На экране появится окно (рисунок 6)

Рисунок 6

 

Переменной Имя будет присвоено значение типа String, введенное пользователем.

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

 

X=CDbl(InputBox(“Введите значение Х”, “Пример окна ввода”, “1,678”))

 

Введенное пользователем значение будет преобразовано к типу Double и присвоено переменной Х. Если пользователь не будет вводить значение, а просто нажмет кнопку OK, переменной Х будет присвоено значение по умолчанию – 1.678.

Процедура MsgBox

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

Синтаксис:

 MsgBox(prompt[, buttons] [, title])

 Аргументы:

 prompt — строковое выражение, отображаемое как сообщение в диалоговом окне;

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

 Значения констант, определяющих число и тип кнопок используемого значка, приведены в таблицах 11—12;

 title — строковое выражение, отображаемое в строке заголовка диалогового окна. Если этот аргумент опущен, в строку заголовка помещается имя приложения

Значения параметра Buttons процедуры MsgBox, определяющие отображаемые в диалоговом окне кнопки, приведены в таблице 4:

       Таблица 4.

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

       Таблица 5.

Пример.

N = MsgBox (“Значение переменной Х=” & X & Chr(10) & “Продолжить вычисления?”, VbYesNo, “Пример окна MsgBox”)

 

Если к моменту выполнения данного оператора переменная Х равнялась числу 2,14587895, то на экране появится следующее окно (рисунок 7).

Рисунок 7 – Пример окна сообщений

Пользователь может нажать одну из кнопок – Да или Нет. Если будет нажата кнопка Да, переменной N будет присвоено значение 6 , если будет нажата кнопка Нет – 7. Проанализировав в дальнейшем это значение, можно выбрать одну из ветвей выполнения программы.

Часто процедура MsgBox используется в «минимальном» варианте - только для вывода сообщения, с одной кнопкой – OK. В этом случае аргументы не берутся в скобки.

В диалоговом окне используются следующие информационные значки (таблица 6)

       Таблица 6

MsgBox "Внимание!!", 5 + 256 + 48

MsgBox "Внимание!!", vbRetryCancel + vbDefaultButton2 + vbExclamation



Поделиться:


Последнее изменение этой страницы: 2024-06-17; просмотров: 5; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.161.245 (0.007 с.)