Everybody in this country should learn how to program a computer… because it teaches you how to think." -Steve Jobs
Vorrei estendere le sagge parole di Steve Jobs e dire che tutti nel mondo dovrebbero imparare a programmare un computer. Potrebbe non essere necessario finire per lavorare come programmatore o scrivere programmi, ma ti insegnerà a pensare.
In questo tutorial VBA, tratteremo i seguenti argomenti.
- Che cos'è Visual Basic for Applications (VBA)?
- Perché VBA?
- Applicazioni personali e aziendali di VBA in Excel
- Introduzione a Visual Basic for Applications
- Esempio passo passo della creazione di un semplice calcolatore EMI in Excel
- Esempio di VBA Excel
Che cos'è Visual Basic for Applications (VBA)?
Visual Basic for Applications (VBA) è un linguaggio di programmazione basato su eventi implementato da Microsoft per sviluppare applicazioni Office. VBA aiuta a sviluppare processi di automazione, API di Windows e funzioni definite dall'utente. Consente inoltre di manipolare le funzionalità dell'interfaccia utente delle applicazioni host.
Prima di entrare in ulteriori dettagli, diamo un'occhiata a cos'è la programmazione per computer nel linguaggio di un laico. Supponi di avere una domestica. Se vuoi che la domestica pulisca la casa e faccia il bucato. Le dici cosa fare usando diciamo inglese e lei fa il lavoro per te. Mentre lavori con un computer, vorrai eseguire determinate attività. Proprio come hai detto alla cameriera di fare le faccende domestiche, puoi anche dire al computer di fare i compiti per te.
Il processo per dire al computer cosa vuoi che faccia per te è ciò che è noto come programmazione del computer. Proprio come hai usato l'inglese per dire alla cameriera cosa fare, puoi anche usare dichiarazioni simili all'inglese per dire al computer cosa fare. Le dichiarazioni di tipo inglese rientrano nella categoria delle lingue di alto livello. VBA è un linguaggio di alto livello che puoi usare per piegare Excel alla tua volontà onnipotente.
VBA è in realtà un sottoinsieme di Visual Basic 6.0 BASIC sta per B eginners A ll-Purpose S ymbolic I nstruction C ode.
Perché VBA?
VBA consente di utilizzare istruzioni simili all'inglese per scrivere istruzioni per la creazione di varie applicazioni. VBA è facile da imparare e ha un'interfaccia utente facile da usare in cui devi solo trascinare e rilasciare i controlli dell'interfaccia. Consente inoltre di migliorare la funzionalità di Excel facendolo comportare nel modo desiderato.
Applicazioni personali e aziendali di VBA in Excel
Per uso personale, puoi usarlo per semplici macro che automatizzeranno la maggior parte delle tue attività di routine. Leggi l'articolo sulle macro per ulteriori informazioni su come ottenere questo risultato.
Per uso aziendale, puoi creare potenti programmi completi basati su Excel e VBA. Il vantaggio di questo approccio è che puoi sfruttare le potenti funzionalità di Excel nei tuoi programmi personalizzati.
Introduzione a Visual Basic for Applications
Prima di poter scrivere qualsiasi codice, dobbiamo prima conoscere le basi. Le seguenti nozioni di base ti aiuteranno a iniziare.
- Variabile : al liceo abbiamo imparato l'algebra. Trova (x + 2y) dove x = 1 e y = 3. In questa espressione, x e y sono variabili. Possono essere assegnati qualsiasi numero, cioè 1 e 3 rispettivamente come in questo esempio. Possono anche essere modificati rispettivamente in 4 e 2. Le variabili in breve sono posizioni di memoria. Mentre lavori con VBA Excel, ti verrà richiesto di dichiarare anche le variabili proprio come nelle classi di algebra
- Regole per la creazione di variabili
- Non usare parole riservate: se lavori come studente, non puoi usare il docente del titolo o il preside. Questi titoli sono riservati ai docenti e all'autorità scolastica. Le parole riservate sono quelle parole che hanno un significato speciale in Excel VBA e, in quanto tali, non è possibile utilizzarle come nomi di variabili.
- I nomi delle variabili non possono contenere spazi: non è possibile definire una variabile denominata primo numero. Puoi usare firstNumber o first_number.
- Usa nomi descrittivi: potresti essere tentato di nominare una variabile con te stesso, ma evita questo. Usa nomi descrittivi, ad esempio quantità, prezzo, totale parziale, ecc. Questo renderà il tuo codice VBA Excel facile da leggere
- Operatori aritmetici: si applicano le regole delle parentesi di divisione, moltiplicazione, addizione e sottrazione (BODMAS), quindi ricordarsi di applicarle quando si lavora con espressioni che utilizzano più operatori aritmetici diversi. Proprio come in Excel, puoi usare
- + per l'aggiunta
- - per sottrazione
- * per moltiplicazione
- / per divisione.
- Operatori logici: il concetto di operatori logici trattato nelle esercitazioni precedenti si applica anche quando si lavora con VBA. Questi includono
- Se dichiarazioni
- O
- NON
- E
- VERO
- FALSO
Come abilitare la scheda Sviluppatore
Di seguito è riportato il processo passo passo su come abilitare la scheda sviluppatore in Excel:
- Crea una nuova cartella di lavoro
- Fare clic sul pulsante di avvio della barra multifunzione
- Seleziona le opzioni
- Fare clic su Personalizza barra multifunzione
- Seleziona la casella di controllo dello sviluppatore come mostrato nell'immagine sottostante
- Fare clic su OK
Ora sarai in grado di vedere la scheda SVILUPPATORE nella barra multifunzione
VBA Hello World!
Ora mostreremo come programmare nel linguaggio di programmazione VBA. Tutti i programmi in VBA devono iniziare con "Sub" e terminare con "End sub". Qui il nome è il nome che vuoi assegnare al tuo programma. Mentre sub sta per una subroutine che impareremo nella parte successiva del tutorial.
Sub name()… End Sub
Creeremo un programma VBA di base che visualizza una casella di input per chiedere il nome dell'utente, quindi visualizzare un messaggio di saluto
Questo tutorial presuppone che tu abbia completato il tutorial su Macro in Excel e abbia abilitato la scheda SVILUPPATORE in Excel.
- Crea un nuovo libro di lavoro
- Salvalo in un formato di foglio di lavoro abilitato per macro Excel * .xlsm
- Fare clic sulla scheda SVILUPPATORE
- Fare clic sulla casella a discesa INSERISCI sotto la barra multifunzione dei controlli
- Seleziona un pulsante di comando come mostrato nell'immagine sottostante
Disegna il pulsante di comando in un punto qualsiasi del foglio di lavoro
Otterrai la seguente finestra di dialogo
- Rinomina il nome della macro in btnHelloWorld_Click
- Fare clic sul nuovo pulsante
- Otterrai la seguente finestra del codice VBA
Immettere i seguenti codici di istruzione
Dim name As Stringname = InputBox("Enter your name")MsgBox "Hello " + name
QUI,
- "Dim name as String" crea una variabile chiamata name. La variabile accetterà caratteri di testo, numerici e altri perché l'abbiamo definita come una stringa
- "name = InputBox (" Enter your name ")" chiama la funzione integrata InputBox che visualizza una finestra con la didascalia Enter your name. Il nome immesso viene quindi memorizzato nella variabile del nome.
- " MsgBox" Hello "+ name" chiama la funzione incorporata MsgBox che visualizza Hello e il nome immesso.
La finestra del codice completo dovrebbe ora apparire come segue
- Chiudi la finestra del codice
- Fare clic con il tasto destro sul pulsante 1 e selezionare Modifica testo
- Entra Dì ciao
- Fare clic su Say Hello
- Otterrai la seguente casella di input
- Inserisci il tuo nome, ovvero Giordania
- Riceverai la seguente finestra di messaggio
Congratulazioni, hai appena creato il tuo primo programma VBA in Excel
Esempio passo passo della creazione di un semplice calcolatore EMI in Excel
In questo esercizio tutorial creeremo un semplice programma che calcola l'EMI. EMI è l'acronimo di Equated Monthly Rate. È l'importo mensile che rimborsi quando ottieni un prestito. L'immagine seguente mostra la formula per il calcolo dell'EMI.
La formula sopra è complessa e può essere scritta in Excel. La buona notizia è che Excel ha già risolto il problema di cui sopra. È possibile utilizzare la funzione PMT per calcolare quanto sopra.
La funzione PMT funziona come segue
=PMT(rate,nper,pv)
QUI,
- "rate" questa è la tariffa mensile. È il tasso di interesse diviso per il numero di pagamenti all'anno
- "nper" è il numero totale di pagamenti. È la durata del prestito moltiplicata per il numero di pagamenti all'anno
- valore attuale "pv" . È l'importo effettivo del prestito
Crea la GUI utilizzando le celle Excel come mostrato di seguito
Aggiungi un pulsante di comando tra le righe 7 e 8
Assegnare al pulsante il nome della macro btnCalculateEMI_Click
Fare clic sul pulsante Modifica
Immettere il codice seguente
Dim monthly_rate As Single, loan_amount As Double, number_of_periods As Single, emi As Doublemonthly_rate = Range("B6").Value / Range("B5").Valueloan_amount = Range("B3").Valuenumber_of_periods = Range("B4").Value * Range("B5").Valueemi = WorksheetFunction.Pmt(monthly_rate, number_of_periods, -loan_amount)Range("B9").Value = emi
QUI,
- "Dim mensile_rate As Single, ..." Dim è la parola chiave utilizzata per definire le variabili in VBA, mensile_rate è il nome della variabile, Single è il tipo di dati che significa che la variabile accetterà il numero.
- "tasso_messuale = Intervallo (" B6 "). Valore / Intervallo (" B5 "). Valore" Intervallo è la funzione utilizzata per accedere alle celle Excel da VBA, Intervallo ("B6"). Il valore fa riferimento al valore in B6
- "WorksheetFunction.Pmt (…)" WorksheetFunction è la funzione utilizzata per accedere a tutte le funzioni in Excel
L'immagine seguente mostra il codice sorgente completo
- Fare clic su Salva e chiudere la finestra del codice
- Prova il tuo programma come mostrato nell'immagine animata qui sotto
Esempio di VBA Excel
Passaggio 1) Nella scheda Sviluppatore dal menu principale, fare clic sull'icona "Visual Basic" per aprire l'editor VBA.
Passaggio 2) Si aprirà un editor VBA, da cui è possibile selezionare il foglio Excel in cui si desidera eseguire il codice. Per aprire l'editor VBA fare doppio clic sul foglio di lavoro.
Si aprirà un editor VBA sul lato destro della cartella. Apparirà come uno spazio bianco.
Passaggio 3) In questo passaggio vedremo il nostro primo programma VBA. Per leggere e visualizzare il nostro programma abbiamo bisogno di un oggetto. In VBA quell'oggetto o mezzo in un MsgBox.
- Per prima cosa scrivi "Sub" e poi il tuo "nome del programma" (Guru99)
- Scrivi tutto ciò che desideri visualizzare nel MsgBox (l'apprendimento di guru99 è divertente)
- Termina il programma con End Sub
Passaggio 4) Nel passaggio successivo è necessario eseguire questo codice facendo clic sul pulsante verde Esegui nella parte superiore del menu dell'editor.
Passaggio 5) Quando si esegue il codice, verrà visualizzata un'altra finestra. Qui è necessario selezionare il foglio in cui si desidera visualizzare il programma e fare clic sul pulsante "Esegui"
Passaggio 6) Quando si fa clic sul pulsante Esegui, il programma verrà eseguito. Visualizzerà il messaggio in MsgBox.
Scarica il codice Excel sopra
Sommario
VBA Full Form: Visual Basic for Application. È un sottocomponente del linguaggio di programmazione Visual Basic che puoi utilizzare per creare applicazioni in Excel. Con VBA, puoi comunque sfruttare le potenti funzionalità di Excel e utilizzarle in VBA.