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 :

Problème références VBA


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut Problème références VBA
    Bonjour

    lorsque je lance excel 2010 j'aboutis sur un fichier vierge et quand je fait alt F11, et vérifie les reférences il m'est indiqué Visual basic pour applications qui pointe vers common files\microsoft shared\vba\... voir image "capture 1" jointe

    lorsque je j'ouvre un fichier récupéré sur une autre machine la même réference point vers windows\siswow64 (image capture2)et sur ce fichier lorsque je clique sur une checkbox d'un usf j'obtiens un message fichier introuvable VBA6.DLL

    comment corriger cela

    j'ai formaté mon DD, reinstallé windows 7 puis office 2010

    merci pour vos réponses
    cordialement
    Images attachées Images attachées   

  2. #2
    Invité
    Invité(e)
    Par défaut
    bonjour,
    les références sont embarquées dans le projets VBA de ton fichier Excel.

    si tu affiche la fenêtre des références , du fichier qui pose problème,tu trouveras 2 fois la librairie Visual Basic For Application don une manquante.

    comme tu t'en doute pas de macros sens VBA. mais ces 2 librairie génère un conflit.

    soit tu décoche la librairie manquante si tu est le seule à utiliser le fichier soit tu préfixe les instruction vba par Application si le fichier est destiné à fair des alé retour entre toi et ton client par exemple.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub test()
    e = "     e     "
    Debug.Print "|" & Application.Trim(e) & "|"
    End Sub

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    merci pour ta réponse, en effet cette appli doit migrer sur un autre pc, en fait sur les 2 captures jointes, il n'y a rien de manquant
    j'ai pas compris devant quelles instructions je dois placer Application ???

    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
    19
    Private Sub UserForm_Initialize()
    Dim x As Long 'num ligne tableau,
    Dim i As Long 'num ligne liste déroulante
    Dim f As Worksheet, y As Integer
    Set f = Sheets("PV")
    f.Activate
    Me.lstpv.ListIndex = 0
    i = Me.lstpv.ListIndex
    x = 8 + i
    f.Cells(x, 1).Select
    Me.txt1.Value = f.Range("C" & x).Value
    Me.txt2.Value = f.Range("D" & x).Value
    Me.txt3.Value = f.Range("G" & x).Value
    Me.txt4.Value = f.Range("H" & x).Value
    Me.txt5.Value = Format(f.Range("Q" & x).Value, "0.00" & " m²")
    For y = 1 To 24
    Me.Controls("pr" & y).Visible = False
    Next y
    End Sub

  4. #4
    Membre Expert
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 817
    Billets dans le blog
    10
    Par défaut
    Bonjour,

    En fait, dans les références, j'ai moi aussi deux références à Visual Basic Applications.

    Fait ceci manuellement :
    1. Décoche ta référence qui plante,
    2. Coche l'autre,
    3. Enregistre sous (fait une copie)


    Sinon, peut-être par code (modifie les chemins d'accès) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ThisWorkbook.VBProject.References.Remove "C:\windows\siswow64\"
    ThisWorkbook.VBProject.References.AddFromFile "C:\common files\microsoft shared\vba\"
    EDIT : Ce code va probablement empêcher la portabilité du classeur...

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    j'ai essayer ta solution de décocher et j'obtiens le message "impossible de supprimer le contrôle ou la référence en cours d'utilisation"

  6. #6
    Membre Expert
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 817
    Billets dans le blog
    10
    Par défaut
    Coche l'autre en premier...

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    je ne sais pas lequel plante
    de plus j'ai qu'une référence à Visual Basic Applications.
    Images attachées Images attachées  

  8. #8
    Membre Expert
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 817
    Billets dans le blog
    10
    Par défaut
    Un dernier truc à tester :
    Clic sur parcourir et suit le chemin common files\microsoft shared\vba\ voir si tu ne trouve pas l'autre fichier...

  9. #9
    Invité
    Invité(e)
    Par défaut
    tu fais référence à Microsoft Activex data object!
    décoche cette librairie et fais comme ça.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim cn As Object
     Set cn = CreateObject("ADODB.Connection")

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    je mets ça où ?

  11. #11
    Invité
    Invité(e)
    Par défaut
    déjà décoche la référence et fais un teste de compilation.

    si cette référence ait utile le debugage s’arrêtera sur la ligne si non il n'y auras pas de problème.

    exécutes la commande autant de fois que tu as des erreur.

    Nom : Sans titre.png
Affichages : 1751
Taille : 23,1 Ko

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    j'ai fait vérifier chez le destinataire visual basic pour applications pointe bien vers la bonne référence
    je vais donc copier le contenu des feuilles dans un nouveau fichier et non pas déplacer les feuilles et copier les codes vba via le bloc notes
    ça devrait le faire

    en tout cas merci d'avoir porté un intérêt pour mon souci

  13. #13
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    442
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 442
    Par défaut
    en fait je ne peux rien décocher car en cours d'utilisation

Discussions similaires

  1. Problème Référence VBA
    Par Néiskis dans le forum VBA Access
    Réponses: 1
    Dernier message: 16/01/2008, 07h55
  2. Réponses: 3
    Dernier message: 08/08/2007, 11h40
  3. Problème valeurs[VBA]
    Par Yanmeunier dans le forum Access
    Réponses: 1
    Dernier message: 18/05/2006, 15h17
  4. Problème de VBA de passage de 2000 à 2002
    Par Oberown dans le forum Access
    Réponses: 9
    Dernier message: 10/05/2006, 14h51
  5. problème avec VBA
    Par Delph dans le forum Langage
    Réponses: 2
    Dernier message: 19/08/2002, 13h15

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