Word (VBA): impostare una password in tutti i file .doc di una cartella

Di seguito riporto una macro VBA per Word che assegna una specifica password (di protezione in modifica) a tutti i file DOC contenuti in una determinata directory.

Una volta applicata la protezione ai file, sarà inibita qualsiasi modifica,  ad esclusione di eventuali moduli presenti nei documenti .

Ovviamente i file a cui deve essere applicata la password, prima dell’esecuzione della macro, non devono essere già protetti.

Sub inserisci_password_file_cartella()
Dim i As Integer
Dim miapassword As String

Set cartella = Application.FileSearch
miapassword = "MiaPassw12345678" 'specificare la passw da inserire
With cartella
  .LookIn = "c:\luca" 'specificare il percorso dove sono contenuti i file
  .FileName = "*.doc" 'la macro considera solo i file DOC

  If .Execute(SortBy:=msoSortByFileName, _
  SortOrder:=msoSortOrderAscending) > 0 Then
  'MsgBox .FoundFiles.Count
     For i = 1 To .FoundFiles.Count
       'MsgBox .FoundFiles(i)
        file_trovato = .FoundFiles(i)
        'apertura file
        Documents.Open FileName:=file_trovato, ConfirmConversions:=False, ReadOnly:= _
        False, AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:= _
        "", Revert:=False, WritePasswordDocument:="", WritePasswordTemplate:="", _
        Format:=wdOpenFormatAuto
        If ActiveDocument.ProtectionType = wdNoProtection Then
           'inserisce protezione
            ActiveDocument.Protect Password:=miapassword, NoReset:=False, _
            Type:= wdAllowOnlyFormFields
           'Chiude e salva il file
           ActiveDocument.Close SaveChanges:=wdSaveChanges
        End If
     Next i
  Else
     MsgBox "Nessun file trovato nella cartella specificata!"
     Exit Sub
  End If
End With
End Sub

Purtroppo le righe del codice vengono interrotte nell’articolo, ma facendo un copia-incolla è possibile visualizzarle per intero.

2 risposte a Word (VBA): impostare una password in tutti i file .doc di una cartella

  1. maurizio scrive:

    Grande Luca! Grazie 1000

  2. Meagan scrive:

    Thanks for finally talking about >Word (VBA):
    impostare una password in tutti i file .doc di una cartella | Luca Franchi – Blog <Liked it!

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: