KutoolsforOffice — Un'unica soluzione, cinque potenti strumenti.Ottenere di più con meno sforzo.

Come si fa a verificare se una cartella esiste e, in caso contrario, a crearla?

AutoreXiaoyang Data di modifica

In molti flussi di lavoro d’ufficio è spesso necessario verificare l’esistenza di una cartella specifica prima di salvare file o organizzare dati con Excel. Eseguire questa operazione manualmente può rivelarsi dispendioso in termini di tempo, soprattutto quando si gestiscono numerose cartelle o si configurano processi automatizzati. La possibilità di controllare automaticamente se una cartella esiste e crearla all’occorrenza non solo semplifica la gestione dei file, ma contribuisce anche a prevenire errori imprevisti durante l’esportazione dei dati o l’elaborazione in batch.

Questa guida ti illustrerà metodi pratici per:

Verificare se una cartella esiste in un determinato Percorso file tramite codice VBA

Creare la cartella se non esiste in un determinato Percorso file tramite codice VBA


Verificare se una cartella esiste in un determinato Percorso file tramite codice VBA

Un’esigenza comune è verificare se una cartella esiste già in una directory specifica, soprattutto prima di esportare un rapporto, salvare allegati o preparare cartelle per l’elaborazione in batch. Excel non include una funzionalità integrata per controllare direttamente da un foglio di lavoro l’esistenza di una cartella, ma grazie a una macro VBA è possibile rilevare rapidamente la presenza di una cartella in qualsiasi percorso indicato.

Questo metodo è ideale quando devi semplicemente verificare l’esistenza di una cartella senza apportare alcuna modifica al tuo file system. Il codice VBA ti permette di eseguire questo controllo in modo rapido e con risultati immediati.

Procedura operativa:

1. Tieni premuti i tasti ALT+F11 per aprire la finestra di Microsoft Visual Basic for Applications.

2. Fai clic su Inserisci > Modulo, quindi incolla il codice seguente nella finestra del Modulo:

Codice VBA: Verifica se una cartella esiste in un determinato Percorso file:

Sub Test_Folder_Exist_With_Dir()
'Updateby Extendoffice
    Dim sFolderPath As String
    sFolderPath = "C:\Users\DT168\Desktop\Test folder"
    If Right(sFolderPath, 1) <> "\" Then
        sFolderPath = sFolderPath & "\"
    End If
    If Dir(sFolderPath, vbDirectory) <> vbNullString Then
        MsgBox "Folder exist", vbInformation, "Kutools for Excel"
    Else
        MsgBox "Folder doesn't exist", vbInformation, "Kutools for Excel"
    End If
End Sub

Nota: Nel codice sopra riportato, devi modificare il percorso del file e il nome C:\Users\DT168\Desktop\Cartella di prova in modo che corrispondano alla directory che desideri controllare. Assicurati che il percorso sia digitato correttamente e includa l’indirizzo completo della cartella.

3. Dopo aver inserito il codice, premi F5 per eseguire la macro. Il risultato verrà visualizzato in una finestra di dialogo che indica se la cartella specificata esiste o meno. Ad esempio:

 premere il tasto F5 per eseguire questo codice e ottenere il risultato

Questo approccio è particolarmente utile per effettuare controlli preliminari prima di avviare operazioni sui file o esportazioni di dati. Tuttavia, non crea cartelle, quindi utilizzalo quando hai bisogno esclusivamente di un passaggio di rilevamento senza modificare file o directory.

Se devi verificare ripetutamente cartelle diverse per il Percorso del file, valuta di modificare il codice o di richiedere all’utente di inserire dinamicamente il Percorso del file, per una maggiore flessibilità. Controlla sempre con attenzione l’ortografia del Percorso del file e assicurati di disporre delle autorizzazioni appropriate per accedere alla directory, al fine di evitare errori in fase di esecuzione.

uno screenshot di kutools for excel ai

Sblocca la magia di Excel con KUTOOLS AI

  • Esecuzione intelligente: Esegui operazioni sulle celle, analizza i dati e crea grafici, il tutto con comandi semplici e intuitivi.
  • Formule personalizzate: crea formule su misura per ottimizzare i tuoi flussi di lavoro.
  • Codifica VBA: Scrivi e implementa codice VBA in modo semplice e immediato.
  • Interpretazione delle formule: Comprendi con facilità anche le formule più complesse.
  • Traduzione del testo: Superate le barriere linguistiche direttamente nei vostri fogli di calcolo.
Potenzia le tue capacità in Excel con strumenti basati sull’intelligenza artificiale.Scarica orae scopri un’efficienza mai provata prima!

Creare la cartella se non esiste in un determinato Percorso file tramite codice VBA

A volte potresti desiderare che Excel non si limiti a verificare l’esistenza di una cartella, ma la crei automaticamente se non è presente, riducendo così al minimo l’intervento umano. Questa soluzione è perfetta per allestire cartelle destinate a output di file automatizzati, assicurando un flusso di lavoro continuo e prevenendo errori causati da directory mancanti.

Questa soluzione è adatta quando desideri che le tue macro o le attività di esportazione dati vengano eseguite senza interruzioni, indipendentemente dallo stato iniziale del tuo Struttura cartella. Aiuta a garantire che tutte le cartelle necessarie siano presenti prima dell’avvio delle operazioni successive.

Procedura operativa:

1. Tieni premuti i tasti ALT+F11per aprire la finestra di Microsoft Visual Basic for Applications.

2. Fai clic su Inserisci>Modulo, quindi incolla il seguente codice nella finestra del Modulo:

Codice VBA: Crea una cartella se non esiste in un Percorso file:

Sub MakeMyFolder()
'Updateby Extendoffice
    Dim fdObj As Object
    Application.ScreenUpdating = False
    Set fdObj = CreateObject("Scripting.FileSystemObject")
    If fdObj.FolderExists("C:\Users\DT168\Desktop\Test folder") Then
        MsgBox "Found it.", vbInformation, "Kutools for Excel"
    Else
        fdObj.CreateFolder ("C:\Users\DT168\Desktop\Test folder")
        MsgBox "It has been created.", vbInformation, "Kutools for Excel"
    End If
    Application.ScreenUpdating = True
End Sub

Nota: Devi aggiornare nel codice il percorso C:\Users\DT168\Desktop\Cartella di prova e il nome del file in base alla directory effettiva che desideri creare. Controlla attentamente la stringa del percorso per evitare errori di battitura e scegli una posizione in cui disponi dei permessi di scrittura, così da prevenire errori di sistema.

3. Una volta incollato il codice, premi F5 per eseguirlo:

(1.) Se la cartella esiste già, verrà visualizzata una finestra di notifica come nell’esempio seguente:

Se la cartella esiste, apparirà una finestra di avviso

(2.) Se la cartella non esiste, la macro creerà automaticamente una nuova cartella nel percorso specificato. Un’altra finestra di dialogo ne confermerà la creazione, come illustrato di seguito:

Se la cartella non esiste, verrà creata nel percorso specificato

Questa operazione semplificata è ideale per attività ripetitive di esportazione o backup, in cui l’assenza di cartelle potrebbe altrimenti causare errori o interrompere il flusso di lavoro.

Attenzione: VBA potrebbe segnalare errori se tenti di creare una cartella in una directory protetta o inesistente. In tal caso, ricontrolla attentamente il percorso e i tuoi permessi utente.

Suggerimenti precauzionali e risoluzione comune dei problemi:

  • Controlla sempre con attenzione il formato del Percorso del filenegli script VBA: i percorsi devono essere corretti e completi, con barre rovesciate ()\) per separare ogni livello delle directory.
  • Assicurati di disporre delle autorizzazioni necessarie per la directory: la mancanza di accesso in scrittura potrebbe interrompere l’esecuzione del codice VBA durante la creazione delle cartelle.
  • Se esegui il codice su computer diversi, tieni presente che il percorso utente della struttura cartelle (ad esempio, «C:\Users\DT168») varierà: aggiorna quindi tali percorsi di conseguenza.
  • Per VBA, valuta di aggiungere finestre di input per consentire all’utente di inserire manualmente i percorsi, rendendo così la tua macro più flessibile e intuitiva.
  • In caso di errori come «Percorso non trovato» o «Accesso negato», assicurati che la directory principale esista e sia accessibile.
  • È generalmente consigliabile eseguire il backup dei dati importanti e testare la routine VBA su cartelle di esempio prima di applicarla a directory operative.

Integrando questi approcci in base alle tue esigenze specifiche e all’ambiente Excel, potrai gestire efficacemente la verifica e la creazione di cartelle, sia tramite semplici macro che con metodi alternativi di gestione dei file. Ciò contribuisce ad automatizzare compiti ripetitivi, prevenire fallimenti nelle esportazioni e garantire operazioni più fluide nei tuoi flussi di lavoro quotidiani con Excel.


Migliori Strumenti per la Produttività in Office

🤖KUTOOLS AI Assistente: Rivoluziona Analisi dei dati in base a:Esecuzione Intelligente   |  Genera Codice|  Crea formule personalizzate  |  Analizza Dati e Genera Grafici|  Richiama Funzioni avanzate
Funzionalità Popolari:Trova, Evidenzia o Contrassegna Duplicati   |  Elimina righe vuote   |  Combinare Colonne o Celle senza Perdere Dati   |   Arrotondamento senza usare la formula...
Super RICERCA.VERT:VLookup con Criteri Multipli  |  VLookup con Valori Multipli  |   VLookup tra Fogli Multipli   |   Corrispondenza approssimativa....
Elenco a discesa avanzato:Crea Rapidamente un Elenco a Discesa   |  Elenco a Discesa Dipendente   |  Elenco a Discesa con Selezione Multipla....
Gestione Colonne:Aggiungi un Numero Specifico di Colonne|Sposta Colonne|Attiva/Disattiva lo Stato di Visibilità delle Colonne Nascoste|Confronta Intervalli e Colonne...
Funzionalità in Evidenza:Attenzione della griglia   |  Visualizzazione Design   |Barra delle formule avanzata   | Gestione Cartelle di Lavoro e Fogli   |  Biblioteca di risorse(Testo Automatico)|  Selettore di Date   |  Unisci fogli di lavoro  |  Crittografa/Decrittografa celle   | Invia Email da Lista   |  Super Filtri   |   Filtro speciale(Filtra celle con testo in grassetto/corsivo/barrato...) ...
Principali Set di Strumenti 15:12 Strumentiper il Testo(Aggiungi testo,Elimina Caratteri Specifici, ...)|   50+Tipidi Grafico(Diagramma di Gantt, ...)|   40+ Formule Pratiche(Calcola l'età in base alla data di nascita, ...)|   19 Strumentidi Inserimento(Inserisci Codice QR,Inserisci Immagine dal Percorso, ...)|   12 Strumentidi Conversione(Converti in parole,Conversione del tasso di cambio, ...)|   7 StrumentiUnisci e Dividi(Unione avanzata righe,Dividi celle, ...)|... e molto altro
Usa Kutools nella tua lingua preferita – supporta inglese, spagnolo, tedesco, francese, cinese e 40+ altre!

Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...


Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede all’interno della stessa finestra, invece che in finestre separate.
  • Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!

Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.

Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.

ExcelWordOutlookTabsPowerPoint
  • Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
  • Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
  • Funziona meglio insieme— produttività ottimizzata tra le app di Office
  • Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
  • Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi