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 :

Rompre les liens macros VBA d'un classeur à l'autre [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 28
    Points : 18
    Points
    18
    Par défaut Rompre les liens macros VBA d'un classeur à l'autre
    Bonjour,

    J'essaye de faire une macro qui permette de copier un fichier, de le renommer et de l'envoyer via Outlook.

    Tout fonctionne bien, excepté le fait que j'ai mis deux macros (mise à jour des liens et copier/coller valeurs) sur une des feuilles et j'aimerais que le destinataire de mon mail puisse utiliser ces macros...

    Seulement, ca ne fonctionne pas... J'ai comme message d'erreur chez le destinataire quand j'appuie sur le bouton d'une des deux macros : "Fichier inaccessible"... les liens de la macro avec mon ancien fichier n'ont pas été rompu...

    Comment puis-je rompre les liens ?

    J'ai essayé de mettre la macro dans le tutoriel VB mais ca ne fonctionne pas non plus...

    Merci d'avance,

    lbroc84

  2. #2
    Membre chevronné Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Points : 2 131
    Points
    2 131
    Par défaut
    Il faut que tu nous donnes ton code, ou au moins une partie, car là, on ne peut pas grand chose pour toi malheureusement...
    Peut-être un problème de lien relatif et non absolu ?

  3. #3
    Membre à l'essai
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    OK, voici mon code de base de copie d'un fichier vers un autre (sachant que Namesociete est défini plus haut dans la macro)...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sheets(Array("Feuil1", "Feuil2")).Copy
        ChDir "U:\Cheminacces"
        ActiveWorkbook.SaveAs Filename:= _
            "U:\cheminacces\" & NameSociete & ".xls", _
            FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _
            ReadOnlyRecommended:=False, CreateBackup:=False
        ActiveWorkbook.Save
        ActiveWorkbook.Close
    Que dois-je ajouter à ce code pour rompre les liens dans le nouveau classeur ?

    Merci

  4. #4
    Membre chevronné Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Points : 2 131
    Points
    2 131
    Par défaut
    Je pensais plutôt au code lié au bouton sur lequel tu as cliqué. Celui qui pose problème quoi...

  5. #5
    Membre à l'essai
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Je veux bien mettre le code mais d'après moi, ce serait plutôt dans la macro d'origine qu'il faudrait rajouter quelque chose qui puisse rompre les liens car c'est lorsqu'on appuie sur le bouton "Copier /coller valeurs" du nouveau classeur chez le destinataire (qui n'a donc pas le lien avec mon premier fichier) que l'on me dit "Fichier inaccessible"...

    Donc en fait, il ne veut pas faire marcher les macros de la feuille du nouveau classeur car il ne reconnait pas le lien avec le fichier d'origine...

    Je ne sais pas si je suis claire ?

    Voici le code d'une des 2 macros de la feuille copiée dans le nouveau classeur et pour laquelle j'ai le message "Fichier inaccessible" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub Bouton3_QuandClic()
     
        Dim i As Integer
        Sheets("Feuil1").Select
        For i = 19 To 624
        Range("F" & i).Select
        Selection.Copy
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
        Next
    End Sub
    Merci bcp

  6. #6
    Membre chevronné Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Points : 2 131
    Points
    2 131
    Par défaut
    Ok, je vois mieux le problème. Je pense que le plus simple, ce serait d'utiliser le bouton de la boite à outils "contrôles" plutôt que celui d'un "formulaire".

    En effet dans le formulaire, tu associes une macro au bouton, ce qui peut effectivement gérer des problèmes lors de la copie. Alors qu'avec un contrôle, le code va gérer l'évènement click et ça ne posera aucun problème lors de la copie.

    Au passage, pour ton copier en valeurs, c'est plus simple et plus rapide de faire ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub Bouton3_QuandClic()
        Dim rg As Range
        Set rg = Sheets("Feuil1").Range("F19:F624")
        rg.Copy
        rg.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
    End Sub

  7. #7
    Membre à l'essai
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    Ta solution m'a l'air GENIALE... et je t'en remercie d'avance...

    La seule chose, c'est que je n'ai jamais créé de bouton de contrôle et je en sais pas comment lui attribuer la macro créée...

    Quand je crée le bouton, il me met :

    =INCORPORER("Forms.CommandButton.1";"")

    Dois-je changer quelque chose dans cette formule ?

    Où est-ce que je met le nom de ma macro ?

    Merci beaucoup

  8. #8
    Membre chevronné Avatar de ZebreLoup
    Homme Profil pro
    Ingénieur Financier
    Inscrit en
    Mars 2010
    Messages
    994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur Financier
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 994
    Points : 2 131
    Points
    2 131
    Par défaut
    En fait quand tu double-cliques sur ton bouton (en mode édition), il te génère automatiquement le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub CommandButton1_Click()
     
    End Sub
    Il te suffit donc d'écrire ton code ici. Soit tu mets directement ton code soit tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub CommandButton1_Click()
      Bouton3_QuandClic
    End Sub

  9. #9
    Membre à l'essai
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 28
    Points : 18
    Points
    18
    Par défaut
    SUPEEEERRRR... ca fonctionne....


    Un tout tout grand merci... Ca fait plusieurs jours que je cherche comment résoudre ce problème...

    C'est génialissime...

    lbroc84

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

Discussions similaires

  1. [PPT-2003] Qui maîtrise très bien Powerpoint et les scripts macro VBA associés ?
    Par Guy_L dans le forum Powerpoint
    Réponses: 1
    Dernier message: 01/12/2013, 19h51
  2. Macro VBA change de classeur
    Par Frululu dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 16/10/2013, 16h29
  3. [XL-2007] Macros VBA sous xls "export data entre les feuilles d'un même classeur"
    Par Cecinerock dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 25/05/2012, 15h48
  4. Copier une macro VBA d'un classeur à un autre
    Par Laugeek dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/08/2008, 07h36
  5. [VBA-E]Rompre les liens vers un classeur
    Par la-breche dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/03/2007, 12h02

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