Обновяване на Excel VBA

Когато стартираме всеки макрос VBA с огромен набор от код, кодът завършва, но на заден план получаваме обработка на данни под формата на стартиране или изчакване на показалеца. И след като е направено, можем да видим само изхода. Редовният начин не е правилният начин да видите как стойностите се актуализират чрез стартиране на код. Например, да речем, че сме написали кода за генериране на някои числа в 100 клетки. Сега този код може просто да генерира изхода, без да показва как се отпечатват числата. За да разрешим това, имаме VBA ScreenUpdating . Екранното актуализиране в VBA ни помага да видим как кодът генерира изхода. Това могат да бъдат числа, текст, азбуки или комбинация. След като стартираме кодовия цикъл, чрез VBA ScreenUpdating успяхме да видим генерирането на числа.

Как да използвате приложението ScreenUpdating в Excel VBA?

Ще научим как да използваме приложението ScreenUpdating в Excel, като използваме кода VBA.

Можете да изтеглите този VBA ScreenUpdating Excel шаблон тук - VBA ScreenUpdating Excel шаблон

VBA ScreenUpdating може да бъде забелязано, докато изпълняваме кода или макроса. Докато кодът работи, ще можем да видим как екранът ни се актуализира от стойностите, генерирани от писмен код в VBA. Вместо да виждаме по-стария знак за чакане, с помощта на VBA ScreenUpdating можем да видим как екранът актуализира стойностите на продукцията чрез VBA ScreenUpdating. Сега по този начин можем да видим и името на самата статия, която я определя, VBA ScreenUpdating .

Актуализиране на екрана на VBA - Пример №1

В този пример ще видим прост код за актуализиране на екрана. За това се нуждаем от няколко клетки с числа, както е показано по-долу. За това следвайте стъпките по-долу:

Стъпка 1: Отворете модул от раздела на менюто Вмъкване, както е показано по-долу.

Стъпка 2: Сега напишете подпроцедурата в името на VBA ScreenUpdating, както е показано по-долу.

Код:

 Sub Screen_Update1 () End Sub 

Стъпка 3: Сега ще копираме числата от клетка A1: A3 във всяка друга клетка. Да кажем, че клетката е C1: C3 с помощта на кода по-долу.

Код:

 Обхват на под екрана_Update1 () ("A1"). Диапазон на копиране ("C1") Диапазон на копиране ("A2"). Обхват на копиране ("C2") Диапазон на копиране ("A3"). Обхват на копиране ("C3") End Sub 

Стъпка 4: Сега ако стартираме този код, можем да получим само изхода, който е копиран от стойности от колона А до С. Сега ще използваме приложението ScreenUpdating, както е показано по-долу.

Код:

 Sub Screen_Update1 () Application.ScreenUpdating Range ("A1"). Диапазон на копиране ("C1") Диапазон на копиране ("A2"). Диапазон на копиране ("C2") Диапазон на копиране ("A3"). Диапазон на копиране ("C3") End подводница 

Стъпка 5: Поставяме знак за равенство, за да избираме булевите стойности, които са ИСТИНСКИ или ЛЕЖНИ. Ще изберем FALSE, за да спрем актуализирането на екрана.

Код:

 Sub Screen_Update1 () Application.ScreenUpdating = Грешен диапазон ("A1"). Диапазон на копиране ("C1") Диапазон на копиране ("A2"). Диапазон на копиране ("C2") Диапазон на копиране ("A3"). Диапазон на копиране ("C3" ) Край Sub 

Стъпка 6: Стартирайте кода, като натиснете клавиша F5 или кликнете върху бутона за възпроизвеждане, разположен под лентата на менюто. Ще видим, че стойностите са копирани от колона А до В.

Това може да се види по-ясно, ако имаме огромен набор от числа.

Актуализиране на екрана на VBA - Пример №2

Нека видим още един пример за обновяване на екрана. Този път нека разгледаме числото от 1 до 20 от клетка А1 до А20, както е показано по-долу.

За да използвате приложение за екранизиране, изпълнете следните стъпки:

Стъпка 1: Напишете подпроцедурата на VBA екранизиране, както е показано по-долу.

Код:

 Sub Screen_Update2 () End Sub 

Стъпка 2: Сега напишете кода, за да изберете клетката за диапазон от А1 до А20 и ги копирайте в B1 до F20, както е показано по-долу. По подобен начин, както видяхме в пример-1.

Код:

 Обхват на под екрана_Update2 () („A1: A20“). Обхват на копиране („B1: F20“) Край Sub 

Стъпка 3: За да приложим приложението за екранно обновяване, отново ще използваме подобен ред код, който видяхме в пример-1.

Код:

 Sub Screen_Update2 () Application.ScreenUpdating = False Range ("A1: A20"). Диапазон на копиране ("B1: F20") End Sub 

Използваното по-горе приложение ScreenUpdating като FALSE ще ни позволи да видим как VBA кодът актуализира екрана. Тъй като имаме повече числа, има шансове да видим и екранизиране.

Стъпка 4: Стартирайте кода, като натиснете клавиша F5 или натиснете бутона за възпроизвеждане. Можехме да видим как стойността се актуализира.

VBA ScreenUpdating - Пример №3

Има и друг начин да видите екрана да се актуализира. Това може да стане с помощта на цикъла For-Next. В този пример ще отпечатаме числата в комбинирана матрица за редове и колони. За това следвайте стъпките по-долу:

Стъпка 1: Напишете подпроцедурата на VBA ScreenUpdating.

Код:

 Sub Screen_Updating3 () End Sub 

Стъпка 2: Сега декларирайте 2 променливи за редове и колони отделно като тип данни Long.

Код:

 Sub Screen_Updating3 () Dim RowCount като Long Dim ColumnCount като Long End Sub 

Стъпка 3: Сега декларираме друга променлива, която ще използваме като еталон за стартиране на числата.

Код:

 Sub Screen_Updating3 () Dim RowCount като Long Dim ColumnCount As Long Dim MyNumber As Long End Sub 

Стъпка 4: Сега дайте референтния номер, от коя позиция искаме да започнем броенето. Тук го даваме като 0.

Код:

 Sub Screen_Updating3 () Dim RowCount като Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 End Sub 

Стъпка 5: Сега отворете цикъл For и дайте броя на колоните и редовете, които искат да видите актуализиране. Да кажем от 1 до 50.

Код:

 Sub Screen_Updating3 () Dim RowCount като дълъг Dim ColumnCount толкова дълъг Dim MyNumber толкова дълъг MyNumber = 0 за RowCount = 1 до 50 край Sub 

Стъпка 6: За да продължите контура, дайте променлива MyNumber +1.

Код:

 Sub Screen_Updating3 () Dim RowCount като дълъг Dim ColumnCount толкова дълъг Dim MyNumber толкова дълъг MyNumber = 0 за RowCount = 1 до 50 за ColumnCount = 1 до 50 MyNumber = MyNumber + 1 край Sub 

Стъпка 7: Сега изберете променливите на реда и колоните във функцията Cell. След това изберете стойностите, съхранени в тях и ги присвойте на променлива MyNumber.

Код:

 Sub Screen_Updating3 () Dim RowCount като Long Dim ColumnCount като Long Dim MyNumber As Long MyNumber = 0 За RowCount = 1 до 50 за ColumnCount = 1 до 50 MyNumber = MyNumber + 1 клетки (RowCount, ColumnCount). Изберете клетки (RowCount, ColumnCount) .Value = MyNumber End Sub 

Стъпка 8: Сега затворете цикъла до Next. Включете променливи за редове и колони, които дефинирахме и използвахме в цикъла For-Next.

Код:

 Sub Screen_Updating3 () Dim RowCount като Long Dim ColumnCount като Long Dim MyNumber As Long MyNumber = 0 За RowCount = 1 до 50 за ColumnCount = 1 до 50 MyNumber = MyNumber + 1 клетки (RowCount, ColumnCount). Изберете клетки (RowCount, ColumnCount) .Value = MyNumber Next ColumnCount Next RowCount End Sub 

Стъпка 9: Сега още не сме вмъкнали приложението за екранно обновяване. Сега поставете приложението Screenupdating като FALSE преди началото на цикъла и като TRUE в края на цикъла, както е показано по-долу.

Код:

 Sub Screen_Updating3 () Dim RowCount като Long Dim ColumnCount като Long Dim MyNumber като Long Application.ScreenUpdating = False MyNumber = 0 За RowCount = 1 до 50 за ColumnCount = 1 до 50 MyNumber = MyNumber + 1 клетки (RowCount, ColumnCount). Изберете клетки (RowCount, ColumnCount) .Value = MyNumber Next ColumnCount Next RowCount Application.ScreenUpdating = True End Sub 

Сега компилирайте пълния код стъпка по стъпка, като натиснете функционалния клавиш F8 и след това го стартирайте, ако не се намери грешка. Ще видим как всяка клетка от избрани редове и колони се актуализира със стойностите, съхранявани в нея.

Плюсове на Excel VBA ScreenUpdating

  • Много е полезно да видите как екранът се актуализира със стойността, съхранявана в цикъла.
  • Можем да използваме екранно обновяване, ако искаме да превключваме между работни листове и работни книги.
  • Можем да използваме всяка гама от числа.

Неща, които трябва да запомните

  • Ние използваме вмъкването For-Next контур като кадър или първо, можем да удовлетворим условието на For loop и след това да го затворим от Next.
  • VBA ScreenUpdda е доста полезен и видим, ако използваме огромен набор от числа.
  • След като го направите, запазете файла на excel, тъй като Macro позволява формат на excel.
  • VBA ScreenUpdating може да се използва и за създаване на макрос, чрез който можем да изпращаме имейли.

Препоръчителни статии

Това е ръководство за VBA ScreenUpdating. Тук обсъждаме как да използвате приложението ScreenUpdating в Excel VBA, заедно с практически примери и шаблон за изтегляне на excel. Можете да разгледате и другите ни предложени статии -

  1. VBA колекция (примери)
  2. VBA IF изявления | Excel Шаблони
  3. Как да използвате функция за сортиране на Excel VBA?
  4. VBA докато цикъл (примери с шаблон на Excel)
  5. VBA Environment

Категория: