VBA v Excelu: Co je Visual Basic pro aplikace, jak se používá

Everybody in this country should learn how to program a computer... because it teaches you how to think." -Steve Jobs

Rád bych rozšířil moudrá slova Steva Jobse a řekl, že každý na světě by se měl naučit programovat počítač. Možná nebudete muset skončit jako programátor nebo psát programy, ale naučí vás myslet.

Co je Visual Basic for Applications (VBA)?

Visual Basic for Applications (VBA) je událostmi řízený programovací jazyk implementovaný pomocí Microsoft k vývoji aplikací Office. VBA pomáhá rozvíjet automatizační procesy, Windows API a uživatelem definované funkce. Umožňuje vám také manipulovat s funkcemi uživatelského rozhraní hostitelských aplikací.

Než půjdeme do dalších podrobností, podívejme se, co je to počítačové programování v laickém jazyce. Předpokládejme, že máte služku. Pokud chcete, aby pokojská uklízela dům a prala. Řeknete jí, co má dělat, pomocí řekněme angličtiny a ona to udělá za vás. Při práci s počítačem budete chtít provádět určité úkoly. Stejně jako jste řekli pokojské, aby dělala domácí práce, můžete také říct počítači, aby úkoly dělal za vás.

Proces sdělování počítači, co chcete, aby pro vás udělal, se nazývá počítačové programování. Stejně jako jste použili angličtinu k tomu, abyste řekli pokojské, co má dělat, můžete také použít anglické příkazy k tomu, abyste počítači řekli, co má dělat. Výroky podobné angličtině spadají do kategorie jazyků na vysoké úrovni. VBA je jazyk na vysoké úrovni, který můžete použít k přizpůsobení Excelu vaší vůli.

VBA je ve skutečnosti podmnožinou jazyka Visual Basic 6.0 BASIC Bzačátečníci All-Purpose Ssymbolický Iinstrukce Códa.

Proč VBA?

VBA vám umožňuje používat příkazy podobné angličtině k psaní pokynů pro vytváření různých aplikací. VBA se snadno učí a má snadno použitelné uživatelské rozhraní, ve kterém stačí přetáhnout ovládací prvky rozhraní. Umožňuje také vylepšit funkčnost Excelu tím, že se bude chovat tak, jak chcete.

Osobní a obchodní aplikace VBA v Excelu

Pro osobní použití jej můžete použít pro jednoduchá makra, která zautomatizují většinu vašich rutinních úkolů. Přečtěte si článek o makrech, kde najdete další informace o tom, jak toho můžete dosáhnout.

Pro obchodní použití můžete vytvářet kompletní výkonné programy poháněné excelem a VBA. Výhodou tohoto přístupu je, že můžete využít výkonné funkce Excelu ve svých vlastních programech.

Úvod do jazyka Visual Basic for Applications

Než budeme moci napsat jakýkoli kód, musíme nejprve znát základy. Následující základy vám pomohou začít.

  • Proměnlivý – na střední škole jsme se učili o algebře. Najděte (x + 2y), kde x = 1 a y = 3. V tomto výrazu jsou x a y proměnné. Mohou jim být přiřazena libovolná čísla, tj. 1 a 3 jako v tomto příkladu. Mohou být také změněny na řekněme 4 a 2. Proměnné jsou ve zkratce místa v paměti. Při práci s VBA Excel budete muset také deklarovat proměnné, stejně jako v algebraických třídách
  • Pravidla pro vytváření proměnných
    • Nepoužívejte vyhrazená slova – pokud pracujete jako student, nemůžete používat titul lektor nebo ředitel. Tyto tituly jsou vyhrazeny pro lektory a vedení školy. Vyhrazená slova jsou slova, která mají speciální význam v Excel VBA a jako taková je nemůžete použít jako názvy proměnných.
    • Názvy proměnných nemohou obsahovat mezery – nelze definovat proměnnou s názvem první číslo. Můžete použít firstNumber nebo first_number.
    • Používejte popisná jména – je velmi lákavé pojmenovat proměnnou po sobě, ale vyhněte se tomu. Použijte popisné názvy, tj. množství, cenu, mezisoučet atd. Díky tomu bude váš kód Excel VBA snadno čitelný
  • Aritmetické operátory – pravidla Brackets platí dělení násobení sčítání a odčítání (BODMAS), takže je nezapomeňte použít při práci s výrazy, které používají více různých aritmetických operátorů. Stejně jako v Excelu můžete použít
    • + pro doplnění
    • – pro odčítání
    • * pro násobení
    • / pro rozdělení.
  • Logické operátory – Koncept logických operátorů popsaný v předchozích výukových programech platí také při práci s VBA. Mezi ně patří
    • Pokud prohlášení
    • OR
    • NENÍ
    • A AUTOMATIZACI
    • TRUE
    • NEPRAVDIVÉ

Jak povolit kartu Vývojář

Níže je uveden postup krok za krokem, jak povolit kartu vývojáře v aplikaci Excel:

  • Vytvořte nový sešit
  • Klikněte na tlačítko Start na pásu karet
  • Vyberte možnosti
  • Klikněte na přizpůsobit pás karet
  • Zaškrtněte políčko vývojáře, jak je znázorněno na obrázku níže
  • klepněte na tlačítko OK

Povolte kartu Vývojář

Nyní na pásu karet uvidíte kartu VÝVOJÁŘ

VBA Ahoj světe!

Nyní si ukážeme, jak programovat v programovacím jazyce VBA. Všechny programy ve VBA musí začínat „Sub“ a končit „End sub“. Zde je název názvem, který chcete svému programu přiřadit. Zatímco sub znamená podprogram, který se naučíme v pozdější části tutoriálu.

Sub name()
.
.
. 
End Sub

Vytvoříme základní VBA program, který zobrazí vstupní pole pro dotaz na jméno uživatele a poté zobrazí uvítací zprávu

Tento výukový program předpokládá, že jste dokončili výukový program na Makra v excelu a povolili kartu VÝVOJÁŘ v Excelu.

  • Vytvořte nový sešit
  • Uložte jej ve formátu listu *.xlsm s povoleným makrem aplikace Excel
  • Klikněte na kartu VÝVOJÁŘ
  • Klikněte na rozevírací seznam VLOŽIT pod ovládacím panelem pásu karet
  • Vyberte příkazové tlačítko, jak je znázorněno na obrázku níže

Program VBA Hello World

Nakreslete příkazové tlačítko kdekoli na listu

Zobrazí se následující dialogové okno

Program VBA Hello World

  • Přejmenujte název makra na btnHelloWorld_Click
  • Klikněte na nové tlačítko
  • Zobrazí se následující okno kódu VBA

Program VBA Hello World

Zadejte následující kódy pokynů

Dim name As String
name = InputBox("Enter your name")
MsgBox "Hello " + name

TADY,

  • „Ztlumit jméno jako řetězec“ vytvoří proměnnou s názvem name. Proměnná bude přijímat text, číslice a další znaky, protože jsme ji definovali jako řetězec
  • „jméno = vstupBox("Zadejte své jméno")" volá vestavěnou funkci InputBox který zobrazí okno s titulkem Zadejte své jméno. Zadaný název se pak uloží do proměnné name.
  • "MsgBox "Ahoj" + jméno" volá vestavěnou funkci MsgBox které zobrazují Hello a zadané jméno.

Vaše kompletní okno kódu by nyní mělo vypadat následovně

Program VBA Hello World

  • Zavřete okno s kódem
  • Klikněte pravým tlačítkem na tlačítko 1 a vyberte upravit text
  • Zadejte pozdrav

Program VBA Hello World

  • Klikněte na Say Hello
  • Získáte následující vstupní pole

Program VBA Hello World

  • Zadejte své jméno, tj. Jordan
  • Zobrazí se následující okno se zprávou

Program VBA Hello World

Gratulujeme, právě jste vytvořili svůj první program VBA v Excelu

Krok za krokem příklad vytvoření jednoduchého kalkulátoru EMI v Excelu

V tomto výukovém cvičení vytvoříme jednoduchý program, který vypočítá EMI. EMI je zkratka pro Equated Monthly Instalment. Je to měsíční částka, kterou splácíte, když získáte půjčku. Následující obrázek ukazuje vzorec pro výpočet EMI.

Vytvoření jednoduché kalkulačky EMI v Excelu

Výše uvedený vzorec je složitý a lze jej napsat v Excelu. Dobrou zprávou je, že excel se o výše uvedený problém již postaral. K výpočtu výše uvedeného můžete použít funkci PMT.

Funkce PMT funguje následovně

=PMT(rate,nper,pv)

TADY,

  • "hodnotit" toto je měsíční sazba. Je to úroková sazba dělená počtem plateb za rok
  • "nper" je to celkový počet plateb. Je to doba půjčky vynásobená počtem plateb za rok
  • "pv" současná hodnota. Jde o skutečnou výši půjčky

Vytvořte GUI pomocí buněk Excel, jak je znázorněno níže

Vytvoření jednoduché kalkulačky EMI v Excelu

Přidejte příkazové tlačítko mezi řádky 7 a 8

Dejte makru tlačítka název btnCalculateEMI_Click

Klikněte na tlačítko upravit

Zadejte následující kód

Dim monthly_rate As Single, loan_amount As Double, number_of_periods As Single, emi As Double
monthly_rate = Range("B6").Value / Range("B5").Value
loan_amount = Range("B3").Value
number_of_periods = Range("B4").Value * Range("B5").Value 
emi = WorksheetFunction.Pmt(monthly_rate, number_of_periods, -loan_amount)
Range("B9").Value = emi

TADY,

  • “Dim month_rate As Single,…” Dim je klíčové slovo, které se používá k definování proměnné ve VBA, month_rate je název proměnné, Single je datový typ, který znamená, že proměnná bude přijímat číslo.
  • „monthly_rate = Range(“B6”).Hodnota / Range(“B5″).Value” Rozsah je funkce používaná pro přístup k buňkám aplikace Excel z jazyka VBA, rozsah („B6“). Hodnota odkazuje na hodnotu v B6
  • "WorksheetFunction.Pmt(…)" WorksheetFunction je funkce používaná pro přístup ke všem funkcím v Excelu

Následující obrázek ukazuje kompletní zdrojový kód

Vytvoření jednoduché kalkulačky EMI v Excelu

  • Klikněte na uložit a zavřete okno s kódem
  • Otestujte svůj program, jak je znázorněno na animovaném obrázku níže

Vytvoření jednoduché kalkulačky EMI v Excelu

Jak používat VBA v Excelu Příklad

Následující kroky vysvětlí, jak používat VBA v Excelu.

Krok 1) Otevřete editor VBA

Na kartě Vývojář z hlavní nabídky klikněte na ikonu „Visual Basic“ a otevře se váš editor VBA.

Použijte VBA v Excelu

Krok 2) Vyberte list Excel & Double klikněte na pracovní list

Otevře se editor VBA, odkud můžete vybrat list Excelu, kde chcete spustit kód. Chcete-li otevřít editor VBA, dvakrát klikněte na pracovní list.

Použijte VBA v Excelu

Otevře se editor VBA na pravé straně složky. Bude to vypadat jako bílé místo.

Použijte VBA v Excelu

Krok 3) Napište cokoli, co chcete zobrazit ve zprávě MsgBox

V tomto kroku uvidíme náš první program VBA. Ke čtení a zobrazení našeho programu potřebujeme objekt. Ve VBA je tento objekt nebo médium ve zprávě MsgBox.

  • Nejprve napište „Sub“ a poté „název programu“ (Guru99)
  • Napište cokoli, co chcete zobrazit ve zprávě MsgBox (guru99-učení je zábava)
  • Ukončete program pomocí End Sub

Použijte VBA v Excelu

Krok 4) Klikněte na zelené tlačítko spustit v horní části editoru

V dalším kroku musíte tento kód spustit kliknutím na zelené tlačítko spustit v horní části nabídky editoru.

Použijte VBA v Excelu

Krok 5) Vyberte list a klikněte na tlačítko „Spustit“.

Po spuštění kódu se objeví další okno. Zde musíte vybrat list, na kterém chcete program zobrazit, a kliknout na tlačítko „Spustit“.

Použijte VBA v Excelu

Krok 6) Zobrazit zprávu ve zprávěBox

Když kliknete na tlačítko Spustit, program se spustí. Zobrazí zprávu ve zprávě MsgBox.

Použijte VBA v Excelu

Stáhněte si výše uvedený kód Excel

Shrnutí

VBA Full Form: Visual Basic for Application. Je to dílčí komponenta Visual Basic programovacího jazyka, kterou můžete použít k vytváření aplikací v Excelu. S VBA můžete stále využívat výkonné funkce Excelu a používat je ve VBA.