Prohlášení Excel VBA GoTo

VBA Goto Statement se používá k překonání předvídaných chyb, zatímco přidáváme a vytváříme obrovský kód řádků ve VBA. Tato funkce ve VBA nám umožňuje jít s úplným kódem podle našich předpovědí nebo předpokladů. S pomocí Goto můžeme přejít na libovolný zadaný kód řádku nebo umístění ve VBA. Existují dva způsoby, jak to udělat, což uvidíme v následujících příkladech.

Jak používat Excel VBA Goto Statement?

Na několika příkladech se naučíme, jak používat Excel VBA Goto Statement.

Tuto šablonu VBA GoTo Excel si můžete stáhnout zde - VBA GoTo Excel Template

Příklad č. 1

První způsob, jak používat VBA Goto, je metoda Application.Goto . S pomocí příkazu Application.Goto můžeme do jakéhokoli konkrétního umístění, sešitu nebo listu, který je právě otevřen. Toto prohlášení bude vypadat takto.

  • (Reference): Toto není nic jiného než specifikovaný odkaz na buňku. Pokud není ve výchozím nastavení uveden odkaz, dostanete se na poslední použitý rozsah buněk.
  • (Scroll): Toto logické prohlášení TRUE nebo FALSE. Pokud je hodnota PRAVDA, bude procházet oknem, pokud je hodnota NEPRAVDA, nebude procházet oknem.

Za tímto účelem přejděte do okna VBA a klikněte na Modul, který je v nabídce Vložit, jak je ukázáno níže.

Nyní se otevře nový modul. Tam napíšeme podkategorii makra s názvem Goto, jak provádíme tento kód, jak je ukázáno níže.

Kód:

 Sub VBAGoto () End Sub 

Nyní napište Application.Goto, abyste povolili aplikaci nebo místo, kam chceme jít.

Kód:

 Sub VBAGoto () Application.Goto End Sub 

Poté poskytněte odkaz na jakýkoli list nebo sešit a rozsah buněk. Zde jsme uvedli řadu buněk B3 a pracovních listů pojmenovaných jako „VBA Goto“.

Kód:

 Sub VBAGoto () Application.Goto Reference: = Pracovní listy ("VBA_Goto1"). Rozsah ("B3"), End Sub 

Nyní, když chceme jít do zmíněné buňky, musíme přidat argument Scroll, který nás přímo zavede do určené buňky. Nyní změníme argument posouvání z FALSE, jak je ukázáno níže.

Kód:

 Sub VBAGoto () Application.Goto Reference: = Pracovní listy ("VBA_Goto1"). Rozsah ("B3"), Scroll: = False End Sub 

Po spuštění kódu pomocí klávesy F5 nebo ručně, uvidíme kurzor se přesune do buňky B3 bez změny orientace vybraného listu, jak je ukázáno níže.

Nyní změníme argument Scroll z FALSE na TRUE.

Kód:

 Sub VBAGoto () Application.Goto Reference: = Pracovní listy ("VBA_Goto1"). Rozsah ("B3"), Scroll: = True End Sub 

Zpočátku držíme kurzor na buňce A5, jak je ukázáno níže. Nyní spusťte celý kód pomocí klávesy F5 nebo ručně. Uvidíme kurzor, který byl v buňce A5, je nyní posouván nahoru a přesunut na buňku B3 a celá tabulka se přesunula na nejvyšší úroveň listu počínaje stejnou buňkou, jakou je B3, jak je znázorněno na obrázku níže.

Příklad č. 2

Existuje jiný způsob použití argumentu VBA Goto. Pomocí Goto ve VBA v tomto příkladu můžeme přeskočit argument, který způsobuje chybu. Za tímto účelem vložte do modulu VBA nový modul a začněte podkategorii s názvem argumentu použitým níže. Můžete použít jakékoli jiné jméno.

Kód:

 Sub VBAGoto () End Sub 

Z tohoto důvodu vezmeme v úvahu 3 celá čísla X, Y a Z otevřením podkategorie ve VBA, jak je ukázáno níže.

Kód:

 Sub VBAGoto () Dim X jako celé číslo, Y jako celé číslo, Z jako celé číslo End Sub 

Nyní také zvažte některé matematické dělení, kde budeme dělit 10, 20 a 30 0, 2 a 4, jak je ukázáno níže.

Kód:

 Sub VBAGoto () Dim X jako celé číslo, Y jako celé číslo, Z jako celé číslo X = 10/0 Y = 20/2 Z = 30/4 End Sub 

Pokud spustíme kód, dostaneme stejnou chybovou zprávu jako chyba 11 za běhu.

Výše uvedená chybová zpráva Chyba za běhu „11“ přichází, pouze pokud je zapsaný matematický výraz nesprávný. Nyní k přepsání této chyby použijeme text On Error GoTo se slovem YResult pro přeskočení chybové zprávy a získání výstupu, který funguje dobře, jak je ukázáno níže.

Náš kód stále není úplný. Použití příkazu Goto s příkazem „ YResult :“ přeskočí pouze chybový řádek kódu. Znovu však zobrazí chybu, protože Labe není definován, jak je uvedeno níže.

Kód:

 Sub VBAGoto () Dim X jako celé číslo, Y jako celé číslo, Z jako celé číslo při chybě GoTo YResult: X = 10/0 Y = 20/2 Z = 30/4 End Sub 

Abychom to dokončili, musíme definovat štítek . Štítek je část příkazu ve VBA Coding, která se používá, když chceme přeskočit určitou část kódu na libovolný definovaný použitelný řádek kódu. Jak již máme YResult s argumentem Goto . Pak vložíme to samé těsně před celé číslo Y. Nyní spusťte kód znovu.

Kód:

 Sub VBAGoto () Dim X jako celé číslo, Y jako celé číslo, Z jako celé číslo při chybě GoTo YResult: X = 10/0 YResult: Y = 20/2 Z = 30/4 End Sub 

Jak jsme viděli a udělali, neobdrželi jsme žádnou chybovou zprávu, což znamená, že náš kód je správný a přeskakuje ten řádek kódu, který způsobuje chybu, a dává výstup, kde byl zapsán správný kód. Nyní, chcete-li vytisknout výsledek kódu, musíte do každého Integeru vložit schránky s argumentem nápovědy MsgBox, jak je uvedeno níže.

Kód:

 Sub VBAGoto () Dim X jako celé číslo, Y jako celé číslo, Z jako celé číslo při chybě GoTo YResult: X = 10/0 YResult: Y = 20/2 Z = 30/4 MsgBox X MsgBox Y MsgBox Z End Sub 

Po dokončení spusťte celý kód a podívejte se na výstup. Výstup rozdělení všech definovaných celých čísel jako 0, 10 a 8 bude zobrazen také na níže uvedeném snímku obrazovky.

Při chybě GoTo Příkaz YResult nám pomohl přímo přejít k uvedenému číslu výsledného bodu, jako jsme to udělali pro celé číslo Y. A výstup pro X jako 0 ukazuje, že byl napsán nesprávný argument příkazu. Můžeme Label ještě před Z, ale to by nám dalo výsledek pouze celého čísla Z. U X a Y se znovu zobrazí 0 jako výstup.

Výhody VBA při chybě

  • Můžeme vypočítat jakýkoli matematický vzorec, i když je nesprávný.
  • U větších struktur kódování, kde jsou šance nebo chyby, může použití GoTo poskytnout správný výsledek i mezi řadou kódů.
  • To dává lepší výsledek ve srovnání s výsledkem získaným z normálních excelních výpočtů, přestože má nesprávný argument.

Věci na zapamatování

  • Nezapomeňte na soubor v souboru Macro-Enabled Excel, abychom mohli používat vytvořený kód VBA mnohokrát a vícekrát.
  • Před implementací sestavte písemný kód s jakýmkoli požadavkem Excel.
  • Napsaný kód můžete přiřadit libovolnému tlačítku, abychom na něj mohli rychle kliknout a kód spustit.
  • Použijte Štítek, jak je znázorněno v příkladu 2, abychom získali výsledek pro úplný správný kód.

Doporučené články

Toto byl průvodce prohlášení VBA GoTo. Zde jsme diskutovali o tom, jak používat Excel VBA GoTo Statement spolu s několika praktickými příklady a stahovatelnou šablonou Excel. Můžete si také prohlédnout naše další doporučené články -

  1. Jak používat Excel VBA smyčky?
  2. Funkce VBA v Excelu
  3. Průvodce rozsahem v Excelu
  4. Jak používat funkci VBA VLOOKUP?

Kategorie: