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

VBA Access Discussion :

[VBA A] Erreur de compilation


Sujet :

VBA Access

  1. #1
    Mou
    Mou est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 69
    Points : 42
    Points
    42
    Par défaut [VBA A] Erreur de compilation
    Bonjour,

    J'ai un programme qui utilise du DAO que j'ai developpe sur un ordi. En cherchant à l'exporter à un de mes collegues il se trouve confronter à un probleme de compilation. Je ne sais pas s'il a le meme excel et access que moi, mais ce que je sais c'est que les references de la librairie sont correctement coché. Pourtant lorqu'on lance la macro, elle bloque à ce niveau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Db1 = DBEngine.OpenDatabase("Q:\Portefeuille\CDO\Suivi Portefeuilles\Suivi portefeuille.mdb")
    et j'obtiens le message d'erreur :
    "Erreur de compilation:
    Projet ou bibliothèque introuvable"

    Quelqu'un sait comment resoudre ce probleme ?

    Merci !

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Localisation : Sénégal

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 229
    Points : 1 579
    Points
    1 579
    Par défaut
    Essai de déclarer un workspace à la place de DBEngine.

  3. #3
    Mou
    Mou est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 69
    Points : 42
    Points
    42
    Par défaut
    Comment fait on cela ?

  4. #4
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Plutôt que de chercher à contourner l'erreur, il vaut, peut-être, mieux essayer de la comprendre.

    Il y a probablement une référence marquée "Manquante".

  5. #5
    Mou
    Mou est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 69
    Points : 42
    Points
    42
    Par défaut
    Je pense aussi alain... Par contre, corrige moi si je me trompe, mais la reference utile pour utiliser du DAO ou ADO est la même qui est Microsoft DAO 3.6 Object Library. Est il possible que la transposition sur un autre poste (mais avec la meme version Excel) soit la cause?

  6. #6
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Citation Envoyé par Mou
    mais avec la meme version Excel
    Euh... Excel?

    Ceci dit, vérifie, sur le poste à problème si une référence est manquante.

    Peut-être un problème d'installation du Jet...

  7. #7
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Citation Envoyé par Mou
    Je pense aussi alain... Par contre, corrige moi si je me trompe, mais la reference utile pour utiliser du DAO ou ADO est la même qui est Microsoft DAO 3.6 Object Library. Est il possible que la transposition sur un autre poste (mais avec la meme version Excel) soit la cause?

    Heu c'est un peu confus pour moi... tu es dans du code Access ou Excel ?

    Quelques précisions:

    Le code DAO nécessite la référence à DAO (3.6 ou équivalent).

    Le code ADO nécessite la référence à ActiveX Data Object...


    DBEngine.Opendatabase retourne un objet DAO.Database.
    L'ADO ne convient donc pas ici.

  8. #8
    Mou
    Mou est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 69
    Points : 42
    Points
    42
    Par défaut
    Desolé pour mon manque de clarté... en fait j'utilise un code VBA Excel mais comme il y a des requetes Access, on me dit generalement de poster ici. J'utilise un DAO et non un ADO.

    La macro tourne sous excel mais est relié à Access par le biais de DAO afin de prendre les données et de les travailler avec l'outils Excel.

  9. #9
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Ok.

    As-tu vérifié que ton code compile (et qu'il n'y a pas de référence manquantes) sur le poste de ton collègue?

    Montres-nous le code complet STP.

  10. #10
    Mou
    Mou est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 69
    Points : 42
    Points
    42
    Par défaut
    Voici le début du code... le code est tres long mais il bug au début comme je l'ai précédemment dit..

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
     
    Sub voirunclo()
     
    Dim Db1 As Database
    Dim Rs1 As DAO.Recordset
    Dim Rs2 As DAO.Recordset
    Dim Rs3 As DAO.Recordset
     
    Set Db1 = DBEngine.OpenDatabase("Q:\Portefeuille\CDO\Suivi Portefeuilles\Suivi portefeuille.mdb")
    Application.ScreenUpdating = False
     
    fin = Range("IU2").End(xlDown).Row
     
    For I = 2 To fin
        CLOVisu.ComboBox1.AddItem Range("IU" & I)
    Next I
     
    Sheets("Menu").Range("N13") = fin - 1
     
    CLOVisu.Show
     
    Nomchoisi = CLOVisu.ComboBox1
     
    If Nomchoisi = "" Then
        GoTo lafin
    End If
     
    Sheets("CLO").Activate
    Cells(2, 2) = "Fiche CLO: " & Nomchoisi
    STRSQL2 = "SELECT CLO.NomCLO, CLO.Manager, CLO.Vintage, CLO.SettlementDate, CLO.SizeDeal, CLO.[Payment frequency], CLO.[Reinvestment Period], CLO.[non call Period], CLO.[ramp up period], CLO.[call date], CLO.LeadManager, " & _
             "CLO.SeniorMontant , CLO.ClassAAA1Montant, CLO.ClassAAA2Montant, CLO.ClassAA1Montant, CLO.ClassAA2Montant, CLO.ClassA1Montant, CLO.ClassA2Montant, CLO.ClassBBB1Montant, CLO.ClassBBB2Montant, CLO.ClassBB1Montant, " & _
             "CLO.ClassBB2Montant, CLO.ClassBMontant, CLO.EquityMontant, CLO.SeniorCoupon, CLO.ClassAAA1Coupon, CLO.ClassAAA2Coupon, CLO.ClassAA1Coupon, CLO.ClassAA2Coupon, CLO.ClassA1Coupon, CLO.ClassA2Coupon, " & _
             "CLO.ClassBBB1Coupon, CLO.ClassBBB2Coupon, CLO.ClassBB1Coupon, CLO.ClassBB2Coupon, CLO.ClassBCoupon, CLO.SeniorSpread , CLO.ClassAAA1Spread, CLO.ClassAAA2Spread, CLO.ClassAA1Spread, CLO.ClassAA2Spread, CLO.ClassA1Spread, CLO.ClassA2Spread, " & _
             "CLO.ClassBBB1Spread, CLO.ClassBBB2Spread, CLO.ClassBB1Spread, CLO.ClassBB2Spread, CLO.ClassBSpread, CLO.SeniorRatingMoodys, CLO.ClassAAA1RatingMoodys, CLO.ClassAAA2RatingMoodys , CLO.ClassAA1RatingMoodys, " & _
             "CLO.ClassAA2RatingMoodys, CLO.ClassA1RatingMoodys, CLO.ClassA2RatingMoodys, CLO.ClassBBB1RatingMoodys, CLO.ClassBBB2RatingMoodys, CLO.ClassBB1RatingMoodys, CLO.ClassBB2RatingMoodys, CLO.ClassBRatingMoodys, " & _
             "CLO.SeniorRatingSP, CLO.ClassAAA1RatingSP, CLO.ClassAAA2RatingSP, CLO.ClassAA1RatingSP, CLO.ClassAA2RatingSP, CLO.ClassA1RatingSP, CLO.ClassA2RatingSP, CLO.ClassBBB1RatingSP, CLO.ClassBBB2RatingSP, " & _
             "CLO.ClassBB1RatingSP, CLO.ClassBB2RatingSP, CLO.ClassBRatingSP, CLO.SeniorRatingFitch, CLO.ClassAAA1FratingFitch, CLO.ClassAAA2RatingFitch, CLO.ClassAA1RatingFitch, CLO.ClassAA2RatingFitch, CLO.ClassA1RatingFitch," & _
             "CLO.ClassA2RatingFitch, CLO.ClassBBB1RatingFitch, CLO.ClassBBB2RatingFitch, CLO.ClassBB1RatingFitch, CLO.ClassBB2RatingFitch , CLO.ClassBRatingFitch, CLO.SeniorIsin, CLO.ClassAAA1Isin, CLO.ClassAAA2Isin, " & _
             "CLO.ClassAA1ISin, CLO.ClassAA2Isin, CLO.ClassA1Isin, CLO.ClassA2Isin, CLO.ClassBBB1Isin, CLO.ClassBBB2Isin, CLO.ClassBB1Isin, CLO.ClassBB2Isin, CLO.ClassBIsin, CLO.EquityIsin, CLO.SeniorWAL , CLO.ClassAAA1WAL, " & _
             "CLO.ClassAAA2WAL, CLO.ClassAA1WAL, CLO.ClassAA2WAL, CLO.ClassA1WAL, CLO.ClassA2WAL, CLO.ClassBBB1WAL, CLO.ClassBBB2WAL, CLO.ClassBB1WAL, CLO.ClassBB2WAL, CLO.ClassBWAL, CLO.EquityWAL, CLO.FeePrimary, " & _
             "CLO.feeseccondary, CLO.[Incentive fee 1], CLO.[Incentive fee 2], CLO.maxratfactor, CLO.MinWAspread, CLO.minMoodysDS, CLO.minRecoveryRate, CLO.maxNonEuro, CLO.MaxWal, CLO.MaxFixedRate, CLO.SStop5perIssuer, " & _
             "CLO.SSOtherperIssuer, CLO.Mezzperissuer, CLO.MinSS, CLO.MaxMezz, CLO.MaxHY, CLO.MaxCLO, CLO.MaxsyntheticSec, CLO.MaxshortSyntheticSec, CLO.MinRatingPurchase, CLO.MaxPIK " & _
             "FROM CLO " & _
             "WHERE (((CLO.NomCLO)= '" & _
              Nomchoisi & _
              "')) "
     
     
    Set Rs2 = Db1.OpenRecordset(STRSQL2, dbOpenSnapshot)
     
    Range("C6:D16").ClearContents
    Range("C20:D32").ClearContents
    Range("G20:H32").ClearContents
    Range("C69:D86").ClearContents
    Range("C37:E65").ClearContents
    Range("C59:E60").ClearContents
    Range("B95:N5000").ClearContents
    Range("C66").ClearContents
    Range("E66").ClearContents
     
     
    Sheets("CLO").Range("M6").CopyFromRecordset Rs2

  11. #11
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Ok
    Et la compilation , ça passe?

    Vu le message, je ne pense pas que cela vienne de là mais bon ... à tout hasard... tu as essayé avec une base copiée en local... autrement dit, es-tu sur que le user dispose des droits appropriés sur Q:\...?

  12. #12
    Mou
    Mou est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    69
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 69
    Points : 42
    Points
    42
    Par défaut
    Ben justement la compilation ne passe pas chez lui pourtant il y a bien tous les droits nécessaires.

  13. #13
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Citation Envoyé par Mou
    Ben justement la compilation ne passe pas chez lui pourtant il y a bien tous les droits nécessaires.

    Essaie avec une base Access ou un fichier XL avec une ou deux lignes de code...

    compare les versions d'office ... service pack ...

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

Discussions similaires

  1. [VBA] erreur de compilation
    Par bourguignon21 dans le forum VBA Access
    Réponses: 3
    Dernier message: 18/06/2007, 19h51
  2. [VBA-E]{Débutant} Erreurs de compilation
    Par kenny49 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 28/04/2007, 08h15
  3. [VBA-E] erreur de compilation
    Par patbou dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/04/2007, 19h44
  4. [VBA-A] erreur de compilation excel->access
    Par ashen dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/05/2006, 22h49

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