Потребителска форма и диапазони на Excel VBA - Лесни макроси на Excel

Съдържание

Можете да използвате a RefEdit контрол в Excel VBA за да получите диапазон от потребител. The Потребителска форма ще създадем цветове минималната стойност на диапазон съхранявани в контролата RefEdit.

За да създадете тази потребителска форма, изпълнете следните стъпки.

1. Отворете редактора на Visual Basic. Ако Project Explorer не се вижда, щракнете върху View, Project Explorer.

2. Щракнете върху Вмъкване, Потребителска форма. Ако Toolbox не се появи автоматично, щракнете върху View, Toolbox. Екранът ви трябва да бъде настроен както е показано по -долу.

3. Добавете етикета, контролния бутон RefEdit и командните бутони. След като това приключи, резултатът трябва да бъде в съответствие с картината на Userform, показана по -рано. Например, създайте контрола RefEdit, като щракнете върху RefEdit от кутията с инструменти. След това можете да плъзнете контрола RefEdit върху Userform.

Забележка: Ако вашата кутия с инструменти няма контрола RefEdit, задайте препратка към контролата RefEdit. Щракнете върху Инструменти, Препратки и проверете Контрола за редактиране на реф.

4. Можете да промените имената и надписите на контролите. Имената се използват в кода на Excel VBA. Надписите са тези, които се появяват на екрана ви. Добра практика е да промените имената на контролите, но това не е необходимо тук, защото в този пример имаме само няколко контроли. За да промените надписа на Userform, етикет и командни бутони, щракнете върху View, Properties Window и кликнете върху всяка контрола.

5. За да покажете Userform, поставете команден бутон на работния си лист и добавете следния код:

Частна подкоманда CommandButton1_Click ()
UserForm1.Show
End Sub

Сега ще създадем Sub UserForm_Initialize. Когато използвате метода Show за Userform, този подфайл ще се изпълни автоматично.

6. Отворете редактора на Visual Basic.

7. В Project Explorer щракнете с десния бутон върху UserForm1 и след това щракнете върху Преглед на кода.

8. Изберете Userform от левия падащ списък. Изберете Инициализиране от десния падащ списък.

9. Добавете следните кодови редове:

Частен подпотребителForm_Initialize ()
Sheet1.Cells.Font.Color = vbBlack
UserForm1.RefEdit1.Text = Избор.Адрес
End Sub

Обяснение: първият кодов ред променя цвета на шрифта на всички клетки на лист1 на черен. Вторият код код получава адреса на текущата селекция и го показва в контролата RefEdit.

Вече създадохме първата част на Userform. Въпреки че вече изглежда добре, нищо няма да се случи, когато щракнем върху командните бутони на Userform.

10. В Project Explorer щракнете двукратно върху UserForm1.

11. Щракнете двукратно върху бутона Go.

12. Добавете следните кодови редове:

Частна подкоманда CommandButton1_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

Обяснение: този код код затваря Userform, когато щракнете върху бутона Cancel.

15. Тествайте Userform.

Резултат:

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave