Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza del computer >> software >> .

Explode Excel fogli di lavoro in cartellonali separati?

È possibile esplodere i fogli di lavoro Excel in cartelle di lavoro separate utilizzando VBA (Visual Basic per applicazioni) all'interno di Excel. Ecco una guida passo-passo:

1. Abilita la scheda Developer:

* Apri la tua cartella di lavoro Excel.

* Vai su File> Opzioni> Personalizza Ribbon .

* Controlla la casella per sviluppatore .

* Fare clic su OK .

2. Inserisci un modulo VBA:

* Fare clic su sviluppatore> Visual Basic .

* In Visual Basic Editor (VBE), vai su Insert> Modulo .

3. Incolla e modifica il codice VBA:

`` `VBA

Fogli di lavoro sub divisorio ()

Dim WB come cartella di lavoro, WS come foglio di lavoro

Dim Newwb come cartella di lavoro

Dim filename come stringa

Imposta Wb =ActiveWorkbook 'Imposta la cartella di lavoro attiva

'Loop attraverso ogni foglio di lavoro

Per ogni WS in WB.Worksheets

'Crea una nuova cartella di lavoro

Imposta newwb =bookbooks.add

'Copia il foglio di lavoro corrente nella nuova cartella di lavoro

Ws.Copy prima:=Newwb.Sheets (1)

'Rinomina la nuova cartella di lavoro in base al nome del foglio di lavoro

FileName =ws.name &".xlsx"

NEWWB.Saveas FileName

'Chiudi la nuova cartella di lavoro

newwb.close

Next Ws

Fine sub

`` `

Spiegazione:

* `dim wb come cartellone di lavoro, ws come foglio di lavoro, newwb come cartella di lavoro, nome file come string`: Dichiara variabili per archiviare oggetti di lavoro e foglio di lavoro, nonché il nome file per la nuova cartella di lavoro.

* `SET WB =ActiveWorkbook`: Imposta la variabile `WB` sulla cartella di lavoro attualmente attiva.

* `Per ogni ws in wb.worksheets`: Loop attraverso ogni foglio di lavoro nella cartella di lavoro attiva.

* `set newwb =workbooks.add`: Crea una nuova cartella di lavoro in bianco.

* `Ws.Copy prima:=Newwb.Sheets (1)`: Copia il foglio di lavoro attuale (`ws`) alla cartella di lavoro appena creata (` newwb`), inserendolo prima del primo foglio.

* `fileName =ws.name &" .xlsx "`: Imposta il nome file per la nuova cartella di lavoro utilizzando il nome del foglio di lavoro e l'estensione `.xlsx`.

* `Newwb.Saveas FileName`: Salva la nuova cartella di lavoro con il nome file specificato.

* `Newwb.close`: Chiude la cartella di lavoro appena creata.

4. Esegui la macro:

* Premere alt + f11 Per tornare al foglio Excel.

* Vai a sviluppatore> macros .

* Seleziona fogli di lavoro split Macro e clic su Esegui .

La macro creerà cartelloni di lavoro Excel separati per ogni foglio di lavoro nella tua cartella di lavoro originale, salvandole nella stessa cartella della cartella di lavoro originale.

Note aggiuntive:

* Personalizza il formato del nome file: È possibile modificare la variabile `FileName` per includere ulteriori informazioni, come data o ora, nei nomi di file salvata.

* Salva in una cartella specifica: È possibile specificare una cartella diversa per salvare le nuove cartelle di lavoro modificando la variabile `FileName`.

* Esegui la macro su una cartella di lavoro diversa: Prima di eseguire la macro, assicurati di selezionare la cartella di lavoro che si desidera dividere in file separati.

 

software © www.354353.com