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 :

Passage de 2003 a 2007 et erreur 13 incompatibilte de type [AC-2007]


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2006
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2006
    Messages : 239
    Par défaut Passage de 2003 a 2007 et erreur 13 incompatibilte de type
    Bonsoir,
    Je viens de passer une base de 2003 mdb à 2007 accdb.
    J'envoi un fichier Excel dans cette base au moyen de cette macro :
    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
    Sub Export_Vers_Access()
    
    Dim db As DAO.Database
    Set db = DBEngine.OpenDatabase("\\Chemin\Mensuel.accdb", False, False, ";pwd=xx")
     
    Dim Plage As Range
    Dim Array1 As Variant
    Dim db1 As Database
    Dim Rs1 As Recordset
    
    Set db1 = DBEngine.OpenDatabase("\\Chemin\Mensuel.accdb")
    
    Set Rs1 = db1.OpenRecordset("T_BPSR_BPMR_PAMR", dbOpenDynaset)
    Set Plage = Worksheets("Export Access").Range("A2").CurrentRegion.Offset(1, 0)
    Set Plage = Plage.Resize(Plage.Rows.Count - 1, Plage.Columns.Count)
    Plage.Select
    
    Array1 = Plage.Value
    
    T_BPSR_BPMR_PAMR
    For x = 1 To UBound(Array1, 1)
    With Rs1
    .AddNew
    .Fields("Année") = Array1(x, 1)
    .Fields("Mois") = Array1(x, 2)
    .Fields("Banque") = Array1(x, 3)
    .Fields("Code Dépositaire") = Array1(x, 4)
    .Fields("montant €") = Array1(x, 5)
    
    .Update
    End With
    Next x
    
    db1.Close
    
    ActiveWorkbook.Save
    
    Range("A2").Select
    
    MsgBox "Les données sont exportées", vbOKOnly
    
    End Sub
    Par F8 j'ai une erreur "Erreur d'execution 13 Incompatibilité de type" sur cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Rs1 = db1.OpenRecordset("T_BPSR_BPMR_PAMR", dbOpenDynaset)
    Dans les références j'ai bien
    Microsoft Office 12.0 Access database engine object library de coché.
    Je n'arrive pas a trouver mon erreur.
    Merci pour l'aide au cas ou ..
    Bonne soirée

  2. #2
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 129
    Par défaut
    Bonsoir,

    Il vaut mieux préciser comme pour db :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim db1 As dao.Database
    Dim Rs1 As dao.Recordset
    Mais par ailleurs que représente "T_BPSR_BPMR_PAMR" ???

  3. #3
    Membre éclairé
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2006
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2006
    Messages : 239
    Par défaut
    Bonsoir nico84

    Merci pour l'aide, T_BPSR_BPMR_PAMR représente la table access ou doit etre injecté les données de ce fichier excel.
    Je teste cela demain matin, et je te tiens informé.
    Merci encore et bonne soirée.
    Cordialement

  4. #4
    Expert confirmé Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    Mai 2008
    Messages
    3 129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 3 129
    Par défaut
    Je mets toujours au minimum
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Rs1 = db1.OpenRecordset("select * from T_BPSR_BPMR_PAMR", dbOpenDynaset)
    Je découvre donc qu'il est possible de faire plus simple, au moins en version 2000

  5. #5
    Membre éclairé
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2006
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2006
    Messages : 239
    Par défaut
    Bonjour nico84

    Merci pour avoir trouvé mon problème. Tout fonctionne correctement.

    Bonne journée.
    Cordialement

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

Discussions similaires

  1. Erreur 13 : incompatibilté de type
    Par saninx dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/04/2015, 20h12
  2. [AC-2007] passage de 2003 a 2007
    Par nitou dans le forum Modélisation
    Réponses: 3
    Dernier message: 29/05/2009, 11h49
  3. passage d'office 2003 à office 2007
    Par Invité(e) dans le forum Microsoft Office
    Réponses: 1
    Dernier message: 11/10/2008, 12h25
  4. Passage de access 2003 à access 2007
    Par charlix dans le forum Sécurité
    Réponses: 4
    Dernier message: 09/10/2007, 14h27
  5. Passage d'Excel 2003 à Excel 2007 ?
    Par DjJEJ83 dans le forum Excel
    Réponses: 3
    Dernier message: 23/07/2007, 11h10

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