Come puoi creare la tua semplice app con VBA

Come puoi creare la tua semplice app con VBA / finestre

Se hai seguito alcuni degli articoli di programmazione che ho pubblicato qui su MUO, allora sai che ho una storia d'amore con VBA.

Non è tanto la lingua che mi piace - anche se è davvero intuitiva - è l'accessibilità. Se sei già un utente di Microsoft Office, non hai bisogno di nulla di speciale, ma le cose che puoi realizzare sono piuttosto speciali.

Alcune delle basi che abbiamo già trattato comprendono come utilizzare VBA per passare le informazioni Passare qualsiasi informazione tra le applicazioni VBA utilizzando gli Appunti Passare qualsiasi informazione tra le applicazioni VBA utilizzando gli Appunti Una delle parti più frustranti del lavoro con VBA all'interno di applicazioni specifiche, è che non è sempre facile ottenere due applicazioni “parlare” a vicenda. Puoi provare per transazioni molto veloci ... Leggi di più usando gli Appunti, come inviare e-mail da Excel Come inviare e-mail da un foglio di calcolo Excel Usando script VBA Come inviare e-mail da un foglio di calcolo Excel Usando gli script VBA Il nostro modello di codice ti aiuterà a configurare e-mail automatizzate da Excel utilizzando Collaboration Data Objects (CDO) e script VBA. Ulteriori informazioni e persino come creare un browser Internet con VBA Come creare il proprio browser Internet di base utilizzando VBA Come creare il proprio browser Internet di base utilizzando VBA Quando si smette davvero di pensarci, un browser Internet nella sua forma più semplice non è è davvero un'applicazione così impressionante. Voglio dire, sì, Internet è sorprendente per gli standard di chiunque. Il concetto di collegamento ... Per saperne di più .

Mentre molti lettori hanno trovato utili questi articoli, in alcuni casi ho sentito alcuni lettori che erano nuovi alla programmazione - non avevano mai visto una riga di codice prima - e si sono lamentati del fatto che le istruzioni erano ancora troppo complicate da seguire.

Crea il tuo programma con VBA

Quindi, per quelli di voi che amerebbero davvero essere in grado di scrivere la propria applicazione VBA, ma non hanno mai digitato prima una singola riga di codice, vi illustrerò come fare il vostro primo programma per computer. Questo programma non è per esperti di programmazione o programmatori moderatamente qualificati - è per i principianti.

Non mi credi? Sei dubbioso che tu abbia la capacità di scrivere un programma vero? Bene, sono qui per dimostrarti che tu può scrivi il tuo programma ogni volta che vuoi, usando VBA. Lo prenderò lentamente e farò del mio meglio per mantenerlo semplice. Pronto?

Creazione del framework della tua applicazione

In primo luogo, dovrai scegliere un prodotto Office già installato sul PC, che può essere Word, Excel, Powerpoint, Access o qualsiasi altro. In questo esempio, userò Excel per creare la mia applicazione. Il primo passo è ottenere l'accesso agli strumenti VBA andando alla barra degli strumenti e facendo clic su “vista”, poi “Barre degli strumenti” e poi “Strumenti di controllo”.

Ero su un computer con una versione leggermente più vecchia di Excel, quindi se stai usando Excel 2007 o 2010, troverai gli stessi controlli sotto “Sviluppatore” voce di menu e quindi facendo clic su “Inserire”. Quello che stai cercando è il controllo Pulsante di comando.

Fare clic su di esso e disegnare un pulsante di comando sul foglio di calcolo. In Word o in altre app MS, dovrai posizionare il pulsante in un posto conveniente. L'unico punto del pulsante è avviare la tua applicazione. Un altro approccio potrebbe essere quello di scrivere una macro che avvia automaticamente il tuo script quando apri il file Excel, ma questo va oltre lo scopo di questo articolo. Per ora, andiamo con un pulsante di comando.

Assicurati il ​​piccolo “Modalità di progettazione” la selezione è “sopra” - nella figura sopra è l'icona triangolo / righello / matita. Quindi, fai doppio clic sul pulsante di comando che hai creato e si aprirà l'Editor del progetto VBA.

Questa è l'area di sviluppo in cui creerai la tua nuova applicazione. La prima cosa che vuoi fare è creare lo schermo frontale della tua app. Per fare ciò, fare clic con il tasto destro sul progetto che è già aperto - nel mio caso è chiamato “VBAProject” che è l'impostazione predefinita. Quindi, selezionare “Inserire” e “UserForm”.

Il tuo modulo utente è ora caricato nel tuo progetto sotto il “Le forme” cartella con il nome predefinito di “UserForm1”.

Fare doppio clic su “sheet1”. Questo è il “codice” dietro il foglio di calcolo in cui è stato creato il pulsante di comando. Nel pannello di destra, dovresti vedere il “CommandButton1” selezionato e “CommandButton1_Click” codice già lì.

Questo è chiamato a “funzione”, ed è ciò che viene eseguito quando si fa clic sul pulsante di comando nella finestra del foglio di calcolo.

Quindi, cosa vuoi fare il tuo pulsante di comando quando fai clic su di esso? Vuoi caricare il modulo utente appena creato. Lo fai digitando una singola riga, “Carica UserForm1”.

Ora che hai impostato il tuo programma per il lancio nel momento in cui fai clic sul pulsante di comando che hai creato, è il momento di progettare la tua applicazione reale.

Per prima cosa, dovrai progettare come sarà il programma. Nel mio caso, voglio scrivere un programma con campi di testo e pulsanti. Il programma prenderà un po 'di testo e quando clicco su un pulsante, convertirà tutto il testo normale in un file di output HTML che posso copiare nel mio blog come un articolo perfettamente formattato.

Per progettare il modulo, fare clic con il tasto destro del mouse su “UserForm1”, e selezionare “Visualizza oggetto”. Vedrai che il modulo stesso viene visualizzato sul lato destro dello schermo. Puoi fare clic sul modulo e trascinare le linee del bordo per ridimensionarlo come preferisci.

Utilizzando la casella degli strumenti Controlli, puoi aggiungere campi di testo, etichette e pulsanti di comando al modulo. Se vuoi davvero diventare creativo, troverai anche cornici, selezioni e caselle di controllo, elenchi a discesa e molto altro. Questi sono i componenti di base della maggior parte delle applicazioni di base là fuori.

Se la casella degli strumenti non viene visualizzata, puoi trovarla sotto le icone della barra degli strumenti nel menu principale dell'editor: quando passi il mouse su di essa, vedrai la parola “cassetta degli attrezzi” apparire. Basta trascinare ogni componente che desideri nel tuo modulo e farlo apparire come preferisci.

Quando metti ognuno nella tua forma, presta molta attenzione a “Proprietà” scatola per quell'oggetto. Vuoi modificare il “(Nome)” campo a qualcosa che ha senso per quello che stai usando, perché questo nome è come il tuo programma farà riferimento a quell'elemento. Rendilo qualcosa di chiaro e comprensibile.

Aggiunta di funzionalità fantastiche

Quello che hai già creato sarebbe più che sufficiente per la maggior parte delle applicazioni. È possibile fare clic sui pulsanti e rendere i campi di testo interagenti con il foglio di calcolo di Excel o il documento di Word in cui è stata creata l'app. Tuttavia, ciò che stavamo facendo oggi sta cercando di creare un'applicazione che ha qualche utilizzo al di fuori dell'app di Office. Nel mio caso, voglio creare un output su un file sul mio computer. Puoi leggere e scrivere su file aggiungendo ciò che viene chiamato a “Riferimento” al tuo progetto.

Un riferimento è una sorta di un “Aggiungi su” che ti permette di scrivere comandi extra nel tuo programma che altrimenti non saresti in grado di fare senza il riferimento. Di solito è possibile trovare l'elenco di riferimenti sotto “Utensili” nella barra degli strumenti e selezionando “Riferimenti”. Per la funzionalità I / O di file, scorrere verso il basso e selezionare on “Microsoft Scripting Runtime”.

Nel tuo programma, puoi accedere a tutti i componenti che hai creato nel modulo digitando cose come textbox1.text, commandbutton1.caption, per accedere alle informazioni all'interno di quell'oggetto (come il testo in un campo di testo), o per modificare quell'informazione.

Nel mio caso, voglio il “Crea uscita” pulsante per estrarre tutto il testo da tutti i campi che ho creato e quindi scriverli su un file di output, formattato in un modo speciale.

Cliccando su quel pulsante, vedo il codice per l'evento click del pulsante. Il codice sotto può sembrare complicato se non hai mai fatto VBA prima, ma non è davvero male se lo guardi una riga alla volta.

Per impostare la lettura e la scrittura dei file dopo aver aggiunto il riferimento, puoi facilmente configurarlo digitando le seguenti righe:

Dim fso As New FileSystemObject Dim fnum Dim MyFile as String MyFile = "c: \ temp \ OutputArticle.txt" fnum = Freefile ()

Cosa fa questo? Bene, imposta “Il mio file” come il percorso del file di output a cui vuoi scrivere e crea “fnum” come l'identificazione del file “chiave” per il codice. Alla fine, colleghi questi due insieme digitando “Apri MyFile per output come fnum” - e bam, hai la tua connessione aperta per scrivere sul file tutto ciò che vuoi emettendo Stampa #fnum, testo comandi, come mostrato di seguito.

Vedi i riferimenti sopra a cose come txtHeaderImage e txt1stSection? Quelli dovrebbero in realtà essere txtHeaderImage.text, ma con VBA puoi usare scorciatoie del genere - lasciando fuori .text nel caso di cose come i campi di testo, e il tuo programma funzionerà ancora.

Una volta finito di stampare il testo contenuto in tutti i campi di testo nella schermata principale dell'applicazione, tutto quello che dovevo fare per il testo era tornare indietro “Design” modalità, fare clic sui pulsanti e quindi andare a controllare come appare il file di output.

Abbastanza sicuro, c'era il mio codice web, tutto formattato con i tag HTML richiesti che ho definito nel mio programma, e tutto il testo da quei campi di testo posizionati dove dovrebbero andare.

Se ci pensi, puoi fare qualsiasi cosa con un'app come questa. È possibile creare un semplice modulo di input per l'immissione dei dati, che quindi restituisce i dati in un file CSV o direttamente nel foglio di calcolo Excel di sfondo. È possibile scrivere un'applicazione che legge le informazioni da un file di testo, formatta le informazioni o esegue calcoli e quindi carica tali dati in un foglio di calcolo.

Le possibilità sono davvero limitate solo dalla tua immaginazione quando si tratta di VBA. Non è necessario acquistare un costoso pacchetto di sviluppo come Visual Studio: basta aprire un programma MS Office, passare all'editor VBA e diventare un programmatore istantaneo.

Hai provato a creare la tua applicazione VBA? È stato difficile come pensavi che sarebbe stato? Sei un programmatore VBA regolare al lavoro oa casa? Condividi i tuoi pensieri e approfondimenti sul tuo amore per VBA nella sezione commenti qui sotto.

Immagine di credito: foto del computer Via Shutterstock

Scopri di più su: Sviluppo App, Programmazione, Programmazione Visual Basic.