Hvordan du kan lave din egen enkle app med VBA

  • Michael Cain
  • 0
  • 2912
  • 390
Reklame

Hvis du har fulgt nogle af de programmeringsartikler, som jeg har offentliggjort her på MUO, ved du, at jeg har et stort kærlighedsforhold til VBA.

Det er ikke så meget det sprog, som jeg kan lide - selvom det virkelig er intuitivt - det er tilgængeligheden. Hvis du allerede er en bruger af Microsoft Office, behøver du ikke noget specielt, men de ting, du kan udrette, er ret specielle.

Nogle af de baser, vi allerede har dækket, inkluderer, hvordan man bruger VBA til at videregive information Videregive enhver information mellem VBA-applikationer ved hjælp af udklipsholderen Pass enhver information mellem VBA-applikationer ved hjælp af udklipsholderen En af de mest frustrerende dele af at arbejde med VBA inden for specifikke applikationer, er at det ikke altid er nemt at få to applikationer til “tale” til hinanden. Du kan prøve meget hurtige transaktioner ... ved hjælp af udklipsholderen, hvordan du sender e-mails fra Excel Sådan sendes e-mails fra et Excel-regneark ved hjælp af VBA-scripts Sådan sendes e-mails fra et Excel-regneark ved hjælp af VBA-scripts Vores kodeskabelon hjælper dig med at opsætte automatiserede e-mails fra Excel ved hjælp af CDO (Collaboration Data Objects) og VBA-scripts. , og endda hvordan man opretter en internetbrowser med VBA Sådan opretter du din egen basale internetbrowser ved hjælp af VBA Sådan opretter du din egen basale internetbrowser ved hjælp af VBA Når du virkelig holder op med at tænke over det, er en internetbrowser i sin enkleste form ikke virkelig så imponerende en applikation. Jeg mener, ja, Internettet er forbløffende efter nogens standarder. Begrebet at forbinde ... .

Mens mange læsere fandt, at disse artikler var nyttige, hørte jeg i nogle få læsere fra nogle læsere, der var helt nye til programmeringen - de havde aldrig set en kodelinie før - og klagede over, at instruktionerne stadig var for komplicerede til at følge.

Oprettelse af dit eget program med VBA

Så for dem af jer, der virkelig ville elske at kunne skrive din egen VBA-applikation, men aldrig har indtastet en enkelt kodelinje før, vil jeg lede dig igennem at lave dit allerførste computerprogram. Dette program er ikke til programmeringseksperter eller endda moderat dygtige kodere - det er til newbie.

Tro mig ikke? Er du i tvivl om, at du har evnen til at skrive et faktisk program? Jeg er her for at bevise, at du kan skriv dit eget program, når du vil, ved hjælp af VBA. Jeg vil tage det langsomt, og jeg vil gøre mit bedste for at holde det enkelt. Parat?

Oprettelse af rammerne for din applikation

Først skal du vælge et eksisterende Office-produkt, der allerede er installeret på din pc - det kan være Word, Excel, Powerpoint, Access eller ethvert andet. I dette eksempel vil jeg bruge Excel til at oprette min applikation. Det første trin er at få adgang til VBA-værktøjer ved at gå til værktøjslinjen og klikke på “Udsigt”, derefter “Værktøjslinjer” og så “Kontrolværktøjskasse”.

Jeg var på en computer med en lidt ældre version af Excel, så hvis du bruger Excel 2007 eller 2010, finder du de samme kontroller under “Udvikler” menupunkt og derefter klikke på “Indsæt”. Hvad du leder efter er kommandoknappen kontrol.

Klik på den, og tegn en kommandoknap på regnearket. I Word eller andre MS-apps skal du placere knappen et sted praktisk. Det eneste punkt på knappen er at starte din applikation. En anden tilgang ville være at skrive en makro, der automatisk starter dit script, når du åbner Excel-filen - men det er uden for denne artikels rækkevidde. Lad os nu gå med en kommandoknap.

Sørg for, at det lille “Designtilstand” valg er “på” - på billedet ovenfor er det trekant / lineal / blyantikon. Dobbeltklik derefter på kommandoknappen, du oprettede, og VBA Project Editor åbnes.

Dette er udviklingsområdet, hvor du skal oprette din nye applikation. Den første ting, du vil gøre, er at gøre frontskærmen på din app. For at gøre dette skal du højreklikke på det projekt, der allerede er åbent - i mit tilfælde kaldes det “VBAProject” som er standard. Vælg derefter “Indsæt” og “UserForm”.

Din brugerformular indlæses nu i dit projekt under “Forms” mappe med standardnavnet på “UserForm1”.

Dobbeltklik på “Ark1”. Dette er “kode” bag regnearket, hvor du oprettede kommandoknappen. På højre panel skal du se “CommandButton1” valgt og “CommandButton1_Click” kode der allerede.

Dette kaldes a “fungere”, og det er det, der kører, når du klikker på kommandoknappen i regnearksvinduet.

Så hvad vil du have, at din kommandoknap skal gøre, når du klikker på den? Du ønsker, at den skal indlæse den brugerformular, du lige har oprettet. Dette gør du ved at indtaste en enkelt linje, “Indlæs UserForm1”.

Nu hvor du har konfigureret dit program til at starte, i det øjeblik du klikker på kommandoknappen, du oprettede, er det tid til at designe din aktuelle applikation.

Først skal du designe, hvordan programmet ser ud. I mit tilfælde vil jeg skrive et program med tekstfelter og knapper. Programmet tager en masse tekst, og når jeg klikker på en knap, vil det konvertere al den almindelige tekst til en HTML-outputfil, som jeg kan kopiere til min blog som en perfekt formateret artikel.

For at designe formularen skal du højreklikke på “UserForm1”, og vælg “Se objekt”. Du kan se selve formen vises på højre side af skærmen. Du kan klikke på formularen og trække kantlinjerne for at ændre størrelsen på den, du vil.

Ved hjælp af værktøjskassen Kontrol kan du tilføje tekstfelter, etiketter og kommandoknapper til din form. Hvis du virkelig ønsker at blive kreativ, finder du også rammer, markerings- og afkrydsningsfelter, rullelister og meget mere. Dette er de grundlæggende komponenter i de fleste basale applikationer derude.

Hvis værktøjskassen ikke vises, kan du finde den under værktøjslinjens ikoner i den øverste redigeringsmenu - når du holder musepekeren over den, ser du ordet “værktøjskasse” pop op. Bare træk hver komponent, du ønsker, til din form og få den til at se, ud som du vil.

Når du placerer hver enkelt i din form, skal du være opmærksom på “Ejendomme” boks til den vare. Du ønsker at redigere “(Navn)” felt til noget, der giver mening for det, du bruger det til, fordi dette navn er, hvordan dit program henviser til det punkt. Gør det til noget, der er klart og giver mening.

Tilføjelse af cool funktionalitet

Det, du allerede har oprettet, ville være mere end nok til de fleste applikationer. Du kan klikke på knapperne og få tekstfelterne til at interagere med Excel-regnearket eller Word-dokumentet, hvor du oprettede appen. Men hvad de gjorde i dag forsøger at oprette et program, der har en vis anvendelse uden for Office-appen. I mit tilfælde vil jeg oprette et output til en fil på min computer. Du kan læse og skrive til filer ved at tilføje det, der kaldes a “Reference” til dit projekt.

En reference er en slags “tilføjelse” der giver dig mulighed for at skrive ekstra kommandoer i dit program, som du ellers ikke ville være i stand til uden henvisningen. Du kan normalt finde listen over referencer under “Værktøj” på værktøjslinjen og valg “Referencer”. For fil I / O-funktionalitet skal du bare rulle ned og vælge på “Microsoft scripting kørsel”.

I dit program kan du få adgang til alle de komponenter, du oprettede på din form ved at skrive ting som textbox1.text, commandbutton1.caption, for at få adgang til oplysninger inde i dette objekt (som teksten i et tekstfelt), eller til lave om disse oplysninger.

I mit tilfælde vil jeg have “Opret output” for at trække al tekst fra alle felterne, jeg oprettede, og derefter skrive dem til en outputfil, formateret på en speciel måde.

Når jeg klikker på den knap, ser jeg koden for knapklikshændelsen. Koden nedenfor kan se kompliceret ud, hvis du aldrig har gjort VBA før, men det er virkelig ikke dårligt, hvis du ser på det en linje ad gangen.

For at konfigurere fillæsning og skrivning, når du har tilføjet Reference, kan du nemt konfigurere den ved at skrive følgende linjer:

Dim fso Som nyt FileSystemObject Dim fnum Dim MyFile som streng MyFile = "c: \ temp \ OutputArticle.txt" fnum = Freefile ()

Hvad gør dette? Det går op “minfil” som stien til din outputfil, du vil skrive til, og den opretter “fnum” som filidentifikation “nøgle” for koden. Endelig forbinder du disse to ved at skrive “Åbn MyFile For Output som fnum” - og bam, du har din åbne forbindelse til at skrive til filen alt, hvad du ønsker ved at udstede Udskriv #fnum, tekst kommandoer, som vist nedenfor.

Se ovenstående henvisninger til ting som txtHeaderImage og txt1stSection? Disse burde faktisk være txtHeaderImage.text, men med VBA kan du bruge genveje som sådan - at udelade .text i tilfælde af ting som tekstfelter, og dit program vil stadig arbejde.

Når jeg var færdig med at udskrive teksten indeholdt i alle tekstfelterne på hovedprogrammets skærmbillede, var alt hvad jeg skulle gøre for at skifte tekst tilbage fra “Design” tilstand, klik på knapperne, og gå derefter til at tjekke, hvordan outputfilen ser ud.

Sikkert nok, der var min webkode, alle formateret med de krævede HTML-tags, som jeg definerede i mit program, og al teksten fra de tekstfelter, der er placeret, hvor de skulle.

Hvis du tænker over det, kan du gøre hvad som helst med en app som denne. Du kan oprette en simpel inputformular til dataregistrering, som derefter udsender dataene til enten en CSV-fil eller direkte i Excel-regnearket. Du kan skrive et program, der læser oplysninger ud af en tekstfil, formaterer informationen eller udfører beregninger og derefter indlæser disse data i et regneark.

Mulighederne er virkelig kun begrænset af din egen fantasi, når det kommer til VBA. Du behøver ikke at købe en dyre udviklingspakke som Visual Studio - bare åbne ethvert MS Office-program, skift til VBA Editor, og du er en øjeblikkelig programmør.

Forsøgte du at oprette din egen VBA-applikation? Var det så hårdt, som du troede, det ville være? Er du en almindelig VBA-programmør på arbejdet eller hjemme? Del dine tanker og indsigt om din kærlighed til VBA i kommentarfeltet nedenfor.

Billedkredit: Foto af computeren via Shutterstock




Endnu ingen kommentarer

Om moderne teknologi, enkel og overkommelig.
Din guide i en verden af moderne teknologi. Lær hvordan du bruger de teknologier og gadgets, der omgiver os hver dag, og lær, hvordan du finder interessante ting på Internettet.