Excel VBA почивка за контур

VBA Break се използва, когато искаме да излезем или да прекъснем непрекъснатия цикъл, който има определени фиксирани критерии. За цикъла е в обхвата на обхвата, определя операторите, които се изпълняват многократно за определен период от време. Понякога, когато използваме някое условие на цикъл във VBA, често се случва кодът да продължава да работи без край или прекъсване. За да се избегнат подобни ситуации, се препоръчва да се използват някои прекъсвания или функции за излизане, чрез които можем да излезем от цикъла с измеримия изход от макроса.

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

Ще научим как да използваме VBA Break за Loop с няколко примера в Excel.

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

Пример №1 - VBA почивка за контур

Ще видим пример, при който при използване на цикъл подреждането на критериите няма да бъде нарушено. Но за да коригираме това, ще използваме контура If-End . За целта ни трябва модул, в който ще напишем този код.

Следвайте стъпките по-долу, за да използвате Break for Loop в Excel VBA.

Стъпка 1: Отворете нов модул, отидете на прозореца VBA и в него изберете Модул от опцията меню Вмъкване.

Стъпка 2: Това ще ни отведе до нов модул в VBA. Сега в този модул напишете подкатегория в името на VBA Break For Loop или в друго име, което определя неговото значение.

Код:

 Sub VBABreak1 () Край Sub 

Стъпка 3: Сега дефинирайте DIM като всяка азбука или дума. Това му дава идентичност. Тук използваме азбуката „А“ по-долу.

Код:

 Sub VBABreak1 () Dim A End Sub 

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

Код:

 Sub VBABreak1 () Dim A As Integer End Sub 

Стъпка 5: Сега присвойте числова стойност на цяло число А. Да речем, че е 10, както е показано по-долу.

Код:

 Под VBABreak1 () Dim A като цяло число A = 10 Край Sub 

Стъпка 6: Сега стартирайте цикъл For и помислете за всяка начална стойност на A. По-добре е да приемете тази стойност като Нула. Това става лесно за изчисление.

Код:

 Под VBABreak1 () Dim A като цяло число A = 10 за A = 0 до A Стъпка 2 Край Sub 

Стъпка 7: И за да отпечатаме стойността, съхранена в A, ще използваме поле за съобщение, което ще извлече стойността му. Можете също така да използвате всяка форма на изречение, за да направите полето за съобщение по-смислено, което е незадължително. Използвали сме го както е показано по-долу.

Код:

 Под VBABreak1 () Dim A като цяло число A = 10 за A = 0 до стъпка 2 MsgBox („Стойността е A е:“ & A) Следващ край Sub 

Стъпка 8: Сега компилирайте кода стъпка по стъпка с помощта на функционален клавиш F8 и след това стартирайте кода, като кликнете върху бутона Възпроизвеждане, както е показано по-долу. Ще видим, че изходът във всяка стъпка ще бъде от 0 до 10 в стъпката между 2, както е показано по-долу.

Стъпка 9: Сега най-сетне затворете For Loop и също използвайте Next в края. „Напред“ се използва, когато използваме числа в кода.

Код:

 Под VBABreak1 () Dim A като цяло число A = 10 за A = 0 до стъпка 2 MsgBox („Стойността е A е:“ & A) Изход за следващия край Sub 

Стъпка 10: Това показва, че цикълът не е завършен и трябва да попълним критериите за излизане, както и да излезем от For цикъл. И за това ще използваме условието If-End Loop. Така че помислете за писане If цикъл за същия Integer A. Тук изберете ограничението, докато не искате да стартирате цикъла. Ние го сметнахме за 4.

Код:

 Под VBABreak1 () Dim A като цяло число A = 10 за A = 0 до стъпка 2 MsgBox („Стойността е A е:“ & A) Ако A = 4, тогава излезте за следващия край Sub 

Стъпка 11: Сега нека добавим още един критерий, в който ще използваме колко пъти ще бъде умножен по произволно число. Да речем, че е 10. Можете да изберете всяко друго число вместо 10. Но използването на 10 улеснява разбирането на цикъла на умножение.

Код:

 Под VBABreak1 () Dim A като цяло число A = 10 за A = 0 до стъпка 2 MsgBox ("Стойността е A е:" & A) Ако A = 4, тогава A = A * 10 изход за следващия край Sub 

Стъпка 12: Сега отново използвайте полето за име на име, както сме използвали за цикъл и най-сетне затворете оператора If Loop with End if, както е показано по-долу.

Код:

 Под VBABreak1 () Dim A като цяло число A = 10 за A = 0 до стъпка 2 MsgBox („Стойността е A е:„ & A) Ако A = 4, тогава A = A * 10 MsgBox („Стойността е A е : "& A) Изход за край, ако следващият край Sub 

Стъпка 13: Отново компилирайте кода и го стартирайте. За Loop ще започне от показване на съобщение със стойност 0 и след това последвано от 2, 4 и завършване на 40. Което означава, че Loop се е прекъснал при 3 -та итерация и е взел последната стойност като 40.

Пример №2 - VBA почивка за контур

В този пример ще приложим For loop и ще видим как да прекъсваме цикъла, след като отговаря на критериите.

Стъпка 1: Отворете нов модул от опцията меню Вмъкване и му дайте подкатегория в каквото и да е име или по-добре по последователен начин, както е показано по-долу.

Код:

 Sub VBABreak2 () End Sub 

Стъпка 2: Сега дефинирайте DIM A като цяло число. Използването на Integer за тест ни позволява да внедряваме кода по-бързо и да отстраняваме грешки лесно.

Код:

 Sub VBABreak2 () Dim A As Integer End Sub 

Стъпка 3: Сега стартирайте цикъл For за определено цяло число и му дайте диапазон от всяко число на редове, като се започне от 1. Избрали сме до 20.

Код:

 Sub VBABreak2 () Dim A като цяло число за A = 1 до 20 край Sub 

Стъпка 4: Сега дайте диапазон или местоположение, откъдето номерата се печатат последователно. Използвахме ThisWorkBook, за да подберем текущия отворен файл и работни листове (1) за избор на първия лист на отворена работна книга, както е показано по-долу. Сега, за да затворите цикъла For, напишете Next в края, както е показано по-долу.

Код:

 Под VBABreak2 () Dim A като цяло число за A = 1 до 20 ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Стъпка 5: Изпълнете горния код ръчно или използвайки клавиша за бърз достъп F5. Можем да видим, че кодът е дал брой от 1 до 20.

Стъпка 6: Сега, за да прекъсваме цикъла между 0 и 20, ще използваме If-End, ако условието за цикъл, където ще дадем критериите за падане, както е показано по-долу.

Код:

 Под VBABreak2 () Dim A като цяло число за A = 1 до 20 If End If ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Стъпка 7: Сега напишете критериите, Ако A е по-голям от 9 (Или всяко число, но по-малко от 20), тогава Излезте за, както е показано по-долу. Предполагаме, че For Loop трябва да се счупи, когато цикълът достигне 9.

Код:

 Под VBABreak2 () Dim A като цяло число за A = 1 до 20 Ако A> 9, тогава излезте за край, ако ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Стъпка 8: Сега компилирайте кода, за да намерите грешката. Ако не е намерена грешка, стартирайте я. Ще видим за цяло число А стойности от 1 до 20 са попълнени, докато кодът излезе или се счупи на позиция 9.

Плюсове на VBA Break For Loop

  • Изходът или прекъсването могат да се използват не само за контур, но и за много други контури, като например Do-Dok.
  • Това се използва най-често сред всички условия на цикъл, налични в VBA.
  • За Loop е доста лесно и може да работи дори без критерии за излизане.

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

  • За цикъла може да работи, без да дава критериите за излизане. Тя може да работи добре, докато критериите без Exit не прекъснат контура до края.
  • Важно е да прекъснете всеки цикъл, който не отговаря на критериите за излизане, като използвате Exit в цикъла.
  • След като напишете кода, запазете файла като Macro Enable Excel, така че написаният код да бъде запазен.

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

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

  1. VBA InStr обясни с примери
  2. Тип данни на VBA Integer
  3. Как да изберете клетка с помощта на VBA код?
  4. Транспонирайте обхват в VBA

Категория: