Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3046 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  verrouiller un fichier excel avec une macro

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

verrouiller un fichier excel avec une macro

n°2287476
nico6733
Posté le 07-09-2016 à 10:08:27  profilanswer
 

bonjour,
 
Je cherche un moyen d'automatiser la pose d'un mot de passe sur un fichier excel, via une ligne de code dans une macro.
 
Je m'explique :  
 
j'ai un fichier contenant des données commerciales d'une cinquantaine de villes. Via l'utilisation d'une macro découpe-feuille, ce fichier se décompose en cinquante onglets, un onglet par ville, avec les données relatives aux villes dans ces même onglets.
Avec l'utilisation d'une autre macro, ces onglets sont séparés et enregistrés dans de nouveaux classeurs excel, un par ville.
 
Or ces nouveaux classeurs sont enregistrés dans un dossier sur un serveur commun, accessible aux sous directeurs de chaque ville. Mais je voudrais empêcher le directeur de Lyon de voir le fichier du directeur de Dijon par exemple. Jusqu'à présent je mettais un mot de passe, manuellement, via "outils" -> "options générales" -> "mot de passe pour la lecture".
Ce qui entrainait la demande d'un mot de passe à l'ouverture du fichier.
Y-a-t-il un moyen d'automatiser cette action grâce à une ligne à insérer dans ma deuxième macro ?
 
Merci d'avance.

mood
Publicité
Posté le 07-09-2016 à 10:08:27  profilanswer
 

n°2287491
Chelmi18
Posté le 07-09-2016 à 13:19:53  profilanswer
 

Salut Nico,
 
J'imagine que tu utilises la méthode SaveAs pour sauvegarder tes fichiers. Si c'est le cas, tu as une option Password pour définir un mot de passe.
 
Sinon, la méthode WorkBook.Password permet également de définir un mot de passe après coup.

n°2287493
nico6733
Posté le 07-09-2016 à 14:14:31  profilanswer
 

Tout d'abord merci de ta réponse,

 

Alors niveau macro, pour chaque ville, j'ai fait ça :

 

        'Strasbourg
nom= "Strasbourg"
Chemin = dossier & nom

 

Workbooks.Add
ActiveWorkbooks.SaveAs Filename :=chemin, FileFormat :=51
Range ("A1" ).Select
Set dec = ActiveWorkbook

 

bdd.Activate
Sheets("resume" ).Copy After :=dec.Sheets (3)
bdd.Activate
Sheets("STRASBOURG" ).Copy After :=dec.Sheets (4)

 

dec.Activate
        Sheets(Array("Feuil1","Feuil2","Feuil3" )).Select
        ActiveWindow.SelectedSheets.Delete

 

dec.Save
dec.Close

 

Et ça continue comme ça avec les autres villes

 


J'ai essayé avec ActiveSheet.Protect ("monmotdepasse" )
Mais ça ne fonctionne pas..

 

EDIT  : j'ai rajouté le paramètre Password après FileFormat, cela semble fonctionner, merci à toi !


Message édité par nico6733 le 07-09-2016 à 14:44:12
n°2287517
Chelmi18
Posté le 08-09-2016 à 08:17:20  profilanswer
 

Super, merci pour le retour !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  verrouiller un fichier excel avec une macro

 

Sujets relatifs
Automatisation fichier excel avec VBAExcel 2013, option recherche champs TCD
Probleme pour finir VBA sur mon fichierMacro word : trouver format et ajouter balises html
Edition fichier iniCombien de caractères différents possibles pour un fichier ?
Supprimer derniere ligne d'un fichier SANS le parcourirExtraction d'une valeur d'un fichier via un batch
Macro trop lente, optimisation du code 
Plus de sujets relatifs à : verrouiller un fichier excel avec une macro


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR