Programmazione VBA Excel: cosa sono i codici VBA e come usarli

La maggior parte degli utenti Windows conosce la suite Office di Microsoft e le sue numerose e potenti app, e molti di loro utilizzano queste app nelle loro attività quotidiane. Tuttavia, solo una manciata di questi utenti sono esperti di Excel. Tuttavia, Excel è pieno di funzionalità come macro e codici VBA, che possono rendere le tue attività quotidiane molto più semplici.

Oggi discuteremo di queste funzionalità avanzate e ti insegneremo a semplificare il tuo flusso di lavoro. Ci immergeremo nei codici VBA e nelle macro di Excel e ti mostreremo come utilizzarli fornendo esempi. Ci sarà anche una sezione sulla prevenzione della perdita di dati, poiché i codici VBA possono eliminare i dati di Excel se utilizzati in modo improprio.

In questo articolo
    1. Inserisci più colonne
    2. Inserisci più righe
    3. Adatta colonne
    4. Adatta righe
    5. Separa celle
    6. Evidenzia valori maggiori di
    7. Evidenzia valori inferiori a
    8. Evidenzia i numeri negativi
    9. Evidenzia le celle con errori di ortografia
    10. Scopri i fogli di lavoro
    11. Elimina tutto tranne i fogli di lavoro attivi
    12. Elimina fogli bianchi
    13. Salva i fogli di lavoro come PDF
    14. Chiudi le cartelle di lavoro
    15. Aggiorna le tabelle pivot
    16. Aggiungi grafici come immagini
    17. Inserisci immagini
    18. Rimuovi caratteri dalle stringhe
    19. Testo inverso
    20. Sostituisci le celle vuote con zeri

Cos'è un codice VBA?

Prima di esaminare gli esempi di codice VBA, dobbiamo prima discutere di VBA e spiegare di cosa si tratta. VBA, o Visual Basic Applications, è un linguaggio di programmazione utilizzato dalle app di Microsoft Office come Excel per creare, salvare e distribuire macro, note anche come script di attività automatizzate.

D'altra parte, le macro sono script di programmazione o un insieme di comandi che possono automatizzare il flusso di lavoro di Excel. Questi script consentono agli utenti di completare azioni complesse e dispendiose in termini di tempo con un collegamento preregistrato, consentendo loro di risparmiare tempo durante la gestione dei dati, la rotazione delle tabelle e il riordino dei fogli di calcolo.

Come utilizzare i codici macro in Excel

Ora che conosciamo le nozioni di base sulle macro di Excel, inizieremo immediatamente a utilizzare questi codici e ti mostreremo come crearne uno attraverso un esempio di macro in Excel. Ecco cosa dovrai fare:

  1. Avvia Microsoft Excel e vai su File > Opzioni > Personalizza barra multifunzione.
  2. Nelle schede principali, seleziona la casella accanto a Sviluppatore per abilitare la funzionalità nascosta per impostazione predefinita.
    aggiungi la scheda sviluppatore in Excel
  3. Salva le tue impostazioni cliccando su OK, quindi vai alla scheda Sviluppatore.
    vai alla scheda sviluppatore aggiunta
  4. Seleziona l'opzione Registra macro.
    iniziare a registrare una macro in Excel
  5. Assegna un nome alla macro e descrivi brevemente cosa fa in modo da poterla identificare in seguito. Puoi anche aggiungere scorciatoie per richiamare la macro.
  6. Dopo aver inserito i dettagli della macro, puoi toccare OK ed eseguire le azioni che desideri aggiungere alla macro. L'app Excel registrerà e salverà queste azioni all'interno della macro creata.
  7. Clicca su Interrompi registrazione una volta completate le azioni e la macro verrà eseguita.
    interrompere la registrazione e completare la macro
  8. Quando è necessario utilizzare nuovamente questi passaggi, è possibile premere i pulsanti della tastiera e richiamare la macro tramite la scorciatoia impostata. In alternativa, vai su Sviluppatore > Macro > Visualizza macro e premi Esegui sulla macro desiderata.

Le tue azioni preregistrate verranno eseguite attraverso la macro e potrai controllare i risultati. Ricorda che il controllo è un passaggio estremamente importante, soprattutto per i principianti delle macro, e ti consente di assicurarti che le tue nuove attività automatizzate funzionino bene. Dovrai modificare le tue macro se le tue azioni non funzionano come volevi.

20 esempi di codice VBA Excel di base per principianti

Come accennato in precedenza, VBA sta per Visual Basic Applications, un linguaggio che Excel può comprendere. Qualsiasi macro creata con i passaggi sopra menzionati registrerà le azioni del foglio di calcolo, le trasformerà in codice VBA leggibile da Excel e le salverà come qualcosa che Excel può riconoscere e comprendere.

Detto questo, vengono forniti anche alcuni esempi di base di codice VBA e macro, quindi vediamo come appaiono le macro utili e per cosa puoi utilizzarle:

  1. Inserisci più colonne
  2. Inserisci più righe
  3. Adatta colonne
  4. Adatta righe
  5. Separa celle
  6. Evidenzia valori maggiori di
  7. Evidenzia valori inferiori a
  8. Evidenzia i numeri negativi
  9. Evidenzia le celle con errori di ortografia
  10. Scopri i fogli di lavoro
  11. Elimina tutto tranne i fogli di lavoro attivi
  12. Elimina fogli bianchi
  13. Salva i fogli di lavoro come PDF
  14. Chiudi le cartelle di lavoro
  15. Aggiorna le tabelle pivot
  16. Aggiungi grafici come immagini
  17. Inserisci immagini
  18. Rimuovi caratteri dalle stringhe
  19. Testo inverso
  20. Sostituisci le celle vuote con zeri

Queste macro fanno ciò che suggerisce il nome e puoi copiarle e provarle nei tuoi file XLS. Di seguito troverai i codici VBA, ma ricorda di testarli in fogli di calcolo non importanti o di creare prima copie dei tuoi file vitali.

Inserisci più colonne

Sub InsertMultipleColumns()
Dim i As Integer
Dim j As Integer
ActiveCell.EntireColumn.Select
On Error GoTo Last
i = InputBox("Enter the number of columns to insert", "Insert Columns"
For j = 1 To i
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromRightorAbove
Next j
Last: Exit Sub
End Sub

Inserisci più righe

Sub InsertMultipleRows()
Dim i As Integer
Dim j As Integer
ActiveCell.EntireRow.Select
On Error GoTo Last
i = InputBox("Enter the number of rows to insert", "Insert Rows")
For j = 1 To i
Selection.Insert Shift:=xlToDown, CopyOrigin:=xlFormatFromRightorAbove
Next j
Last: Exit Sub
End Sub

Adatta colonne

Sub AutoFitColumns()
Cells.Select
Cells.EntireColumn.AutoFit
End Sub

Adatta righe

Sub AutoFitRows()
Cells.Select
Cells.EntireRow.AutoFit
End Sub

Separa celle

Sub UnmergeCells()
Selection.UnMerge
End Sub

Evidenzia valori maggiori di

Sub HighlightGreaterThanValues()
Dim i As Integer
i = InputBox("Enter Greater Than Value", "Enter Value")
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, _
Operator:=xlGreater, Formula1:=i
Selection.FormatConditions(Selection.FormatConditions.Count).S
tFirstPriority
With Selection.FormatConditions(1)
.Font.Color = RGB(0, 0, 0)
.Interior.Color = RGB(31, 218, 154)
End With
End Sub

Evidenzia valori inferiori a

Sub HighlightLowerThanValues()
Dim i As Integer
i = InputBox("Enter Lower Than Value", "Enter Value")
Selection.FormatConditions.Delete
Selection.FormatConditions.Add _
Type:=xlCellValue, _
Operator:=xlLower, _
Formula1:=i
Selection.FormatConditions(Selection.FormatConditions.Count).S
tFirstPriority
With Selection.FormatConditions(1)
.Font.Color = RGB(0, 0, 0)
.Interior.Color = RGB(217, 83, 79)
End With
End Sub

Evidenzia i numeri negativi

Sub highlightNegativeNumbers()
Dim Rng As Range
For Each Rng In Selection
If WorksheetFunction.IsNumber(Rng) Then
If Rng.Value < 0 Then
Rng.Font.Color= -16776961
End If
End If
Next
End Sub

Evidenzia le celle con errori di ortografia

Sub HighlightMisspelledCells()
Dim rng As Range
For Each rng In ActiveSheet.UsedRange
If Not Application.CheckSpelling(word:=rng.Text) Then
rng.Style = "Bad"
End If
Next rng
End Sub

Scopri i fogli di lavoro

Sub UnhideAllWorksheet()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
ws.Visible = xlSheetVisible
Next ws
End Sub

Elimina tutto tranne i fogli di lavoro attivi

Sub DeleteWorksheets()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
If ws.name <> ThisWorkbook.ActiveSheet.name Then
Application.DisplayAlerts = False
ws.Delete
Application.DisplayAlerts = True
End If
Next ws
End Sub

Elimina fogli bianchi

Sub deleteBlankWorksheets()
Dim Ws As Worksheet
On Error Resume Next
Application.ScreenUpdating= False
Application.DisplayAlerts= False
For Each Ws In Application.Worksheets
If Application.WorksheetFunction.CountA(Ws.UsedRange) = 0 Then
Ws.Delete
End If
Next
Application.ScreenUpdating= True
Application.DisplayAlerts= True
End Sub

Salva i fogli di lavoro come PDF

Sub SaveWorkshetAsPDF()
Dimws As Worksheet
For Each ws In Worksheets
ws.ExportAsFixedFormat _
xlTypePDF, _
"ENTER-FOLDER-NAME-HERE" &; _
ws.Name & ".pdf"
Next ws
End Sub

Chiudi le cartelle di lavoro

Sub CloseAllWorkbooks()
Dim wbs As Workbook
For Each wbs In Workbooks
wbs.Close SaveChanges:=True
Next wb
End Sub

Aggiorna le tabelle pivot

Sub vba_referesh_all_pivots()
Dim pt As PivotTable
For Each pt In ActiveWorkbook.PivotTables
pt.RefreshTable
Next pt
End Sub

Aggiungi grafici come immagini

Sub ConvertChartToPicture()
ActiveChart.ChartArea.Copy
ActiveSheet.Range("A1").Select
ActiveSheet.Pictures.Paste.Select
End Sub

Inserisci immagini

Sub Image nameedPicture()
Selection.Copy
ActiveSheet.Pictures.Paste
End Sub

Rimuovi caratteri dalle stringhe

Public Function removeFirstC(rng As String, cnt As Long)
removeFirstC = Right(rng, Len(rng) - cnt)
End Function

Testo inverso

Public Function rvrse(ByVal cell As Range) As String
rvrse = VBA.strReverse(cell.Value)
End Function

Sostituisci le celle vuote con zeri

Sub replaceBlankWithZero()
Dim rng As Range
Selection.Value = Selection.Value
For Each rng In Selection
If rng = ““ Or rng = “ “ Then
rng.Value = "0"
Else
End If
Next rng
End Sub

🚀[Bonus] Come garantire la sicurezza dei dati durante l'utilizzo dei codici VBA

Come avrai notato, alcuni esempi di codice VBA sopra includono attività di eliminazione dei dati e molti esperti di Excel utilizzano tali macro quotidianamente. Tuttavia, vale la pena notare che l'utilizzo errato di questi può eliminare i tuoi preziosi fogli di calcolo Excel e dovrai fare attenzione a tali macro.

Non c'è nulla da temere, anche se hai già utilizzato i codici VBA per la cancellazione dei dati, poiché esistono soluzioni in grado di ripristinare i tuoi file Excel. Le app di recupero dati fanno miracoli in queste situazioni e uno strumento come Wondershare Recoverit è un esempio perfetto.

Download gratuito
Download gratuito

Che tu abbia a che fare con fogli di calcolo Excel persi, modifiche recenti non salvate, dati cancellati o codici VBA di cancellazione dati utilizzati accidentalmente, questa app può aiutarti. Il suo algoritmo di ricerca e ripristino efficiente e avanzato può ripristinare rapidamente i file persi, indipendentemente dalle situazioni di perdita di dati, poiché l'app ne supporta oltre 500. Usarlo è un gioco da ragazzi, ed ecco come puoi farlo:

  1. Apri Wondershare Recoverit e scegli l'opzione Dischi rigidi e posizioni.
    Interfaccia utente di ripristino di wondershare
  2. Seleziona l'unità disco in cui archivi i file XLS: l'app la scansionerà immediatamente alla ricerca di dati persi.
    cerca fogli di calcolo Excel cancellati
  3. Aggiungi filtri di file e parole chiave per cercare file Excel specifici.
    modificare i filtri dei file e aggiungere parole chiave
  4. Wondershare Recover ti consentirà di visualizzare in anteprima i file Excel quando li trova. Se sei soddisfatto dell'anteprima, puoi mettere in pausa o interrompere la scansione e toccare Ripristina per salvare i dati rilevati sul tuo PC.
    visualizzare in anteprima e recuperare file Excel

Con Wondershare Recoverit nel tuo arsenale, puoi utilizzare ed esercitarti in sicurezza con codici VBA avanzati e portare il tuo flusso di lavoro Excel a un altro livello senza preoccuparti di sbagliare. Può anche gestire file come musica, foto e video, supportando oltre 1.000 tipi di file recuperabili.

Puoi utilizzare l'app su dischi interni, archivi esterni, NAS, USB e altri, poiché Wondershare Recoverit supporta oltre 2.000 dispositivi di archiviazione. È perfetto per la perdita di dati causata da malware, arresti anomali del sistema, trasferimenti di file interrotti, guasti alle unità disco, ecc., rendendolo uno strumento ideale per garantire la sicurezza dei dati.

Conclusione

Oltre alle funzionalità di calcolo, calcolo e foglio di calcolo, Microsoft Excel dispone di varie funzionalità avanzate, come le macro, che possono semplificare il flusso di lavoro e automatizzare attività noiose per farti risparmiare tempo prezioso. Queste macro trasformano le tue azioni preregistrate in codice VBA, un linguaggio di programmazione che Excel può comprendere e utilizzare.

Dall'aggiunta di più righe o colonne all'adattamento automatico delle voci di dati all'evidenziazione di valori, errori e caratteri alla formattazione dei fogli di calcolo, i codici VBA possono portare le tue competenze di Excel a un livello successivo con un po' di pratica. E se le cose vanno male e commetti un errore con i codici VBA di eliminazione dei dati, le app di recupero come Wondershare Recoverit possono recuperare senza sforzo i tuoi file XLS vitali e i dati Excel.

Download gratuito
Download gratuito

FAQ

  • Il codice VBA è difficile?
    Per un principiante, i codici VBA possono sembrare spaventosi e complessi, e questo è in qualche modo vero, soprattutto per chi non ha conoscenze di programmazione. Tuttavia, dilettarsi con le macro esistenti nei forum di Excel può insegnarti rapidamente le basi della codifica VBA. Non avrai bisogno di diventare un programmatore per creare codice VBA, ma sfruttare la potenza di queste funzionalità avanzate di Excel richiederà senza dubbio indagini, apprendimento e pratica.
  • Come trovo i codici VBA?

    Iniziare con i codici VBA può sembrare impegnativo, soprattutto quando sei nuovo alle macro e al VBA. Tuttavia, alcune ricerche online possono portarti a innumerevoli forum e thread di Excel in cui gli esperti hanno già fornito innumerevoli esempi di codice VBA funzionale e prezioso.

    Puoi copiare questi codici VBA esatti e provarli nei tuoi fogli di calcolo Excel oppure approfondire l'aspetto della codifica e scoprire cosa fa ogni riga di codice, permettendoti di modificare queste macro e personalizzarle in base alle tue esigenze di Excel.

  • Come posso modificare i miei codici o macro VBA?

    Modificare le macro esistenti è facile come crearne una nuova. Ecco come puoi farlo:

    1.Vai alla scheda Sviluppatore e seleziona Macro.

    2.Scegli la macro che desideri modificare e premi Modifica.

    3.Cambia il codice VBA nell'editor di Visual Basic e salva la macro.

    Puoi quindi testare nuovamente le tue macro e perfezionarle tutte le volte che è necessario.

Nicola Massimo
Nicola Massimo 26/04/2024
Condividi: