Jak si můžete vytvořit vlastní jednoduchou aplikaci s VBA

  • Mark Lucas
  • 0
  • 1987
  • 6
reklama

Pokud jste postupovali společně s některými programovacími články, které jsem zde publikoval na MUO, pak víte, že mám s VBA velký milostný vztah.

Není to tolik jazyků, které se mi líbí - i když je to opravdu intuitivní - je to dostupnost. Pokud již používáte Microsoft Office, nepotřebujete nic zvláštního, ale věci, které můžete dosáhnout, jsou docela zvláštní.

Některé ze základů, které jsme již zahrnuli, zahrnují to, jak používat VBA k předávání informací. Předávání jakýchkoli informací mezi aplikacemi VBA pomocí schránky Předávání jakýchkoli informací mezi aplikacemi VBA pomocí schránky Jednou z nejvíce frustrujících částí práce s VBA uvnitř konkrétních aplikací je že není vždy snadné získat dvě aplikace “mluvit” navzájem. Můžete vyzkoušet velmi rychlé transakce ... pomocí schránky, jak odesílat e-maily z Excelu Jak posílat e-maily z tabulky Excelu pomocí skriptů VBA Jak posílat e-maily z tabulky Excelu pomocí skriptů VBA Naše kódová šablona vám pomůže nastavit automatické e-maily zv rámci Excelu pomocí Collaboration Data Objects (CDO) a skriptů VBA. a dokonce i to, jak si vytvořit internetový prohlížeč s VBA Jak si vytvořit svůj vlastní základní internetový prohlížeč pomocí VBA Jak si vytvořit svůj vlastní základní internetový prohlížeč pomocí VBA Když opravdu o tom přestanete přemýšlet, internetový prohlížeč ve své nejjednodušší podobě není opravdu působivá aplikace. Myslím, že ano, internet je úžasný podle někoho standardu. Koncept propojení… .

Zatímco mnoho čtenářů považovalo tyto články za užitečné, v několika případech jsem slyšel od některých čtenářů, kteří byli zcela nový v programování - nikdy předtím neviděli řádek kódu - a stěžovali si, že pokyny jsou stále příliš komplikované, než aby je následovaly..

Vytvořte si vlastní program s VBA

Takže pro ty z vás, kteří by opravdu rádi mohli psát vlastní aplikaci VBA, ale nikdy jste nikdy nezadali jediný řádek kódu, vás provedu prvním počítačovým programem. Tento program není určen pro programátory, ani pro středně kvalifikované kodéry - je to pro nováčky.

Nevěříš mi? Pochybujete, že máte schopnost napsat skutečný program? Jsem tu, abych vám dokázal, že vy umět napsat svůj vlastní program, kdykoli budete chtít, pomocí VBA. Budu to brát pomalu a budu se snažit, aby to bylo jednoduché. Připraveno?

Vytvoření rámce vaší aplikace

Nejprve si musíte vybrat ze stávajícího produktu sady Office, který je již na vašem počítači nainstalován - může to být Word, Excel, Powerpoint, Access nebo jakýkoli jiný. V tomto příkladu budu používat aplikaci Excel k vytvoření své aplikace. Prvním krokem je získání přístupu k nástrojům VBA přechodem na panel nástrojů a kliknutím na “Pohled”, pak “Panely nástrojů” a pak “Ovládací panel”.

Byl jsem na počítači s mírně starší verzí Excelu, takže pokud používáte Excel 2007 nebo 2010, najdete stejné ovládací prvky pod “Vývojář” a poté klepnutím na “Vložit”. Co hledáte, je ovládání pomocí příkazového tlačítka.

Klikněte na něj a nakreslete příkazové tlačítko do tabulky. V aplikaci Word nebo jiných aplikacích MS budete muset umístit tlačítko někam, kde je to vhodné. Jediným bodem tlačítka je spuštění aplikace. Dalším přístupem by bylo napsat makro, které automaticky spustí váš skript při otevření souboru Excel - ale to je nad rámec tohoto článku. Prozatím pojďme s příkazovým tlačítkem.

Ujistěte se, že málo “Režim návrhu” výběr je “na” - na obrázku výše je ikona trojúhelníku / pravítka / tužky. Poté poklepejte na vytvořené příkazové tlačítko a otevře se editor VBA Project.

Toto je vývojová oblast, ve které chcete vytvořit novou aplikaci. První věcí, kterou chcete udělat, je vytvořit přední obrazovku aplikace. Chcete-li to provést, klepněte pravým tlačítkem myši na projekt, který je již otevřený - v mém případě se nazývá “VBAProjekt” což je výchozí. Poté vyberte “Vložit” a “UserForm”.

Váš uživatelský formulář je nyní načten do vašeho projektu pod “formuláře” složka s výchozím názvem “UserForm1”.

Dvakrát klikněte na “List1”. To je “kód” za tabulkou, kde jste vytvořili příkazové tlačítko. Na pravém panelu byste měli vidět “CommandButton1” vybrané a “CommandButton1_Click” kód již existuje.

Tomu se říká a “funkce”, a to se spustí po kliknutí na příkazové tlačítko v okně tabulky.

Co tedy chcete, aby vaše příkazové tlačítko udělal, když na něj kliknete? Chcete načíst právě vytvořený formulář uživatele. To provedete zadáním jednoho řádku, “Načíst UserForm1”.

Nyní, když je váš program nastaven tak, aby se spustil ve chvíli, kdy kliknete na příkazové tlačítko, které jste vytvořili, je čas navrhnout vaši skutečnou aplikaci.

Nejprve budete chtít navrhnout, jak bude program vypadat. V mém případě chci napsat program s textovými poli a tlačítky. Program si vezme spoustu textu, a když kliknu na tlačítko, převede veškerý ten prostý text do výstupního souboru HTML, který mohu zkopírovat do svého blogu jako dokonale naformátovaný článek.

Chcete-li formulář navrhnout, klepněte pravým tlačítkem myši na “UserForm1”, a vyberte “Zobrazit objekt”. Na pravé straně obrazovky se zobrazí samotný skutečný formulář. Můžete kliknout na formulář a přetáhnout ohraničení, chcete-li změnit jeho velikost, jak chcete.

Pomocí panelu nástrojů Ovládací prvky můžete do formuláře přidat textová pole, štítky a příkazová tlačítka. Pokud chcete být opravdu kreativní, najdete také rámečky, výběrová a zaškrtávací políčka, rozevírací seznamy a mnoho dalšího. To jsou základní komponenty většiny základních aplikací.

Pokud se panel nástrojů nezobrazí, najdete jej pod ikonami na panelu nástrojů v nabídce horního editoru - když nad ním přejdete, zobrazí se slovo “sada nástrojů” vyskakovat. Jednoduše přetáhněte každou součást, kterou chcete, do formuláře a nechte ji vypadat, jak chcete.

Při vkládání každého do formuláře věnujte zvýšenou pozornost “Vlastnosti” pole pro tuto položku. Chcete upravit “(Název)” pole, které dává smysl pro to, pro co jej používáte, protože toto jméno je způsob, jakým váš program na tuto položku odkazuje. Ať je to něco jasného a smysluplného.

Přidání skvělé funkce

To, co jste již vytvořili, by bylo pro většinu aplikací více než dost. Můžete kliknout na tlačítka a přimět textová pole k interakci s tabulkou Excelu nebo dokumentem Word, kde jste aplikaci vytvořili. To, co se však dnes dělo, je pokusit se vytvořit aplikaci, která má nějaké využití mimo aplikaci Office. V mém případě chci vytvořit výstup do souboru v mém počítači. Můžete číst a zapisovat do souborů přidáním toho, co se nazývá a “Odkaz” do vašeho projektu.

Odkaz je jakousi “doplněk” to vám umožní psát další příkazy ve vašem programu, které byste jinak nemohli bez reference. Seznam odkazů obvykle naleznete pod “Nástroje” na panelu nástrojů a výběrem “Reference”. Pro funkci I / O souboru stačí posunout dolů a vybrat “Microsoft Scripting Runtime”.

Ve vašem programu můžete přistupovat ke všem komponentám, které jste vytvořili ve formuláři, zadáním věcí, jako je textbox1.text, commandbutton1.caption, za účelem přístupu k informacím uvnitř tohoto objektu (jako je text v textovém poli) nebo do změna tyto informace.

V mém případě chci “Vytvořit výstup” tlačítko, chcete-li stáhnout veškerý text ze všech polí, které jsem vytvořil, a poté je zapsat do výstupního souboru, formátovaného speciálním způsobem.

Po kliknutí na toto tlačítko se zobrazí kód události kliknutí na tlačítko. Níže uvedený kód může vypadat komplikovaně, pokud jste nikdy předtím neprovedli VBA, ale není to opravdu špatné, pokud se na něj podíváte po jednom řádku.

Chcete-li nastavit čtení a zápis souborů po přidání odkazu, můžete jej snadno nastavit zadáním následujících řádků:

Dim fso jako nový FileSystemObject Dim fnum Dim MyFile jako String MyFile = "c: \ temp \ OutputArticle.txt" fnum = Freefile ()

Co to dělá? No, to se nastaví “MyFile” jako cesta k výstupnímu souboru, do kterého chcete zapsat, a vytvoří se “fnum” jako identifikace souboru “klíč” pro kód. Nakonec tyto dva spojíte zadáním “Otevřete MyFile pro výstup jako fnum” - a bam, máte otevřené připojení k zápisu do souboru vše, co chcete, vydáním Tisk #fnum, text příkazy, jak je ukázáno níže.

Viz výše uvedené odkazy na věci jako txtHeaderImage a txt1stSection? Ve skutečnosti by to měl být txtHeaderImage.text, ale s VBA můžete použít zkratky jako je toto - vynechat .text v případě věcí, jako jsou textová pole, a váš program bude stále fungovat.

Jakmile jsem dokončil Tisk textu obsaženého ve všech textových polích na hlavní obrazovce aplikace, vše, co jsem musel udělat, bylo přepnutí zpět z “Design” režimu, klikněte na tlačítka a poté se podívejte, jak vypadá výstupní soubor.

Jistě, byl tam můj webový kód, vše naformátované s požadovanými HTML značkami, které jsem definoval ve svém programu, a veškerý text z těch textových polí, kam mají jít.

Pokud o tom přemýšlíte, můžete s touto aplikací dělat cokoli. Mohli byste vytvořit jednoduchý vstupní formulář pro zadávání dat, který pak výstupy dat buď do souboru CSV, nebo přímo do tabulky Excel na pozadí. Mohli byste napsat aplikaci, která přečte informace z textového souboru, formátuje informace nebo provede výpočty a poté načte tato data do tabulky.

Možnosti jsou opravdu omezeny pouze vaší vlastní představivostí, pokud jde o VBA. Nemusíte kupovat drahý vývojový balíček, jako je Visual Studio - stačí otevřít jakýkoli program MS Office, přepnout do editoru VBA a jste okamžitý programátor.

Pokusili jste se vytvořit vlastní aplikaci VBA? Bylo to tak těžké, jak jste si mysleli? Jste pravidelným programátorem VBA v práci nebo doma? Podělte se o své myšlenky a postřehy o své lásce k VBA v sekci komentářů níže.

Image Credit: Photo of Computer Via Shutterstock




Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.

O moderní technologii, jednoduché a cenově dostupné.
Váš průvodce ve světě moderních technologií. Naučte se, jak používat technologie a pomůcky, které nás každý den obklopují, a naučte se, jak objevovat na internetu zajímavé věci.