Come creare una macro o uno script VBA in Excel


Microsoft Excel consente agli utenti di automatizzare funzionalità e comandi utilizzando macro e script di Visual Basic, Applications Edition (VBA). VBA è il linguaggio di programmazione Excel utilizza per creare macro. Eseguirà anche comandi automatizzati basati su condizioni specifiche.

Le macro sono una serie di comandi preregistrati. Si eseguono automaticamente quando viene dato un comando specifico. Se hai attività che esegui ripetutamente in Microsoft Excel, come contabilità, gestione dei progetti o libro paga, l'automazione di questi processi può far risparmiare molto tempo.

Nella scheda Sviluppatorenella Barra multifunzionein Excel , gli utenti possono registrare clic del mouse e sequenze di tasti (macro). Tuttavia, alcune funzioni richiedono uno scripting più approfondito di quello che le macro possono fornire. Questo è dove lo scripting VBA diventa un enorme vantaggio. Consente agli utenti di creare script più complessi.

In questo articolo, spiegheremo quanto segue:

  • Abilitazione di script e macro
  • Come creare una macro in Excel
  • Esempio specifico di una macro
  • Ulteriori informazioni su VBA
  • Crea un pulsante per iniziare con VBA
  • Aggiungi Codice per fornire la funzionalità del pulsante
  • Ha funzionato?
  • Abilitazione di script e macro

    Prima di poter creare macro o script VBA in Excel, è necessario abilitare la scheda Sviluppatorenel menu Nastro. La scheda Sviluppatore non è abilitata per impostazione predefinita. Per abilitarlo:

    • Apri un foglio di lavoro Excel.
    • Fai clic su File>Opzioni>Personalizza Ribbon.
      • Metti un segno di spunta nella casella accanto a Sviluppatore.
        • Fai clic sulla scheda Sviluppatoredal menu Nastro.
          • Successivamente, fai clic su Sicurezza macroe seleziona la casella accanto a Abilita tutte le macro (non consigliato; può essere eseguito codice potenzialmente pericoloso).
          • Quindi fai clic su OK.
          • Il motivo per cui le macro non sono attivate per impostazione predefinita e viene visualizzato un avviso è che sono codici di computer che potrebbero contenere malware.

            In_content_1 all: [300x250] / dfp: [640x360]->

            Assicurati che il documento provenga da una fonte attendibile se stai lavorando a un progetto condiviso in Excel e altri programmi Microsoft.

            Quando hai finito di usare gli script e le macro, disattiva tutto macro per impedire a codice potenzialmente dannoso di infettare altri documenti.

            Crea una macro in Excel

            Tutte le azioni eseguite in Excel durante la registrazione di una macro vengono aggiunte ad essa.

            • Dalla scheda Sviluppatore, fai clic su Registra macro.
              • Inserisci un nome macro, un tasto scorciatoiae una descrizione.I nomi delle macro devono iniziare con una lettera e non possono avere spazi. Il tasto di scelta rapida deve essere una lettera.
              • Decidi dove vuoi memorizzare la macro tra le seguenti opzioni:

                • Cartella macro personale: questo creerà un documento Excel nascosto con macro memorizzate da utilizzare con qualsiasi documento Excel.
                • Nuova cartella di lavoro: creerà un nuovo documento Excel per memorizzare le macro create.
                • Questa cartella di lavoro: verrà applicata solo al documento che si sta attualmente modificando.
                • Al termine, fare clic su OK .

                  • Esegui le azioni che desideri automatizzare. Al termine, fai clic su Interrompi registrazione.
                  • Quando vuoi accedere alla tua macro, usa la scorciatoia da tastiera che hai fornito.
                  • Esempio specifico di macro

                    Cominciamo con un semplice foglio di calcolo per i clienti e quanto devono. Inizieremo creando una macro per formattare il foglio di lavoro.

                    Supponiamo che tu decida che tutti i fogli di calcolo dovrebbero usare un formato diverso come mettere il nome e il cognome in colonne separate.

                    Puoi cambiarlo manualmente. Oppure puoi creare un programma usando una macro per formattarlo automaticamente per te.

                    Registra la macro

                    • Fai clic su Registra macro. Chiamiamolo Format_Customer_Datae facciamo clic su OK.
                    • Per ottenere la formattazione desiderata, cambieremo il nome della prima colonna in Nome.
                    • Quindi inserisci una colonna accanto ad A e chiamala Cognome.
                    • Evidenzia tutti i nomi nella prima colonna (che include ancora il nome e il cognome) e fai clic su Datidalla barra multifunzione.
                    • Fai clic su Testo in colonne.
                      • Spuntare Delimitato>Avanti>Separato da spazio>Avanti>Fine. Vedi lo screenshot qui sotto e come il nome e il cognome sono stati separati dal processo sopra.
                        • Per formattare il campo Saldo dovuto, evidenziare gli importi. Fai clic su Home>Formattazione condizionale>Evidenzia regole cella>Maggiore di>0.
                        • Questo metterà in evidenza le celle che hanno un equilibrio dovuto. Abbiamo aggiunto alcuni clienti senza saldo per illustrare ulteriormente la formattazione.

                          • Torna a Sviluppatoree fai clic su Interrompi registrazione.
                          • Applica la macro

                            Let's iniziare con il foglio di calcolo originale prima di registrare la macro per formattarla correttamente. Fai clic su Macro, seleziona e Eseguila macro che hai appena creato.

                            Quando esegui una macro, tutta la formattazione viene eseguita per te. Questa macro che abbiamo appena creato è memorizzata in Visual Basic Editor.

                            Gli utenti possono eseguire macro in diversi modi. Leggi Esegui una macro per saperne di più.

                            Ulteriori informazioni su VBA

                            Per informazioni su VBA, fai clic su Macroda Sviluppatorescheda. Trova quello che hai creato e fai clic su Modifica.

                            Il codice che vedi nella casella sopra è quello che è stato creato quando hai registrato la tua macro.

                            È anche ciò che eseguirai quando desideri formattare altri fogli di calcolo dei pagamenti dei clienti allo stesso modo.

                            Crea un pulsante per iniziare con VBA

                            Utilizzando lo stesso foglio di calcolo sopra con i clienti e quanto devono, creiamo un convertitore di valuta.

                            • Per inserire un elemento pulsante, vai al Sviluppatore .
                            • Seleziona Pulsante di comando ActiveXdal menu a discesa accanto a Inseriscinella sezione Controlli.
                              • Trascina il pulsante in qualsiasi punto del foglio di calcolo in modo da poterlo accedere facilmente e modificarlo in seguito, se lo desideri.
                                • Per allegare il codice, fai clic con il pulsante destro del mouse sul pulsante e seleziona Proprietà. Manterremo il Nomecome CommandButtone la Didascaliain Converti(questo è il testo del pulsante).
                                • Aggiungi codice per dare al pulsante funzionalità

                                  La codifica VBA non avviene nell'interfaccia di Excel. È fatto in un ambiente separato.

                                  • Vai alla scheda Sviluppatoree assicurati che Modalità progettazionesia attiva.
                                    • Per accedere al codice del pulsante che abbiamo appena creato, fai clic destro su di esso e seleziona Visualizza codice.
                                      • Guardando il codice nello screenshot qui sotto, nota l'inizio (Sottotitoli privati ​​) e la fine (Sottotitoli finali) del codice sono già lì.
                                        • Il codice seguente guiderà la procedura di conversione della valuta.

                                        ActiveCell.Value = (ActiveCell * 1.28)

                                        Il nostro scopo in questa sezione è convertire la valuta nel nostro foglio di calcolo. Lo script sopra riportato riflette il tasso di cambio da GBP a USD. Il nuovo valore di una cella sarà quello che è attualmente moltiplicato per 1,28.

                                        Lo screenshot seguente mostra come appare il codice nella finestra VBA dopo averlo inserito.

                                        • Vai a Filein la navigazione superiore e fai clic su Chiudi e ritorna a Microsoft Excelper tornare all'interfaccia principale di Excel.
                                        • Ha funzionato?

                                          Prima di poter testare il tuo codice , devi prima disabilitare la modalità di progettazione (fai clic su di essa) per evitare ulteriori modifiche e fornire la funzionalità del pulsante.

                                          • Digita qualsiasi numero nel foglio di lavoro e quindi fai clic su Convertipulsante. Se il valore del tuo numero aumenta di circa un quarto, ha funzionato.
                                          • Per questo esempio, ho inserito il numero 4 in una cella. Dopo aver fatto clic su Converti, il numero è cambiato in 5.12. Poiché 4 volte 1.28 è 5.12, il codice è stato eseguito correttamente.

                                            Ora che hai capito come creare una macro o uno script in Excel, puoi usarli per automatizzare una moltitudine di azioni in Excel.

                                            Office 365 - Excel - Tutorial 62 - Creare Macro in VBA e pulsante

                                            Post correlati:


                                            13.12.2019