Лабораторная работа №2 Тема: «VBA. Работа со списком»
учебно-методический материал по информатике и икт по теме
По выбранным данным в списке в MS Excel осуществляется отбор данных в базе данных MS Access. Код написан на VBA. Результат представлен в MS Excel
Скачать:
Вложение | Размер |
---|---|
Освоение VBA. Работа с MS Excel и MS Access | 76.5 КБ |
Предварительный просмотр:
Лабораторная работа №2
Тема:”VBA. Работа со списком ”
Цель: Научиться выбирать данные с помощью списка
- Порядок работы
- Откройте лист MS Excel «Пример»
- Зайдите в редактор Visual Basic. Щелкнув по кнопке «Редактор Visual Basic»
- Добавьте на форму элементы управления. Как показано на рисунке 1.
Рис. 1
- Добавьте код для автоматического пополнения списка (Код будет выполняться при загрузке формы)
Private Sub UserForm_Initialize()
Dim Sql As String
Dim Cnct As String
Dim Con As ADODB.Connection
Dim Rec As ADODB.Recordset
Set Con = New ADODB.Connection
Cnct = "Provider = Microsoft.Jet.OLEDB.4.0;"
Cnct = Cnct & "Data Source=С:\Товары.mdb"
Con.Open Cnct
Set Rec = New ADODB.Recordset
Sql = "SELECT * FROM Товар"
Rec.Open Sql, Con
If Rec.BOF And Rec.EOF Then
Rec.Close
End If
Do While Rec.EOF = False
per = Rec.Fields("Наименование")
UserForm1.ComboBox1.AddItem per
Rec.MoveNext
Loop
Rec.Close
End Sub
- Запустите форму и проверьте наличие данных в поле со списком.
- Замените код для кнопки «Проверит» на код
Private Sub CommandButton1_Click()
Dim Sql As String
Dim Cnct As String
Dim Con As ADODB.Connection
Dim Rec As ADODB.Recordset
Set Con = New ADODB.Connection
Cnct = "Provider = Microsoft.Jet.OLEDB.4.0;"
Cnct = Cnct & "Data Source=C:\Товары.mdb"
Con.Open Cnct
Set Rec = New ADODB.Recordset
If CheckBox1.Value = True Then
Sql = "SELECT * FROM Товар"
Rec.Open Sql, Con
x = 1
Else
GoTo 1
End If
If Rec.BOF And Rec.EOF Then
Rec.Close
End If
Do While Rec.EOF = False
per = Rec.Fields("Наименование")
per1 = Rec.Fields("Цена")
Cells(x, 1) = per
Cells(x, 2) = per1
x = x + 1
Rec.MoveNext
Loop
Rec.Close
1:
Sql = "SELECT * FROM Товар WHERE Наименование='" & ComboBox1.Value & "'"
Rec.Open Sql, Con
If Rec.BOF And Rec.EOF Then
Rec.Close
GoTo 2
End If
per = Rec.Fields("Наименование")
per1 = Rec.Fields("Цена")
Cells(1, 3) = per
Cells(1, 4) = per1
2:
End Sub
- Выберите из поля со списком «Лимон» и нажмите проверить.
- Поставьте флажок на «Все» и нажмите кнопку проверить
- В итоге у вас должно получиться как на Рисунках 2 и 3
Рис. 2 – Решение
Рис. 3 – Решение
- Покажите работу преподавателю
- Занесите работу в отчет
- Вывод
По теме: методические разработки, презентации и конспекты
Лабораторная работа по теме: "Изучение морфологических особенностей растений разных видов"
Лабораторная работа по теме: "Изучение морфологических особенностей растений различных видов"...
Лабораторная работа по теме "Изучение движения тела по окружности"
Изучение движения тела по окружности. Цель работы:определение центростремительного ускорения шарика при его равномерном движении по окружности. Оборудование: штатив с муфтой и лапкой, ...
Лабораторная работа по теме Материаловедение 7 кл
Разработка лабораторной работы по теме "Материаловедение" 7 кл...
Лабораторная работа № 2. Тема: "Знакомство с микроскопом"
Электронное приложение к интерактивной доске SMART. Используется на уроке природоведения в 5 классе....
Лабораторная работа по теме "Электронные таблицы"
Можно использовать для работы на уроке по теме "Электронные таблицы", содержит задания на заполнение и форматирование таблицы, заполнение и редактирование данных разных форматов, сортировку данн...
Практическая работа на тему Включение в текст списков
Практическая работа по информатике и ИКТ для 8 класса на тему: "Включение в текст списков"....
Комплект лабораторных работ по теме «Технологии работы в MS Access»
Лабораторная работа 1. Создание таблиц базы данных. Работа с таблицами.Лабораторная работа № 2. Разработка форм базы данных. Работа с формами.Лабораторная работа № 3. Обработка данных....