Excel VBA per aggiungere un foglio se non esiste (con passaggi rapidi)

  • Condividi Questo
Hugh West

Il VBA di Excel è uno strumento potente e pratico che consente di eseguire rapidamente attività in quantità massicce. Attraverso il VBA è possibile applicare diverse condizioni e ottenere risultati diversi sulla base delle singole condizioni. Ora, a volte, si potrebbe voler verificare se un determinato foglio esiste nella cartella di lavoro e, in caso contrario, potrebbe essere necessario creare quel foglio. In questo articolo, vi mostrerò tutti i passaggi per aggiungere un foglio se non esiste, utilizzando Excel VBA.

Excel VBA: Aggiungere un foglio se non esiste (una vista rapida)

 Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String addSheetName = Application.InputBox("Quale foglio stai cercando?", _ "Aggiungi foglio se non esiste", "Foglio5", , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "Il foglio ''" & addSheetName & _ "'ha''".è stato aggiunto perché non esisteva", _ vbInformation, "Add Sheet If Not Exist" Else MsgBox "Il foglio ''" & addSheetName & _ "'esiste già in questa cartella di lavoro.", _ vbInformation, "Add Sheet If Not Exist" End If End Sub 

Inserire in un nuovo modulo per applicare il codice precedente.

Scarica il quaderno di esercizi

Potete scaricare gratuitamente il nostro quaderno di esercizi da qui!

Aggiungi foglio se non esiste.xlsm

Passi per applicare il codice VBA per aggiungere un foglio in Excel se non esiste

Supponiamo di avere una cartella di lavoro contenente 4 fogli di lavoro denominati gennaio, febbraio, marzo e aprile. Ogni foglio contiene il resoconto delle vendite del mese successivo. Ora, è necessario trovare alcuni fogli nella cartella di lavoro e aggiungere il foglio se non esiste. Per farlo, potete seguire le indicazioni passo passo riportate di seguito.

📌 Passo 1: Inserire un nuovo modulo

Innanzitutto, è necessario inserire un modulo per scrivere codice VBA.

  • Per fare questo, all'inizio, andare alla voce Sviluppatore scheda Visual Basic strumento.

  • Di conseguenza, il Microsoft Visual Basic per le applicazioni apparirà la finestra di dialogo.
  • Successivamente, andare alla voce Inserire scheda Modulo strumento.

Pertanto, un nuovo modulo chiamato Modulo1 è stato creato.

Per saperne di più: Come aggiungere un foglio con un nome in Excel VBA (6 modi semplici)

Letture simili

  • Creare una nuova cartella di lavoro e salvare usando VBA in Excel
  • Excel VBA: creare una nuova cartella di lavoro e assegnarle un nome (6 esempi)
  • Come creare un nuovo foglio da un modello utilizzando una macro in Excel

📌 Passo 2: scrivere e salvare il codice VBA richiesto

Ora è necessario scrivere il codice all'interno del modulo e salvarlo.

  • A tal fine, fare clic sul pulsante Modulo1 e scrivere il seguente codice nella finestra del codice.
 Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String addSheetName = Application.InputBox("Quale foglio stai cercando?", _ "Aggiungi foglio se non esiste", "Foglio5", , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "Il foglio ''" & addSheetName & _ "'ha'''.è stato aggiunto perché non esisteva", _ vbInformation, "Aggiungi foglio se non esiste" Else MsgBox "Il foglio ''" & addSheetName & _ "''esiste già in questa cartella di lavoro.", _ vbInformation, "Aggiungi foglio se non esiste" End If End If  Sub 

  • Di conseguenza, la finestra del codice avrà l'aspetto seguente.

🔎 Codice Spiegazione:

Segmento 1:

 Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String 

In questa parte abbiamo dichiarato il nome della macro e i nomi delle variabili.

Segmento 2:

 addSheetName = Application.InputBox("Quale foglio stai cercando?", _ "Aggiungi foglio se non esiste", "Foglio5", , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name 

In questa parte, abbiamo creato una casella di input, attraverso la quale possiamo inserire il nome del file che dobbiamo trovare.

Segmento 3:

 Se requiredSheetName = "" Allora Worksheets.Add.Name = addSheetName MsgBox "Il foglio ''" & addSheetName & _ "'' è stato aggiunto perché non esisteva", _ vbInformation, "Aggiungi foglio se non esiste". 

In questa parte, si controlla se il foglio richiesto esiste nella cartella di lavoro; in caso contrario, viene creato il foglio richiesto e viene visualizzato un messaggio di modifica.

Segmento 4:

 Else MsgBox "Il foglio ''" & addSheetName & _ "'esiste già in questa cartella di lavoro.", _ vbInformation, "Add Sheet If Not Exist" End If End Sub 

In questa parte, abbiamo lavorato con il risultato se il foglio richiesto esiste già nella cartella di lavoro. In questo scenario, apparirà un'altra casella di messaggio che informa che questo foglio esiste. Inoltre, in questa parte, terminiamo il codice in modo corretto.

  • Successivamente, premere Ctrl + S.

  • Successivamente, un Microsoft Excel Viene visualizzata la finestra di dialogo No pulsante.

  • Di conseguenza, il Salva con nome apparirà la finestra di dialogo.
  • Di seguito, scegliere la voce Salva come tipo: opzione come .xlsm Successivamente, fare clic sul formato Risparmiare pulsante.

In questo modo, avete scritto e salvato il codice richiesto.

Nota:

È necessario salvare la cartella di lavoro di Excel in .xlsm Altrimenti, la macro non sarà abilitata e il codice non funzionerà.

Per saperne di più: Excel VBA per aggiungere un foglio con un nome di variabile (5 esempi ideali)

📌 Passo 3: Eseguire il codice

Ora è necessario eseguire il codice e verificare i risultati.

  • A tal fine, fare innanzitutto clic sul pulsante Correre nella finestra di dialogo Microsoft Visual Basic per le applicazioni finestra.

  • Di conseguenza, il Macro apparirà la finestra di dialogo.
  • Successivamente, scegliere la voce AddSheetIfNotExist e fare clic sul pulsante Correre pulsante.

  • A questo punto, la nostra casella di messaggio creata, denominata Aggiungi foglio se non esiste In questo caso, l'opzione automatica sarà Foglio5 .

  • Ora, per verificare, scrivere "Aprile" nella casella di testo e fare clic sul pulsante Ok pulsante.

  • Successivamente, apparirà un'altra casella di messaggio che indica che il foglio esiste già.
  • Fare clic sul pulsante Ok pulsante.

  • Successivamente, eseguire nuovamente il codice e scrivere "Maggio" nella casella di testo della casella di messaggio creata. Successivamente, fare clic sul pulsante OK pulsante.

  • Di conseguenza, apparirà un'altra casella di messaggio per informare che il file "Maggio" non esisteva e quindi ha creato questo foglio.
  • Di seguito, fare clic sul pulsante OK pulsante.

Infine, si può notare che è stato aggiunto un foglio che prima non esisteva e che la cartella di lavoro ha ora il seguente aspetto.

Per saperne di più: Excel VBA: aggiungere un foglio dopo l'ultimo (3 esempi ideali)

Conclusione

In questo articolo, quindi, vi ho mostrato tutti i passaggi per aggiungere un foglio se non esiste con Excel VBA. Leggete attentamente l'intero articolo per comprenderlo meglio e ottenere il risultato desiderato. Spero che questo articolo vi sia stato utile e informativo. Se avete ulteriori domande o consigli, non esitate a contattarmi.

E visitate ExcelWIKI per molti altri articoli come questo. Grazie!

Hugh West è un istruttore e analista di Excel di grande esperienza con oltre 10 anni di esperienza nel settore. Ha conseguito una laurea in Contabilità e Finanza e un Master in Economia Aziendale. Hugh ha una passione per l'insegnamento e ha sviluppato un approccio didattico unico che è facile da seguire e capire. La sua conoscenza approfondita di Excel ha aiutato migliaia di studenti e professionisti in tutto il mondo a migliorare le proprie competenze ed eccellere nella propria carriera. Attraverso il suo blog, Hugh condivide le sue conoscenze con il mondo, offrendo esercitazioni gratuite su Excel e formazione online per aiutare le persone e le aziende a raggiungere il loro pieno potenziale.