Стовпчик зі списком Excel VBA - багатопрофільні макроси Excel

Зміст

Нижче ми розглянемо програму в Excel VBA який створює Userform, що містить комбіноване вікно з багатьма стовпцями.

Форма користувача, яку ми збираємось створити, виглядає так:

Щоб створити цю форму користувача, виконайте наступні кроки.

1. Відкрийте редактор Visual Basic. Якщо Провідник проектів не відображається, натисніть Перегляд, Провідник проектів.

2. Натисніть Вставити, форма користувача. Якщо панель інструментів не з'являється автоматично, натисніть Перегляд, Панель інструментів. Ваш екран слід налаштувати, як показано нижче.

3. Додайте мітку, поле зі списком та кнопки команд. Як тільки це буде завершено, результат повинен відповідати зображенню Userform, показаному раніше. Наприклад, створіть елемент керування поле зі списком, натиснувши ComboBox з панелі інструментів. Далі можна перетягнути поле зі списком у формі користувача.

4. Ви можете змінити назви та підписи елементів керування. Імена використовуються у коді Excel VBA. Підписи - це ті, які з’являються на екрані. Змінювати назви елементів керування є хорошою практикою, але це не обов’язково, оскільки в цьому прикладі ми маємо лише кілька елементів керування. Щоб змінити підпис форми Userform, ярлика та командних кнопок, натисніть «Вид», «Вікно властивостей» та клацніть на кожному елементі керування.

5. Щоб відобразити Userform, розмістіть на робочому аркуші командну кнопку та додайте такий кодовий рядок:

Приватна підкомандаButton1_Click ()
UserForm1.Show
End Sub

Тепер ми збираємось створити Sub UserForm_Initialize. Коли ви використовуєте метод Show для Userform, цей підрозділ буде автоматично виконано.

6. Відкрийте редактор Visual Basic.

7. У Провіднику проектів клацніть правою кнопкою миші на UserForm1, а потім клацніть «Переглянути код».

8. Виберіть Userform з розкривного списку ліворуч. Виберіть Ініціалізувати зі спадного списку праворуч.

9. Додайте такі рядки коду:

Приватний підкористувач UserForm_Initialize ()
ComboBox1.ColumnCount = 2
Затемнення плівок (1 до 5, 1 до 2) як рядок
Dim i Як ціле число, j як ціле число
Films (1, 1) = "Володар кілець"
Films (2, 1) = "Швидкість"
Фільми (3, 1) = "Зоряні війни"
Films (4, 1) = "Хрещений батько"
Films (5, 1) = "Художня література"
Фільми (1, 2) = "Пригоди"
Films (2, 2) = "Дія"
Фільми (3, 2) = "Наукова фантастика"
Фільми (4, 2) = "Злочин"
Фільми (5, 2) = "Драма"
ComboBox1.List = Фільми
End Sub

Пояснення: Перший рядок коду встановлює кількість стовпців поля зі списком до 2. Замість того, щоб встановлювати кількість стовпців під час виконання, ви також можете налаштувати цей параметр під час розробки. Для цього клацніть правою кнопкою миші на елементі управління зі списком, клацніть Властивості та встановіть властивість ColumnCount на 2. Далі ми оголошуємо та ініціалізуємо двовимірний масив. Останній рядок коду призначає масив поле зі списком.

Тепер ми створили першу частину Userform. Хоча це вже виглядає акуратно, нічого не відбудеться, коли ми натиснемо кнопки команд на Userform.

10. У Провіднику проектів двічі клацніть UserForm1.

11. Двічі клацніть по кнопці OK.

12. Додайте такі рядки коду:

Приватна підкомандаButton1_Click ()
Розвантажте мене
MsgBox "Ви вибрали" & ComboBox1.Value
Увімкнути Помилка Відновити Далі
MsgBox "Вам подобається" & ComboBox1.Стовпець (1) та "фільми"
End Sub

Примітка: ці рядки коду закривають форму користувача Excel VBA та відображають вибраний елемент та жанр. Вираз "On Error Resume Next" ігнорує помилку, коли користувач заповнює свій власний фільм (у цьому випадку немає доступного жанру).

13. Двічі клацніть кнопку «Скасувати».

14. Додайте такий рядок коду:

Приватна підкоманда CommandButton2_Click ()
Розвантажте мене
End Sub

Результат, коли ви вибираєте Швидкість і натискаєте OK.

Ви допоможете розвитку сайту, поділившись сторінкою з друзями

wave wave wave wave wave