Visual Basic for Applications , eller VBA är ett skriptspråk inbyggd i de flesta Microsoft Office-program . Med det kan du skapa makron och funktioner för att automatisera olika uppgifter . VBA levereras med ett brett utbud av objekt och funktioner som kan hjälpa dig att arbeta med dina dokument snabbare och mer effektivt . Med sin FileSystemObject klass , kan du manipulera även filer och mappar som helst på din dator från valfritt Office-program . Genom att skapa en enda VBA-makro och tilldela ett kortkommando till det , kan du lättare kopiera , organisera och skapa säkerhetskopior av dina mappar . Instruktioner
1
Starta ett Microsoft Office- program , till exempel Word eller Excel . Tryck på " Ctrl " och " N " för att skapa ett nytt dokument . Om du vill använda ett befintligt dokument i stället , tryck på " Ctrl " och " O ", välj filen och klicka sedan på " Öppna".
2
Tryck " " Alt " och " F11 " för att öppna Visual Basic Editor , eller VBE . på " Project Explorer " -panelen , välj VBA-projekt som innehåller filnamnet på dokumentet .
3
Klicka på " Infoga " och välj sedan " modul . " Detta lägger till " Module1 " till listan över moduler i " Project Explorer " panel . Dubbelklicka på " Module1 , " och skriv in följande kod i editorn .
sub CopyFolders ( )
katalognamn = Array ( " C : \\ Mapp1 " , " C : \\ Mapp2 " ) katalog
dest = " C : \\ destination "
För varje s I katalognamn
Call CopyF ( s , dest & " \\ " ) katalog
Nästa s
End Sub
4
Ersätt " C : \\ Mapp1 " och " C : \\ Mapp2 " . . med de mappar som du vill kopiera för att lägga en annan mapp till listan , skriv ett kommatecken och sedan infoga den fullständiga sökvägen till mappen före den avslutande parentesen för " Array " -funktionen Var säker att inkludera enhetsbeteckningar och att innesluta banorna i citat
5
Ersätt . . " C : \\ destination " med den fullständiga sökvägen till den katalog där du vill skicka kopior av dina mappar var säker att inkludera den enhetsbokstav och att den inom citationstecken .
6
Klicka på " Infoga " och välj sedan " modul . " Detta lägger till " Avsnitt 2 " till listan över moduler i " Project Explorer " panel . Dubbelklicka på " Avsnitt 2 , " och skriv sedan in följande kod i editorn .
Public Sub CopyF ( ByVal sFol As String , ByVal dFol As String ) katalog
c = Len ( sFol ) - Len ( Ersätt ( sFol , " \\ " , " " , 1 ) ) katalog
fname = Mid ( sFol , InStr ( 1 , Application.Substitute ( sFol , " \\ " , " * " , c ) , "*" ) + 1 ) katalog
dest = dFol & fname
Set FSO = CreateObject ( " Scripting.FileSystemObject " ) katalog p Om Inte fso.FolderExists ( dest ) Sedan
fso.CopyFolder sFol , dFol
Else
Ures = MsgBox ( dest & " finns redan . Skriva över ? " , vbYesNo + vbQuestion ) katalog
Om Ures = vbYes Sedan
sFol
fso.CopyFolder , dFol
Else
GoTo EndScript
End If
End If
EndScript :
Set FSO = Nothing
End Sub
7
Tryck " F12 ". Ange önskat filnamn i " File namnet " rutan , och klicka sedan på rullgardinsmenyn bredvid " Spara som . " Select " Makroaktiverad Excel- arbetsbok " ( om du använder Excel ) eller " Word Makroaktiverad Document " ( om du använder Word ) . Klicka på " Spara ".
8
Tryck " Alt " och " Q " för att stänga VBE .
9
Tryck " Alt " och " F8 " till öppna " Makron " fönstret . Välj " CopyFolders " från listan , och klicka sedan på " Kör".