Macro Excel Enregistrer sous et protéger copi
Fermé
Week End
Messages postés
4
Date d'inscription
samedi 27 février 2010
Statut
Membre
Dernière intervention
2 mars 2010
-
27 févr. 2010 à 08:39
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 27 févr. 2010 à 16:54
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 27 févr. 2010 à 16:54
A voir également:
- Macro Excel Enregistrer sous et protéger copi
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Audacity enregistrer son pc - Guide
- Proteger cellule excel - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
5 réponses
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 249
27 févr. 2010 à 10:57
27 févr. 2010 à 10:57
Bonjour,
Dans 'outils /options / sécurité' tu peux crypter ton fichier avec différentes méthodes. La solidité dépend de la méthode et de la longueur de la clé.
Exemple de code généré avec protection 'office standard' :
Tu peux aussi faire une compression avec mot de passe avec zip ou mieux avec rar (plus difficile à cracker).
Dans tous les cas le destinataire devra saisir le mot de passe.
Tout autre méthode par macro qui reconnait l'utilisateur est trop facilement outrepassable.
eric
Dans 'outils /options / sécurité' tu peux crypter ton fichier avec différentes méthodes. La solidité dépend de la méthode et de la longueur de la clé.
Exemple de code généré avec protection 'office standard' :
ActiveWorkbook.SetPasswordEncryptionOptions PasswordEncryptionProvider:="", _ PasswordEncryptionAlgorithm:="OfficeStandard", PasswordEncryptionKeyLength:=40 _ , PasswordEncryptionFileProperties:=False ActiveWorkbook.Password = "2010#" ActiveWorkbook.SaveAs Filename:="C:\Classeur1.xls", _ FileFormat:=xlNormal, Password:="2010#", WriteResPassword:="", _ ReadOnlyRecommended:=False, CreateBackup:=False
Tu peux aussi faire une compression avec mot de passe avec zip ou mieux avec rar (plus difficile à cracker).
Dans tous les cas le destinataire devra saisir le mot de passe.
Tout autre méthode par macro qui reconnait l'utilisateur est trop facilement outrepassable.
eric
Week End
Messages postés
4
Date d'inscription
samedi 27 février 2010
Statut
Membre
Dernière intervention
2 mars 2010
27 févr. 2010 à 12:37
27 févr. 2010 à 12:37
Merci d'avoir répondu à ma question eriic. En fait, ce que je veux c'est protéger la copie. C'est à dire une fois le formulaire remplie, j'en fais une copie sauvegarde dans un dossier dont le chemin est spécifié dans mon code. Seulement pendant l'enregistrement, il faudrait que la copie se fasse avec un mot de passe variable selon le destinataire qui se trouve dans la cellule C3.
C'est à dire (je dis n'importe quoi) If range ("C3").Value= Vincent alors enregistrer SaveCopy avec le mot de passe vincent#2010
et ce, pour 8 destinaires.
Merci, ton idée me semble interressante.
C'est à dire (je dis n'importe quoi) If range ("C3").Value= Vincent alors enregistrer SaveCopy avec le mot de passe vincent#2010
et ce, pour 8 destinaires.
Merci, ton idée me semble interressante.
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 249
27 févr. 2010 à 12:45
27 févr. 2010 à 12:45
Et bien il faut que tu fasses 8 copies en changeant le mot de passe...
Week End
Messages postés
4
Date d'inscription
samedi 27 février 2010
Statut
Membre
Dernière intervention
2 mars 2010
27 févr. 2010 à 16:16
27 févr. 2010 à 16:16
Re-Bonjour,
Criis, pour en revenir à ta réponse fort intéressante, j'aimerais savoir ou le mettre. Mais j'ai essayé ceci:
Dim nom As String
nom = Range("C14") & "_" & Format(Date, "ddmmyyyy") & "_" & Format(Time, "hhmmss") & "_" & ActiveWorkbook.Name
ActiveWorkbook.SaveCopyAs Filename:="G:\Doc\Archives\\" & Range("C14") & "_" & Format(Date, "ddmmyyyy") & "_" & Format(Time, "hhmmss") & "_" & ActiveWorkbook.Name
rep = MsgBox("La fiche est sauvegardée sous le nom : " & nom, vbYes + vbInformation, "Copie sauvegarde classeur")
ActiveWorkbook.SetPasswordEncryptionOptions PasswordEncryptionProvider:="", _
PasswordEncryptionAlgorithm:="OfficeStandard", PasswordEncryptionKeyLength:=40 _
, PasswordEncryptionFileProperties:=False
ActiveWorkbook.Password = "2010#"
ActiveWorkbook.SaveAs FileFormat:=xlNormal, Password:="2010#", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
Seulement, ce que je voulais faire c'est non pas appliquer cette protection et au formulaire et à sa copie, mais plutôt à la copie et seulement à la copie.
J'espères m'expliquer clairement.
Criis, pour en revenir à ta réponse fort intéressante, j'aimerais savoir ou le mettre. Mais j'ai essayé ceci:
Dim nom As String
nom = Range("C14") & "_" & Format(Date, "ddmmyyyy") & "_" & Format(Time, "hhmmss") & "_" & ActiveWorkbook.Name
ActiveWorkbook.SaveCopyAs Filename:="G:\Doc\Archives\\" & Range("C14") & "_" & Format(Date, "ddmmyyyy") & "_" & Format(Time, "hhmmss") & "_" & ActiveWorkbook.Name
rep = MsgBox("La fiche est sauvegardée sous le nom : " & nom, vbYes + vbInformation, "Copie sauvegarde classeur")
ActiveWorkbook.SetPasswordEncryptionOptions PasswordEncryptionProvider:="", _
PasswordEncryptionAlgorithm:="OfficeStandard", PasswordEncryptionKeyLength:=40 _
, PasswordEncryptionFileProperties:=False
ActiveWorkbook.Password = "2010#"
ActiveWorkbook.SaveAs FileFormat:=xlNormal, Password:="2010#", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
Seulement, ce que je voulais faire c'est non pas appliquer cette protection et au formulaire et à sa copie, mais plutôt à la copie et seulement à la copie.
J'espères m'expliquer clairement.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 249
27 févr. 2010 à 16:54
27 févr. 2010 à 16:54
Tu cherchers du compliqué là où il n'y en a pas.
Pour que la copie l'aie tu es obligé de le mettre sur ton fichier. Tu fais tes 8 sauvegardes en changeant le mot de passe à chaque fois et tu l'enlèves à la fin.
Fais-le avec 2 sauvegardes en enregistrement de macro tu y verras plus clair.
Pour que la copie l'aie tu es obligé de le mettre sur ton fichier. Tu fais tes 8 sauvegardes en changeant le mot de passe à chaque fois et tu l'enlèves à la fin.
Fais-le avec 2 sauvegardes en enregistrement de macro tu y verras plus clair.