Форма користувача та діапазони Excel VBA - Прості макроси Excel

Зміст

Ви можете використовувати a Управління RefEdit в Excel VBA отримати діапазон від користувача. Форма користувача ми збираємося створити кольори з мінімальним значенням діапазон зберігається в елементі керування RefEdit.

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

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

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

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

Примітка: Якщо у вашій панелі інструментів немає елемента керування RefEdit, встановіть посилання на елемент керування RefEdit. Натисніть «Інструменти», «Посилання» та поставте прапорець «Редагувати елемент керування».

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 ()
Sheet1.Cells.Font.Color = vbBlack
UserForm1.RefEdit1.Text = Вибір.Адрес
End Sub

Пояснення: перший рядок коду змінює колір шрифту всіх комірок на аркуші1 на чорний. Другий рядок коду отримує адресу поточного виділення і відображає його в елементі керування RefEdit.

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

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

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

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

Приватна підкомандаButton1_Click ()
Dim addr As String, rng, cell As Range, мінімум As Double
addr = RefEdit1.Value
Встановити rng = Діапазон (addr)
minimum = WorksheetFunction.Min (rng)
Для кожної клітинки В rng
Якщо cell.Value = мінімум Тоді cell.Font.Color = vbRed
Наступна клітина
End Sub

Пояснення: спочатку ми отримуємо адресу з елемента керування RefEdit і зберігаємо її у змінній String addr. Далі ми встановлюємо rng ​​на діапазон, зазначений у елементі керування RefEdit. Далі ми використовуємо функцію аркуша Min, щоб знайти мінімальне значення в діапазоні. Нарешті, ми забарвлюємо мінімальне значення за допомогою циклу.

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

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

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

Пояснення: цей рядок коду закриває форму користувача, коли ви натискаєте кнопку Скасувати.

15. Перевірте Userform.

Результат:

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

wave wave wave wave wave