Top 22 VBA Interview Questions & Odpovědi

Anonim

Stáhnout PDF

1) Vysvětlete, co je VBA nebo Visual Basic pro aplikace?

VBA znamená Visual Basic for Applications; je to programovací jazyk založený na událostech vyvinutý společností Microsoft. Používá se převážně s kancelářskými aplikacemi Microsoft, jako jsou MS-word, MS-Access a MS-Excel.

2) Uveďte, kde můžete napsat svůj program VBA pro makro?

Modul je místo, kde můžete psát program VBA pro Macro, pro vložení modulu přejděte do Vložit -> Modul

3) Uveďte, jaký styl komentářů se používá ve VBA?

Komentáře se používají k dokumentaci logiky programu a informací o uživateli, se kterými mohou další programátoři v budoucnu bezproblémově pracovat na stejném kódu. Ve VBA existují hlavně dvě metody, které představují komentáře.

  • Jakékoli prohlášení, které začíná jednoduchou citací, se považuje za komentář
  • Nebo můžete použít výpis REM namísto jednoduchých uvozovek (')

4) Jak můžeme ve VBA deklarovat proměnnou a konstantní?

Ve VBA lze proměnnou deklarovat pomocí klíčového slova „DIM“, zatímco konstanta se deklaruje pomocí klíčového slova „Const.“

5) Jaké jsou datové typy ve VBA?

Datové typy ve VBA jsou rozděleny do dvou kategorií

Číselný datový typ Numerický datový typ
Byte Řetězec (pevná délka)
Celé číslo Řetězec (proměnná délka)
Dlouho datum
Singl Booleovský
Dvojnásobek Objekt
Měna Varianta (číselná)
Desetinný Varianta (text)

6) Vysvětlete, co jsou ADO, ODBC a OLEDB?

ADO : ActiveX Data Objects nebo ADO je univerzální rámec pro přístup k datům, který zahrnuje funkce DAO

ODBC : Open Database Connectivity nebo ODBC je technologie, která umožňuje připojení klientské aplikace databáze k externí databázi

OLEDB : Jedná se o nízkoúrovňové programovací rozhraní určené k přístupu k široké škále propojení a vkládání datových objektů (OLE)

7) Vysvětlete funkční ukazatele ve VBA ?

VBA (informace o Visual Basic) mají flexibilní aplikace, ale ve VBA existuje omezení na ukazatel funkce. Windows API má nedostatečnou podporu pro ukazatele funkcí, protože má schopnost používat funkci, ale nikoli funkční podporu pro zpětné volání funkce. Má zabudovanou podporu pro volání, ale ne pro zpětné volání.

8) Vysvětlete, jak se provádí „počítání referencí“ ve VBA?

Ve VBA brzy proměnná vyjde z rozsahu, referenční počitadlo na referenčním objektu se sníží. Když přiřadíte odkaz na objekt jiné proměnné, zvýší se čítač referencí. I když váš referenční počet dosáhne nuly, událost se ukončí.

9) Jak můžete explicitně snížit referenční počitadlo?

Chcete-li referenční čítač explicitně snížit, musíte nastavit proměnnou na „Nic“.

10) Vysvětlete, co jsou objekty COM (Component Object Model) ve VBA ?

Objekty COM jsou obvykle soubory DLL a jsou kompilovanými spustitelnými programy.

11) Vysvětlete, jak můžete vytočit telefonní číslo pomocí VBA?

Chcete-li vytočit telefonní číslo prostřednictvím VBA, musíte postupovat podle následujících kroků

  • Příkaz Shell ve VBA lze použít ke spuštění vytáčení přítomného v OS Windows
  • Pro připojení k modemu lze použít telefonní číslo
  • Pomocí kláves pro odeslání a příkazu shellu můžete vytočit svého uživatele
  • Sendkey diktuje Windows, aby vytočily podle stisknutí kláves aplikace, zatímco Shell aktivuje aplikaci Windows
  • Makro lze použít k zahájení programu kartového souboru, který spouští funkci automatického vytáčení

12) Vysvětlete, co znamená „Možnost výslovně“? Kde by měl být použit?

„Možnost Explicit“ činí deklaraci proměnných povinnou. Funkce Line explicit umožňuje kompilátoru určit všechny proměnné, které nejsou deklarovány příkazem dim. Tento příkaz významně snižuje problém s chybami typu. Používá se ve VBA, protože se zabývá aplikací bohatou na informace, ve které jsou běžné chyby typu. Před zahájením jakéhokoli dílčího postupu jej lze použít uvnitř modulu.

13) Vysvětlete, jak můžete předat argumenty funkcím VBA ?

Když jsou argumenty předány funkcím VBA, mohou být předány dvěma způsoby

  • ByVal : Když je argument předán Value, pak to znamená, že proceduře je předána pouze hodnota a při ukončení procedury budou všechny změny provedené v argumentu uvnitř procedury ztraceny.
  • ByRef : Když je argument předán odkazem, je do procedury předána skutečná adresa argumentu. Veškeré změny provedené v argumentu uvnitř procedury budou vyvolány při ukončení procedury

14) Uveďte metodu, která je volána z ObjectContext objektu k upozornění MTS, že transakce byla neúspěšná nebo úspěšná?

Metoda Setabort a setcomplete jsou volána z objektu ObjectContext, aby upozornily MTS, že transakce byla neúspěšná nebo neúspěšná

15) Jaký je kód pro vyhledání naposledy použitého řádku ve sloupci nebo naposledy použitého sloupce řádku?

Chcete-li najít poslední řádek ve sloupci, je použit příkaz End (xlUp) a pro vyhledání posledního sloupce v řádku je použit příkaz End (xlToLeft).

16) Uveďte rozdíl mezi podprogramy a funkcemi ve VBA ?

Rozdíl mezi podprogramy a funkcemi je v tom

  • Subrutiny nikdy nevracejí hodnotu, ale funkce vrací hodnoty
  • Podrutiny mohly změnit hodnoty skutečných argumentů, zatímco funkce nemohla změnit hodnotu skutečných argumentů

17) Vysvětlete, jaký je rozdíl mezi vlastnostmi CurrentRegion a UsedRange ?

  • CurrentRegion: Aktuální region je rozsah ohraničený libovolnou kombinací prázdných sloupců a řádků
  • UsedRange: Tato vlastnost se používá k výběru rozsahu použitých buněk v listu. Vrátí Range objekt, který představuje použitý rozsah v konkrétním listu

18) Vysvětlete, jak ladit kód VBA?

Chcete-li ladit kód VBA, postupujte podle pokynů

  • Používání zarážek (F9)
  • Krok za krokem provedení (F8)
  • Okno Print & Immediate a Watch the window

19) Jak můžete zastavit skript VBA, když jde do nekonečné smyčky?

Stisknutím kláves Cntrl + Pause Break můžete zastavit skript VBA, když přejde do nekonečné smyčky.

20) Uveďte, kterou vlastnost nabídky nelze nastavit za běhu ?

Za běhu nelze nastavit vlastnost Název nabídky.

21) Uveďte, zda mají VBA strukturu slovníku?

Ano, VBA má strukturu slovníku. Můžete nastavit odkaz na slovník jako

  • Nastavit dict = CreateObject („Scripting.Dictionary“)
  • NEBO Dim dict jako New Scripting.Dictionary

22) Uveďte, jak můžete komentovat a odkomentovat bloky kódu v editoru Office VBA?

V editoru Office VBA můžete komentovat a odkomentovat bloky kódu podle následujících kroků

  • V editoru VBA přejděte na Zobrazit -> Panely nástrojů -> Přizpůsobit ... NEBO klikněte pravým tlačítkem na panel nástrojů a vyberte Přizpůsobit
  • Vyberte nabídku úprav vlevo pod kartou příkazy
  • Když se posunete dolů, uvidíte dvě ikony „Blokování komentářů“ a „Odkomentování“
  • Když je přetáhnete na panel nástrojů, budete mít snadný přístup k zvýraznění bloku kódu a provedení akce na něm