IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Mot de passe VBA à la fermeture


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 228
    Par défaut Mot de passe VBA à la fermeture
    Bonjour.

    A chaque exécution du code ci-dessous, une fenêtre me demandant le mot de passe du projet VBA m'est demandée, comment faire pour résoudre ce bug ?

    Merci d'avance.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Private Sub CommandButton4_Click()
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Application.EnableEvents = False
    Application.Calculation = xlCalculationManual
    Workbooks.Open Filename:= _
        "\\Planning\Classeur2.xlsm", Notify:=False, ReadOnly:=True
    Workbooks("Classeur1.xlsm").Sheets("Planning " & Year(Now())).Range("A1:AS58").Value = Workbooks("Classeur2.xlsm").Sheets("Plan de charge " & Year(Now())).Range("A1:AS58").Value
    Workbooks("Classeur1.xlsm").Sheets("Planning " & Year(Now()) + 1).Range("A1:AS58").Value = Workbooks("Classeur2.xlsm").Sheets("Plan de charge " & Year(Now()) + 1).Range("A1:AS58").Value
    Workbooks("Classeur2.xlsm").Close False
    Unload UserForm3
    MsgBox "Mise à jour réussie"
    Application.Calculation = xlCalculationAutomatic
    Application.Calculate
    Application.EnableEvents = True
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
    End Sub

  2. #2
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonjour,
    Mot de passe VBA à la fermeture
    d'après ton code, c'est à l'ouverture, mais même principe à la fermeture
    si j'ai compris, il suffit de lire l'aide pour comprendre
    Référence du développeur Excel
    Workbooks.Open, méthode
    Afficher tout
    Masquer tout
    Cette méthode ouvre un classeur.
    Syntaxe

    expression.Open(FileName, MettreÀJourLiens, LectureSeule, Format, MotDePasse, MotDePasseÉcritureRes, IgnorerLectureSeuleRecommandée, Origine, Séparateur, Modifiable, Notifier, Convertisseur, AjouterAuxDerniersFichiersUtilisés, Local, ChargementEndommagé)
    MotDePasse Facultatif Variante Chaîne qui contient le mot de passe requis pour ouvrir un classeur protégé. Si cet argument est omis alors que le classeur requiert un mot de passe, l'utilisateur est invité à fournir ce mot de passe.
    donc, ajouter l'argument "Password:="ton mot de passe""
    ou WriteResPassword:="ton mot de passe"
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2013
    Messages : 228
    Par défaut
    Merci casefayere ! C'était bien ça !

    Code final :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Private Sub CommandButton4_Click()
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Application.EnableEvents = False
    Application.Calculation = xlCalculationManual
    Workbooks.Open Filename:="\\Planning\Classeur2.xlsm", Notify:=False, ReadOnly:=True, Password:="password"
    Workbooks("Classeur1.xlsm").Sheets("Planning " & Year(Now())).Range("A1:AS58").Value = Workbooks("Classeur2.xlsm").Sheets("Plan de charge " & Year(Now())).Range("A1:AS58").Value
    Workbooks("Classeur1.xlsm").Sheets("Planning " & Year(Now()) + 1).Range("A1:AS58").Value = Workbooks("Classeur2.xlsm").Sheets("Plan de charge " & Year(Now()) + 1).Range("A1:AS58").Value
    Workbooks("Classeur2.xlsm").Close False
    Unload UserForm3
    MsgBox "Mise à jour réussie"
    Application.Calculation = xlCalculationAutomatic
    Application.Calculate
    Application.EnableEvents = True
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
    End Sub

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mot de passe VBA par code
    Par charliejo dans le forum VBA Access
    Réponses: 6
    Dernier message: 16/09/2008, 01h44
  2. Demande du mot de passe VBA à la fermeture d'Excel
    Par JLMASSE dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 11/01/2007, 13h35
  3. Mot de passe VBA sur Excel ?
    Par ft035580 dans le forum Sécurité
    Réponses: 4
    Dernier message: 30/09/2006, 22h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo