sql >> Databáze >  >> RDS >> Access

Ladění soukromých procedur

Jednou z výhod VBA jako interpretovaného jazyka je, že můžeme provádět jednotlivé procedury, aniž bychom museli kompilovat celou aplikaci. Pojďme prozkoumat, jak přesně to děláme.

Veřejné postupy

Veřejné postupy bez argumentů

Ve standardním modulu můžete umístit kurzor dovnitř veřejné rutiny, která nemá žádné argumenty, stisknout [F5] a tato rutina se okamžitě spustí.

Pokud chcete projít rutinou, můžete buď nastavit bod přerušení na jednom z řádků před stisknutím [F5], nebo jednoduše stisknout [F8] ("Step Into") a okamžitě začít procházet kódem rutiny.

Veřejné funkce bez argumentů

To také funguje s veřejnými funkcemi ve standardních modulech kódu. Klíčem je, že funkce nemůže přijímat žádné argumenty, dokonce ani volitelné.

Veřejné řízení s argumenty

Co se stane, když se pokusíte provést veřejnou proceduru, která vyžaduje jeden nebo více argumentů (dokonce i volitelných)? Příkaz "Spustit> Spustit makro" se provede:

Soukromé postupy

Soukromé procedury bez argumentů

Nemohu si připsat zásluhy za to, že jsem objevil tohle. Zvláštní poděkování patří Terrymu Chapmanovi za předání skutečnosti, že stisknutím klávesy F5 můžete ladit Soukromé postupy, nejen veřejné postupy.

Stejně jako Terry jsem při jejich ladění dočasně změnil své soukromé procedury na veřejné. Ukázalo se, že jsem to nikdy nemusel dělat.

Soukromé procedury S Argumenty

Jakmile mě Terry přiměl zpochybnit mé domněnky, rozhodl jsem se zjistit, jak moc mi to projde. Ukázalo se, že mnohem víc, než jsem čekal!

Věřte tomu nebo ne, soukromé procedury, které berou argumenty, můžete ladit bez dočasně je změní na veřejné procedury. Chcete-li to provést, stačí zavolat plně kvalifikovaný název procedury z okna Immediate. „Plně kvalifikovaným názvem“ mám na mysli název ve formátu {ModuleName}.{ProcedureName} .

Podívejte se na tento příklad:

Ale neberte mě za slovo. Jdi to zkusit!


  1. Co dělá návrhář databází?

  2. orákulum | odstranit duplicitní záznamy

  3. MySQL – Počkejte několik sekund pomocí SELECT SLEEP()

  4. DATETIME2FROMPARTS() Příklady v SQL Server (T-SQL)