Nwlapcug.com


Come copiare le cartelle utilizzando VBA

Come copiare le cartelle utilizzando VBA


Visual Basic per applicazioni o VBA, è un linguaggio di scripting incorporato la maggior parte delle applicazioni di Microsoft Office. Con esso, è possibile creare macro e funzioni per automatizzare le attività varie. VBA viene fornito con una vasta gamma di oggetti e funzioni che consentono di lavorano con i documenti più velocemente e più efficientemente. Con la classe di FileSystemObject, è inoltre possibile modificare file e cartelle in qualsiasi punto sul tuo computer da qualsiasi applicazione di Office. Creando una singola macro VBA e assegnando un comando da tastiera ad esso, si può più facilmente copiare, organizzare e creare copie di backup delle cartelle.

Istruzioni

1

Avviare qualsiasi applicazione di Microsoft Office, come Word o Excel. Premere "Ctrl" e "N" per creare un nuovo documento. Per utilizzare un documento esistente, premere "Ctrl" e "O", selezionare il file e quindi fare clic su "Apri".

2

Premere "" Alt"e"F11"per aprire l'Editor di Visual Basic, o VBE. Nel pannello "Gestione progetti", selezionare il progetto VBA che contiene il nome del file del documento.

3

Fare clic su "Inserisci" e quindi selezionare "Modulo". Questo aggiunge "Modulo1" all'elenco dei moduli nel pannello "Gestione progetti". Fare doppio clic su "Modulo1" e quindi immettere il seguente codice nell'editor.

Sub CopyFolders()

folderNames = Array ("C:\Folder1", "C:\Folder2.")

dest = "C:\destination"

Per ogni s In folderNames

Call CopyF(s, dest & "\")

Prossima s

End Sub

4

Sostituire "C:\Folder1" e "C:\Folder2." con le cartelle che si desidera copiare. Per aggiungere un'altra cartella all'elenco, digitare una virgola e quindi inserire il percorso completo alla cartella prima della parentesi di chiusura della funzione "Matrice". Essere sicuri di includere lettere di unità e di racchiudere i percorsi tra virgolette.

5

Sostituire "C:\destination" con il percorso completo alla directory dove si desidera inviare copie delle cartelle. Essere sicuri di includere la lettera di unità e di racchiuderlo tra virgolette.

6

Fare clic su "Inserisci" e quindi selezionare "Modulo". Questo aggiunge "Module2" all'elenco dei moduli nel pannello "Gestione progetti". Fare doppio clic su "Module2" e quindi immettere il seguente codice nell'editor.

Public Sub CopyF(ByVal sFol As String, ByVal dFol As String)

c = Len(sFol) - Len (sostituire (sFol, "\", "", 1))

fName = Mid (sFol, InStr (1, Application.Substitute (sFol, "\", "", c), "") + 1)

dest = dFol & fName

UST = CreateObject("Scripting.FileSystemObject")

Se non UST. FolderExists(dest) poi

fso.CopyFolder sFol, dFol

Altro

uRes = MsgBox(dest & " already exists. Overwrite?", vbYesNo + vbQuestion)

If uRes = vbYes Then

fso.CopyFolder sFol, dFol

Else

GoTo EndScript

End If

End If

EndScript:

UST = Nothing

End Sub

7

Premere "F12". Inserisci il tuo nome preferito file nella casella "Nome File" e fare clic sul menu a discesa accanto a "Salva come tipo". Selezionare "Excel con attivazione macro lavoro" (se si utilizza Excel) o "Documento di Word con attivazione macro" (se si utilizza Word). Fare clic su "Salva".

8

Premere "Alt" e "Q" per chiudere VBE.

9

Premere "Alt" e "F8" per aprire la finestra di "Macro". Selezionare "CopyFolders" dall'elenco e quindi fare clic su "Esegui".

Consigli & Avvertenze

  • Per impostazione predefinita, le macro sono disattivate per le applicazioni di Microsoft Office che possono impedire di creazione e l'esecuzione di qualsiasi routine VBA. Per attivarli, fare clic sul pulsante Microsoft Office e quindi premere "I". Sulla sezione "Popular", selezionare "Visualizza Developer scheda della barra multifunzione." Vai a "Trust Center" e quindi fare clic su "Impostazioni Centro protezione." Fare clic su "Impostazioni Macro" e quindi selezionare "Attiva tutte le macro". Fare clic su "OK" per salvare le modifiche e riavviare l'applicazione di Office che si sta utilizzando.