Come Zip file utilizzando VBA

June 6

Come Zip file utilizzando VBA


Quando si programma in Microsoft Office Visual Basic, Applications Edition (VBA), a volte è necessario aprire o chiamare altri programmi dall'interno di Word, Excel o Access. Il modo più semplice per eseguire questa operazione è attraverso il comando VBA SHELL. Questo comando avvia un altro programma a riga di Windows o di comando per eseguire indipendente del programma di Office. Una volta che l'altro programma è in esecuzione, il programma di Office in grado di continuare a svolgere altre attività. Utilizzare una tecnica facile da eseguire Winzip e archiviare un set di file utilizzando una maschera di Microsoft Access.

istruzione

1 Aprire Microsoft Access (2000 o successivo) e creare un nuovo database chiamato ZipSample.

2 Creare una nuova maschera non associata denominata ZipForm. Questa forma ha nessuna tabella ad esso associati. Invece, la volontà di accettare i nomi di cartelle e file zip digitati dall'utente poi zip i file quando il pulsante viene premuto.

3 Aggiungere due caselle di testo e un pulsante sul modulo.

Nome prima casella di testo "nomeCartella" e dargli la didascalia "Cartella:"

Nome seconda casella di testo "ZipFile" e dargli la didascalia "File Zip:"

Cambiare l'etichetta sul pulsante per "Zip".

4 Fare clic destro sul pulsante zip e scegliere costruire seguita dal codice. Si aprirà la finestra di Visual Basic con un nuovo metodo vuoto. All'interno del corpo del metodo (sulla riga vuota sopra End Sub) inserire il seguente codice:

SHELL "" "c: \ Program Files \ WinZip \ WinZip32" "--min --Una -r" & ZipFile & "" & FolderName & "* *".

Quando valutata dall'interprete VBA, questo codice passerà il seguente testo per l'interprete dei comandi:

"C: \ Program Files \ WinZip \ WinZip32" --min --Una --r zipfile.zip nomeCartella * *.

WinZip può essere eseguito con un numero di parametri da linea di comando. In questo caso, il comando chiede WinZip per aggiungere tutti i file nella cartella di nomeCartella all'archivio zipFile.zip. L'argomento --min dice WinZip per eseguito ridotto a icona (in background), -a indica che si tratta di aggiungere file all'archivio e --r indica che tutti i file in sottocartelle all'interno di questa cartella dovrebbero essere aggiunti. Consultare il sito Web di WinZip (vedi Risorse) per le opzioni da riga di comando e un elenco completo di argomenti della riga di comando.

5 Salvare e chiudere la finestra di Visual Basic, salvare il modulo quindi passare alla visualizzazione maschera. Il modulo apparirà con le due caselle di testo e un pulsante. Compila il modulo e fare clic sul pulsante di avviamento postale per verificare il modulo.

Consigli e avvertenze

  • Sulla riga di comando WinZip, le virgolette sono necessarie dal momento che la cartella "Programmi" contiene uno spazio. L'aggiunta di due citazioni insieme all'interno di un VBA mette letterale una citazione nella stringa di testo.