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 :

Modifier le Workbook_Open() d'un fichier sur l'autre [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 27
    Par défaut Modifier le Workbook_Open() d'un fichier sur l'autre
    Bonjour,

    J'ai une macro qui supprime une partie du contenu d'un fichier nommé COMPLET.xls et l'enregistre sous un autre nom PARTIEL.xls.

    Je voudrais pouvoir agir sur le "Workbook_Open()" de PARTIEL.xls en modifiant ses lignes de code.

    Le problème, c'est qu'avec ce type de macro, les contenus des deux Workbook_open sont identiques (puisqu'en fait les deux fichiers sont au départ identiques).

    Est-ce qu'il y aurait une possibilité d'automatiser cette action?

    Merci pour votre réponse.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    317
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 317
    Par défaut
    Bonjour,

    Si tu sais quelles lignes, il faut modifier, essaie ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub Change_Open()
    With Workbooks("PARTIEL.xls").VBProject.VBComponents("ThisWorkbook").CodeModule
        DebutCode = .ProcStartLine("Workbook_Open", vbext_pk_Proc)
        .ReplaceLine DebutCode + 2, "Msgbox ""Coucou"""
    End With
    End Sub
    DebutCode te donne la ligne de début du Workbook_Open de ton classeur "Partiel.xls"

    Tu peux mettre ce que tu veux, après DebutCode + 2, ....... mais n'oublie pas les " "

    Bonne journée

  3. #3
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonjour,

    Il y aurait éventuellement une solution plus simple, c'est de vérifier le nom du fichier et d'exécuter une procédure différente selon que le fichier se nomme COMPLET ou PARTIEL

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Workbook_Open()
     
    Select Case ThisWorkbook.Name
        Case "COMPLET.xls"
            'la procédure à exécuter
        Case "PARTIEL.xls"
            'la procédure à exécuter
    End Select
     
    End Sub

  4. #4
    Membre averti
    Inscrit en
    Février 2009
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 27
    Par défaut
    Bonjour,

    Merci pour vos 2 réponses.

    fring, ta méthode est simple mais efficace. Je n'avais pas pensé à faire un Select Case. Seul souci, il ne faut pas modifier le nom du fichier.

    mapeh, je ne connaissais pas cette technique mais elle s'avère être exactement ce que je cherchais.

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

Discussions similaires

  1. Workbook_Open d'un fichier sur un serveur
    Par lebigboss dans le forum VB.NET
    Réponses: 2
    Dernier message: 07/11/2009, 21h14
  2. existence d'un fichier sur d'autres postes
    Par zdravo dans le forum VBScript
    Réponses: 5
    Dernier message: 07/12/2007, 15h08
  3. [FTP] Lister les fichiers sur un autre serveur
    Par lenoil dans le forum Langage
    Réponses: 3
    Dernier message: 04/04/2007, 11h07
  4. Récuperer les fichiers sur un autre Ordinateur
    Par guandal dans le forum Administration
    Réponses: 5
    Dernier message: 16/06/2006, 11h13
  5. Réponses: 11
    Dernier message: 13/10/2005, 17h16

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