Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Создание обработчика события открытия формы «Отчеты о продажах».Содержание книги
Поиск на нашем сайте
Для того, чтобы создать любой обработчик события на любой элемент управления необходимо перейти в диалоговое окно Свойства, выбрать в раскрывающемся списке объект, к которому будет создаваться обработчик события, перейти на вкладку События, выбрать из списка определенное действие, нажать напротив действия кнопку с тремя точками, выбрать в появившемся диалогом окне Построителя – Программа. Создадим обработку события открытия формы, с помощью которого на экране появится диалоговое окно с вопросом о данных пользователя. 1. Для того, перейдите в диалоговое окно Свойства, в раскрывающемся списке объекта выбрать Форма, перейти на вкладку События, выбрать Открытие формы, нажать на кнопку напротив , выбрать в диалоговом окне Построителя пункт Программа, нажать кнопку Ок. 2. После этого, вам будет открыт редактор VBA, в котором уже будет создана готовая заготовка процедуры обработчика события, следующего вида: Private Sub Form_Open(Cancel As Integer) End Sub 3. Внутри данной заготовки создадим ввод информации о данных пользователя. Спросим, например, ФИО и место работы/учебы. С этой целью воспользуемся функцией InputBox(), которая выводит на экран диалоговое окно, содержащее сообщение и поле ввода, устанавливает режим ожидания ввода текста пользователем или нажатия кнопки, а затем возвращает значение типа String, содержащее текст, введенный в поле. Синтаксис функции InputBox(): InputBox (prompt [, title] [, default] [, xpos] [, ypos] [, helpfile, context]) Где аргументы: · prompt — строковое выражение, отображаемое как сообщение в диалоговом окне. · title — строковое выражение, отображаемое в строке заголовка диалогового окна. Необязательный параметр. · default — строковое выражение, отображаемое в поле ввода как используемое по умолчанию. Необязательный параметр. · xpos — числовое выражение, задающее расстояние по горизонтали между левой границей диалогового окна и левым краем экрана. Необязательный параметр. · ypos — числовое выражение, задающее расстояние по вертикали между верхней границей диалогового окна и верхним краем экрана. Необязательный параметр. · helpfile — строковое выражение, определяющее имя файла справки, содержащего справочные сведения о данном диалоговом окне. Необязательный параметр. · context - числовое выражение, определяющее номер соответствующего раздела справочной системы. Необязательный параметр. С помощью диалогового окна ввода данных организуем запись данных пользователя в пустую надпись в заголовке формы под именем lblInform. Поэтому внутри нашей процедуры обработки события введите следующий код: Dim S As String S = InputBox("Введите пожалуйста информацию о себе(ФИО, место работы/учебы)", "Информация о пользователе") lblInform.Caption = "Пользователь: " & S
где была объявлена промежуточная переменная S строкового типа String, затем в данную переменную присваиваем данные ввода InputBox, затем в значение (свойство Caption) надписи под именем lblInform была сохранена строка, объеденная из обычного текста заключенного в кавычки и строковой переменной S, где & -символ объединения строк. Сохранитесь, выйдите из редактора, закройте и сохраните форму и запустите ее на выполнение. У вас при открытии появится диалоговое окно вида Введите информацию о себе и нажмите кнопку Ок. Данная информация появится в заголовке формы, так как показано на рис.6. Создание обработчика события нажатия кнопки формы «Просмотр формы» 1. Для того, выделите на форме кнопку «Просмотр формы», перейдите в диалоговое окно Свойства, перейти на вкладку События, выбрать Нажатие кнопки, нажать на кнопку напротив , выбрать в диалоговом окне Построителя пункт Программа, нажать кнопку Ок. 2. После этого, вам будет открыт редактор VBA, в котором уже будет создана готовая заготовка процедуры обработчика события, следующего вида: Private Sub comOpenForm_Click() End Sub 3. Сохраните форму. 4. Внутри данной заготовки создадим вывод данных о всех продажах поставщикам в форме. Форму, которую мы будем выводить – это в нашем случае Приход. Эта форма подходит для вывода отчета продажи по всем поставщикам и продажи по определенному поставщику. Однако, для вывода отчета вида «Сводный отчет с итогами» формы у нас. Ее нужно создать. 5. Чтобы создать сводную форму перейдите в окно базы данных. Вначале создадим запрос, на основе которого затем создадим форму и затем отчет. · Перейдите на вкладку Запрос, нажмите кнопку Конструктор. · Добавьте в запрос формы Приход и Ввод_прихода, Поставщик и Товары. · Добавьте последовательно все поля из двух таблиц Приход и Ввод_прихода. · Добавьте поле Название_поставщика из таблицы Поставщики и поле Название_товара из таблицы Товары. · Сохраните запрос под именем «Запрос_для_сводных_данных».
6. Перейдите на вкладку Формы, нажмите кнопку Создать, в диалоговом окне выберите Сводная таблица. В качестве источника данных выберите из раскрывающегося списка –Запрос_для_сводных_данных. Нажмите кнопку Ок. 7. У вас отобразится мастер сводных таблиц, см. рис.7. нажмите кнопку Далее. 8. На следующем шаге добавьте все поля. нажмите кнопку Готово. 9. Будет создана пустая заготовка сводной таблицы. Необходимо добавить поля в области строк, столбцов, добавить поле для итогов, добавить поле для фильтрации данных. 10. Выберите из списка полей поле Название_поставщика и перетащите его мышью в область строк, поле Название_товара и перетащите его мышью в область столбцов, поле Сумма и перетащите его мышью в область итогов, поле Дата_накладной по месяцам и перетащите его мышью в область фильтра. 11. Сохраните форму под именем «Сводная форма». 12. Просмотрите получившуюся форму в режиме просмотра. Примечание. Сводные таблицы — мощное и удобное средство анализа, уже давно прекрасно зарекомендовавшее себя в Microsoft Excel. Сводная таблица — позволяют превратить обычную таблицу или результирующее множество запроса, содержащее большое число записей и непригодное для анализа, в компактную таблицу, включающую только итоговые данные. Причем, в отличие от перекрестных запросов, структура сводной таблицы легко трансформируется, позволяя просматривать данные в различных разрезах и с различной степенью детализации, что и требуется для анализа. Кроме того, данные, представленные в табличной форме, могут быть легко преобразованы в графическую форму с помощью сводных диаграмм, что делает их еще более наглядными. Сейчас в таблице отображаются данные о продажах по всем товарам и всем поставщикам. Она напоминает результат перекрестного запроса, но далее вы убедитесь, как легко можно с ней манипулировать, отображая в ней разные данные. Например, она может быть очень легко изменена, когда требуется посмотреть выборочно данные по отдельному поставщику или поставщикам и некоторым товарам, или по месяцам продажи, т. е. по тем полям, которые отображаются в области фильтра, области строк и области столбцов. Справа от названия каждого из этих полей видна небольшая стрелка вниз. Щелкните по этой стрелке в поле "Дата_накладной" в области фильтра. Появится небольшое окно со списком значений поля, которые присутствуют в исходных данных. По умолчанию у каждой даты установлен флажок. Сводные таблицы предназначены только для чтения, данные в них нельзя изменять. Но зато пользователь может очень легко трансформировать сводную таблицу: добавлять новые строки и столбцы, менять их местами, изменять названия полей и уровень детализации отображаемых данных. В каждой области таблицы может размещаться не одно, а несколько полей данных. Чтобы добавить неиспользованные поля запроса в сводную таблицу, просто перетащите их мышью в нужную область. Вы можете легко поменять местами поля из области фильтра и из области столбцов или строки поменять местами со столбцами. В отличие от аналогичных таблиц в перекрестном запросе, данные в сводной таблице легко сортировать. Для этого используются стандартные кнопки Сортировать по возрастанию (Sort Ascending) и Сортировать по убыванию (Sort Descending) на панели инструментов.
13. После создания сводной формы закройте ее и вернитесь обратно к нашей форме «Отчеты о продажах», откройте редактор кода VBA, и перейдите в обработчик события comOpenForm_Click(). 14. Необходимо учитывать выбор пользователя вида отчета, а именно – продажи по всем поставщикам, сводный отчет с итогами и продажи по определенному поставщику. А также необходимо учитывать период времени в течение, которого необходимо выводить информацию о продажах. Все эти условия будут входить в строку условия отбора данных из запроса. Необходимо соответственно создать три условия на выбор вида отчета, определение элемента из списка поставщика, добавление в условие периода дат. Решим вначале задачу без учета дат (листинг 3). Листинг 3. Обработчик события нажатия кнопки «Просмотр форм»
Private Sub comOpenForm_Click()
|
||||
Последнее изменение этой страницы: 2016-08-15; просмотров: 330; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.95.233 (0.011 с.) |