begin process at 2010 02 10 07:01:52
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Base de Donnees

 > EFFECTUER DES IMPORTATIONS D'UNE BASE DE DONNÉE ACCESS VERS EXCEL EN VBA

EFFECTUER DES IMPORTATIONS D'UNE BASE DE DONNÉE ACCESS VERS EXCEL EN VBA


 Information sur la source

Note :
8,67 / 10 - par 3 personnes
8,67 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Base de Donnees Niveau :Débutant Date de création :24/06/2005 Vu / téléchargé :9 762 / 1 367

Auteur : Squall____

Ecrire un message privé
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (15)
Ajouter un commentaire et/ou une note


 Description

Bonjour à tous,

Je vous livre ici ma première source ! Ben oui, je n’ai pas eu le courage de commenter et de livrer tous les codes que j’ai pondus mais sur ce coup là, j'ai pensé à vous car j'ai galéré sur le sujet et je n'ai trouvé aucune source correspondant à mes besoins sur ce site. Vous me direz, j'avais peut être mal cherché (^_^) ! Si c'est le cas, toutes mes excuses !

Revenons en à ma source :
C'est un module qui sert à importer des données d'Access dans un fichier Excel en utilisant l'objet DAO. J'ai utilisé cette méthode car je n'arrivais pas à importer les données d'une base en Access 97 vers un Excel 97 !

Le module est je pense, très bien commenté alors je ne vous ferais pas l'affront de tout ré-expliquer.
Je fournis un Zip contenant un fichier Excel 97 et une base de donnée en Access 97 pour la démonstration mais aussi le fichier du module. De plus, je vous donne le code du module en vrac ci-dessous, comme ça, il y en as pour tous les goûts !

Je suis ouvert à toute critique donc, n'hésitez pas.

J'espère que ce bout de code vous serviras !



@peluche !

Source

  • Dim Db As DAO.Database 'Objet base de donnée
  • Dim Rs As Recordset 'Objet qui contient les résultats de la requête
  • Dim Debut As Date 'Sert à définir le temps d'exécution
  • Dim Fin As Date 'Sert à définir le temps d'exécution
  • Dim EnregistrementsParSecondes As Integer 'Nombre d'enregistrements traités par seconde
  • Dim NbrChamp As Integer 'Nombre de champ par enregistrement
  • Dim NbrEnr As Integer 'Nombre d'enregistrements traités
  • Dim Source As String 'C'est la requête
  • Dim ConditionsDeLaRequeteFinale As String 'Variable qui contiendras les conditions reformatées
  • Dim Flag As Boolean 'c'est juste un flag, un repère quoi !
  • Dim L As Integer 'Ligne actuelle
  • Dim C As Integer 'Colonne actuelle
  • Public Function ImporterResultatRequeteAccessDansExcel(FichierBaseDeDonneeMDB, NomTable, ConditionsDeLaRequete, NomFichierExcel, NomOngletExcel, Rapport As Boolean)
  • 'Pour que cette macro fonctionne, il faut référencer au minimum
  • '"Microsoft DAO 2.5/3.5 Compatibility Library".
  • 'Mais la macro fonctionne aussi avec des librairies plus récentes comme
  • '"Microsoft DAO 3.0 Object Library" et "Microsoft DAO 3.5 Object Library".
  • 'Cette macro fonctionne sur toutes les versions d'Excel (testé sur Excel 97)
  • 'et toutes les versions d'Access (testé sur Access 97) vu qu'elles sont rétrocompatibles !
  • 'Cette fonction permet d'importer le résultat d'une requete
  • 'effectuée dans une base de donnée Access à l'interieur d'un onglet Excel
  • 'Exemple de la commande à lancer pour appeler cette fonction :
  • 'Call ImporterResultatRequeteAccessDansExcel(ThisWorkbook.Path & "\BDD.mdb", "table_test", "WHERE commentaire=CarteOrange", ThisWorkbook.Name, 1, True)
  • 'Exemple de la commande à lancer pour importer toute une table :
  • 'Call ImporterResultatRequeteAccessDansExcel(ThisWorkbook.Path & "\BDD.mdb", "table_test", "", ThisWorkbook.Name, 1, True)
  • '________________________________________________________________________________
  • 'Enregistrer le momment exact de l'exécution de la fonction
  • 'Cela sert à calculer le temps d'exécution de la fonction à la fin de celle-ci.
  • Debut = Now
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Récupérer le nom exact de l'onglet dans lequel l'import sera fait
  • NomOngletExcel = Workbooks(NomFichierExcel).Sheets(NomOngletExcel).Name
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Activer l'onglet pour l'import
  • Workbooks(NomFichierExcel).Sheets(NomOngletExcel).Select
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Ouverture de la base de donnée Access.
  • Set Db = DBEngine.OpenDatabase(FichierBaseDeDonneeMDB, False, False, "MS Access")
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Ajout de guillemets derrière les "=" de la requete
  • ConditionsDeLaRequeteFinale = ""
  • Flag = False
  • If Not ConditionsDeLaRequete = "" Then
  • For i = 1 To Len(ConditionsDeLaRequete)
  • If Mid$(ConditionsDeLaRequete, i, 1) = "=" Then
  • Flag = True
  • ConditionsDeLaRequeteFinale = ConditionsDeLaRequeteFinale & Mid$(ConditionsDeLaRequete, i, 1) & Chr(34)
  • ElseIf Flag = True And Mid$(ConditionsDeLaRequete, i, 1) = " " Then
  • ConditionsDeLaRequeteFinale = ConditionsDeLaRequeteFinale & Chr(34) & Mid$(ConditionsDeLaRequete, i, 1)
  • Flag = False
  • ElseIf Flag = True And Not i = Len(ConditionsDeLaRequete) Then
  • ConditionsDeLaRequeteFinale = ConditionsDeLaRequeteFinale & Mid$(ConditionsDeLaRequete, i, 1)
  • ElseIf Flag = True And i = Len(ConditionsDeLaRequete) Then
  • ConditionsDeLaRequeteFinale = ConditionsDeLaRequeteFinale & Mid$(ConditionsDeLaRequete, i, 1) & Chr(34)
  • Flag = False
  • ElseIf Flag = False Then
  • ConditionsDeLaRequeteFinale = ConditionsDeLaRequeteFinale & Mid$(ConditionsDeLaRequete, i, 1)
  • End If
  • Next
  • End If
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Définition de la requête qui seras effectuée dans la Base de données
  • If Not ConditionsDeLaRequete = "" Then
  • Source = "SELECT * FROM " & NomTable & " " & ConditionsDeLaRequeteFinale
  • Else
  • Source = "SELECT * FROM " & NomTable
  • End If
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Effectuer la requête
  • Set Rs = Db.OpenRecordset(Source)
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Définir le nombre d'enregistrements et de champs qui résultent de la requête.
  • '
  • 'Les enregistrements sont les lignes de la base de données et les
  • 'champs sont en fait les colonnes.
  • Rs.MoveLast
  • NbrEnr = Rs.RecordCount
  • Rs.MoveFirst
  • NbrChamp = Rs.Fields.Count
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Ecrire les nom des champs en entête dans l'onglet du fichier Excel
  • L = 1
  • For C = 0 To NbrChamp - 1
  • Workbooks(NomFichierExcel).Sheets(NomOngletExcel).Cells(L, C + 1) = Rs.Fields(C).Name
  • Next
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Ecrire les résultats de la requête dans l'onglet du fichier Excel
  • For L = 1 To NbrEnr
  • For C = 0 To NbrChamp - 1
  • Workbooks(NomFichierExcel).Sheets(NomOngletExcel).Cells(L + 1, C + 1) = Rs.Fields(C).Value
  • Next
  • Rs.MoveNext
  • Next
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Cela sert à calculer le temps d'exécution de la fonction à la fin de celle-ci.
  • Fin = Now
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Mettre l'entête en gras, activer le filtrage automatique et redimensionner
  • 'les colonnes automatiquement.
  • Rows("1:1").Select
  • Selection.Font.Bold = True
  • Selection.AutoFilter
  • Cells.Select
  • Selection.Columns.AutoFit
  • Cells(2, 1).Select
  • Cells(1, 1).Select
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Fermer la base de donnée
  • Rs.Close
  • Db.Close
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Libérer les objet utilisés pour la base de donnée
  • Set Rs = Nothing
  • Set Db = Nothing
  • '________________________________________________________________________________
  • '________________________________________________________________________________
  • 'Afficher le rapport final si il est demandé
  • If Rapport = True Then
  • Tps = DateDiff("s", Debut, Fin)
  • If Tps > 0 Then
  • EnregistrementsParSecondes = NbrEnr / Tps
  • Else
  • EnregistrementsParSecondes = NbrEnr
  • End If
  • MsgBox "Base de donnée : " & FichierBaseDeDonneeMDB & Chr(10) & _
  • "Requête : " & Source & Chr(10) & Chr(10) & _
  • "Fichier Excel : " & NomFichierExcel & Chr(10) & _
  • "Nom de l'onglet : " & NomOngletExcel & Chr(10) & Chr(10) & _
  • "Temps d'exécution : " & Tps & " secondes" & Chr(10) & _
  • "Nombre d'enregistrements : " & NbrEnr & Chr(10) & _
  • "Nombre d'enregistrements traités par secondes : " & EnregistrementsParSecondes & Chr(10) _
  • , vbInformation, "Rapport de la requête"
  • End If
  • '________________________________________________________________________________
  • End Function
Dim Db As DAO.Database 'Objet base de donnée
Dim Rs As Recordset 'Objet qui contient les résultats de la requête
Dim Debut As Date 'Sert à définir le temps d'exécution
Dim Fin As Date 'Sert à définir le temps d'exécution
Dim EnregistrementsParSecondes As Integer 'Nombre d'enregistrements traités par seconde
Dim NbrChamp As Integer 'Nombre de champ par enregistrement
Dim NbrEnr As Integer 'Nombre d'enregistrements traités
Dim Source As String 'C'est la requête
Dim ConditionsDeLaRequeteFinale As String 'Variable qui contiendras les conditions reformatées
Dim Flag As Boolean 'c'est juste un flag, un repère quoi !
Dim L As Integer 'Ligne actuelle
Dim C As Integer 'Colonne actuelle

Public Function ImporterResultatRequeteAccessDansExcel(FichierBaseDeDonneeMDB, NomTable, ConditionsDeLaRequete, NomFichierExcel, NomOngletExcel, Rapport As Boolean)

    'Pour que cette macro fonctionne, il faut référencer au minimum
    '"Microsoft DAO 2.5/3.5 Compatibility Library".
    'Mais la macro fonctionne aussi avec des librairies plus récentes comme
    '"Microsoft DAO 3.0 Object Library" et "Microsoft DAO 3.5 Object Library".
    
    'Cette macro fonctionne sur toutes les versions d'Excel (testé sur Excel 97)
    'et toutes les versions d'Access (testé sur Access 97) vu qu'elles sont rétrocompatibles !
    
    'Cette fonction permet d'importer le résultat d'une requete
    'effectuée dans une base de donnée Access à l'interieur d'un onglet Excel
    
    'Exemple de la commande à lancer pour appeler cette fonction :
    'Call ImporterResultatRequeteAccessDansExcel(ThisWorkbook.Path & "\BDD.mdb", "table_test", "WHERE commentaire=CarteOrange", ThisWorkbook.Name, 1, True)
    
    'Exemple de la commande à lancer pour importer toute une table :
    'Call ImporterResultatRequeteAccessDansExcel(ThisWorkbook.Path & "\BDD.mdb", "table_test", "", ThisWorkbook.Name, 1, True)
    
    '________________________________________________________________________________
    'Enregistrer le momment exact de l'exécution de la fonction
    'Cela sert à calculer le temps d'exécution de la fonction à la fin de celle-ci.
    Debut = Now
    '________________________________________________________________________________
    
    '________________________________________________________________________________
    'Récupérer le nom exact de l'onglet dans lequel l'import sera fait
    NomOngletExcel = Workbooks(NomFichierExcel).Sheets(NomOngletExcel).Name
    '________________________________________________________________________________
    
    '________________________________________________________________________________
    'Activer l'onglet pour l'import
    Workbooks(NomFichierExcel).Sheets(NomOngletExcel).Select
    '________________________________________________________________________________
    
    '________________________________________________________________________________
    'Ouverture de la base de donnée Access.
    Set Db = DBEngine.OpenDatabase(FichierBaseDeDonneeMDB, False, False, "MS Access")
    '________________________________________________________________________________
    
    
    
    '________________________________________________________________________________
    'Ajout de guillemets derrière les "=" de la requete
    ConditionsDeLaRequeteFinale = ""
    Flag = False
    If Not ConditionsDeLaRequete = "" Then
        For i = 1 To Len(ConditionsDeLaRequete)
            If Mid$(ConditionsDeLaRequete, i, 1) = "=" Then
                    
                    Flag = True
                    ConditionsDeLaRequeteFinale = ConditionsDeLaRequeteFinale & Mid$(ConditionsDeLaRequete, i, 1) & Chr(34)
                    
                ElseIf Flag = True And Mid$(ConditionsDeLaRequete, i, 1) = " " Then
                    ConditionsDeLaRequeteFinale = ConditionsDeLaRequeteFinale & Chr(34) & Mid$(ConditionsDeLaRequete, i, 1)
                    Flag = False
                    
                ElseIf Flag = True And Not i = Len(ConditionsDeLaRequete) Then
                    ConditionsDeLaRequeteFinale = ConditionsDeLaRequeteFinale & Mid$(ConditionsDeLaRequete, i, 1)
                    
                ElseIf Flag = True And i = Len(ConditionsDeLaRequete) Then
                    ConditionsDeLaRequeteFinale = ConditionsDeLaRequeteFinale & Mid$(ConditionsDeLaRequete, i, 1) & Chr(34)
                    Flag = False
                    
                ElseIf Flag = False Then
                    ConditionsDeLaRequeteFinale = ConditionsDeLaRequeteFinale & Mid$(ConditionsDeLaRequete, i, 1)
                    
            End If
        Next
    End If
    '________________________________________________________________________________
    
    
    '________________________________________________________________________________
    'Définition de la requête qui seras effectuée dans la Base de données
    If Not ConditionsDeLaRequete = "" Then
            Source = "SELECT * FROM " & NomTable & " " & ConditionsDeLaRequeteFinale
        Else
            Source = "SELECT * FROM " & NomTable
    End If
    '________________________________________________________________________________
    
    '________________________________________________________________________________
    'Effectuer la requête
    Set Rs = Db.OpenRecordset(Source)
    '________________________________________________________________________________
    
    '________________________________________________________________________________
    'Définir le nombre d'enregistrements et de champs qui résultent de la requête.
    '
    'Les enregistrements sont les lignes de la base de données et les
    'champs sont en fait les colonnes.
    Rs.MoveLast
    NbrEnr = Rs.RecordCount
    Rs.MoveFirst
    NbrChamp = Rs.Fields.Count
    '________________________________________________________________________________
    
    '________________________________________________________________________________
    'Ecrire les nom des champs en entête dans l'onglet du fichier Excel
    L = 1
    For C = 0 To NbrChamp - 1
        Workbooks(NomFichierExcel).Sheets(NomOngletExcel).Cells(L, C + 1) = Rs.Fields(C).Name
    Next
    '________________________________________________________________________________
    
    '________________________________________________________________________________
    'Ecrire les résultats de la requête dans l'onglet du fichier Excel
    For L = 1 To NbrEnr
        For C = 0 To NbrChamp - 1
            Workbooks(NomFichierExcel).Sheets(NomOngletExcel).Cells(L + 1, C + 1) = Rs.Fields(C).Value
        Next
    Rs.MoveNext
    Next
    '________________________________________________________________________________
    
    '________________________________________________________________________________
    'Cela sert à calculer le temps d'exécution de la fonction à la fin de celle-ci.
    Fin = Now
    '________________________________________________________________________________
    
    
    '________________________________________________________________________________
    'Mettre l'entête en gras, activer le filtrage automatique et redimensionner
    'les colonnes automatiquement.
    Rows("1:1").Select
    Selection.Font.Bold = True
    Selection.AutoFilter
    Cells.Select
    Selection.Columns.AutoFit
    Cells(2, 1).Select
    Cells(1, 1).Select
    '________________________________________________________________________________
    
    '________________________________________________________________________________
    'Fermer la base de donnée
    Rs.Close
    Db.Close
    '________________________________________________________________________________
    
    '________________________________________________________________________________
    'Libérer les objet utilisés pour la base de donnée
    Set Rs = Nothing
    Set Db = Nothing
    '________________________________________________________________________________
    
    '________________________________________________________________________________
    'Afficher le rapport final si il est demandé
    If Rapport = True Then
        Tps = DateDiff("s", Debut, Fin)
        If Tps > 0 Then
                EnregistrementsParSecondes = NbrEnr / Tps
            Else
                EnregistrementsParSecondes = NbrEnr
        End If
        MsgBox "Base de donnée : " & FichierBaseDeDonneeMDB & Chr(10) & _
               "Requête : " & Source & Chr(10) & Chr(10) & _
               "Fichier Excel : " & NomFichierExcel & Chr(10) & _
               "Nom de l'onglet : " & NomOngletExcel & Chr(10) & Chr(10) & _
               "Temps d'exécution : " & Tps & " secondes" & Chr(10) & _
               "Nombre d'enregistrements : " & NbrEnr & Chr(10) & _
               "Nombre d'enregistrements traités par secondes : " & EnregistrementsParSecondes & Chr(10) _
               , vbInformation, "Rapport de la requête"
    End If
    '________________________________________________________________________________
    
End Function



 Conclusion

N'hésitez pas à commenter ma source !


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • BDD.mdbTélécharger ce fichier [Réservé aux membres club]86 016 octets
  • ImporterAccess.xlsTélécharger ce fichier [Réservé aux membres club]47 616 octets
  • MDL_ADO.basTélécharger ce fichier [Réservé aux membres club]Voir ce fichier9 264 octets

Télécharger le zip


 Sources du même auteur

Source avec Zip MODULE POUR CRÉER ET SUPPRIMER DES ONGLETS DANS UN FICHIER E...
Source avec Zip UTILISER COMMON DIALOG DANS VB/VBA D'UNE MANIÈRE SIMPLE SANS...

 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) DATA ACCESS COMPONENT par zaimfaycal
Source avec Zip GESTION ENSEIGNANTS par Elmarzougui
Source avec Zip GESTION D'UNE BIBLIOTHÈQUE par Elmarzougui
Source avec Zip VISUALISATION BASE ACCESS par claude440
Source avec Zip SUPER MONEY par MdelM

Commentaires et avis

Commentaire de hdidan le 26/06/2005 13:13:30

Je trouve ton code source intéressant. Moi aussi, j'ai un problème disons similaire au tien. Je cherche à importer des données Access sur Excel (ton code me donne des idées) ainsi que des données Excel sur Access. Pour cette 2ème partie, si tu peux m'être d'une aide quelle conque.
J'ai trouvé sur le site des codes mais que j'arrive pas à faire tourner : il reconnait pas Dim "MonAccess As New Access.Application" même si j'ai ajouté le microsoft DAO.

Commentaire de Cramfr le 27/06/2005 15:40:29

Vous avez pensez à ADO ???

Commentaire de jmlucienvb le 27/06/2005 18:15:12

DAO ne suffit pas pour que access soit reconnu
Il faut aussi que la bibliothèque d'office soit déclarée...
Au bureau j'ai des codes simples quoi fonctionnenet en permanence pour les échanges excel access dans les deux sens en version 97...
Un petit mail je vous les envoie...
(jean-marc.lucien@acoss.fr)
Avant jeudi après je pars en congés.
Sinon ado n'est pas top avec office 97 mais après avec 2000 ou xp c'est bien plus simple
JM

Commentaire de pbrenas le 28/06/2005 23:19:06

aprés avoir testé plusieurs méthodes, pour récupérer la totalité des enregistrement sélectionnés si le résultat à moins de 65534 enregistrements,
la fonction query d'excel est plus rapide:
connec = "ODBC;DSN=piloteodbc;UID=<Administrateur>;PWD=1234;DBQ=\\SERVEUR\Mesdocs\sage;DefaultDir=;CODEPAGE=1252;" pour la liaison avec sage ligne 100
piloteodbc est crée dans la liste des bases personnelles dans outils d'administration , pilotes odbc
sel contient la requête SQL
A1 est la position de la première cellule de destination
            With ActiveSheet.QueryTables.Add(Connection:=Connec, Destination:=Range("A1"))
                .CommandText = Sel
                .Name = ta
                .FieldNames = True
                .RowNumbers = False
                .FillAdjacentFormulas = False
                .PreserveFormatting = False
                .RefreshOnFileOpen = False
                .BackgroundQuery = False
                .RefreshStyle = xlInsertDeleteCells
                .SavePassword = True
                .SaveData = True
                .AdjustColumnWidth = False
                .RefreshPeriod = 0
                .PreserveColumnInfo = False
                .Refresh BackgroundQuery:=False
            End With
j'ai trouvé cette fonction en enregistrant une macro sur données, données externe, créer une requette.

Cela ne fonctionne pas pour écrire sur les base, les fonction ADO sont nécéssaire.
merci pour ce source trés bien commenté.

Commentaire de andrieuremi le 28/07/2005 18:06:34

Je trouve ton code source parfait.
Cela fait des mois que je cherche une telle source.
Je voulais te demander si tu pouvais compléter cette source en gérant lors de l'ouverture de la base de données le mot de passe du fichier car ma base auquel se souhaiterais me connecter possède un mot de passe et le code source ne le gère pas. MERCI INFINIMENT!

Commentaire de Squall____ le 01/08/2005 11:22:39

Andrieuremi, Je suis content que ma source te plaise mais malheureusement, je ne peux pas me pencher sur la gestion des mots de passe actuellement(manque de temps, tu comprends...).
Mais si tu veux la modifier et la compléter toi même, n'hésite pas. Je ne pense pas que l'ajout de la gestion des mot de passe doit être très difficile. Tu devrais surement trouver de l'aide sur ce site à ce sujet !

Tien moi au courrant si tu arrives à compléter le code !

Commentaire de Cath le 26/11/2005 10:31:36

Un grand merci à Squall pour ce code très pédagogique. Je l'ai utilisé, en tant que formateur, pour présenter DAO. L'exercice a été fort apprécié.

Bravo
Horatio


Commentaire de boudabbous_mohamed le 28/12/2005 16:46:51

Merci pour le code publié.
J'ai essayé de tester ce code, je rouve l'erreur suivante au niveau de la ligne contenat cette instruction:
Set Db = DBEngine.OpenDatabase(FichierBaseDeDonneeMDB, False, False, "MS Access")
l'erreur signalée est la suivante:
"Un composant ActivX ne peut pas créer l'objet"

Commentaire de Squall____ le 12/01/2006 18:38:42

boudabbous_mohamed, as tu bien référencé dans ton projet la librairie "Microsoft DAO 2.5/3.5 Compatibility Library" ?
Si c'est pas ça, je ne vois pas d'où sa peut venir...

Commentaire de chico200987 le 19/12/2006 15:34:20

Bonjour, je voudrais savoir où trouver "Microsoft DAO 2.5/3.5 Compatibility Library" car je ne le trouve pas ! Merci :)

Commentaire de Squall____ le 19/12/2006 16:36:55

Tu le trouve dans le menu "OUTIL > Références..." de ton éditeur VBA dans Excel. Maintenant il y a eu de nouvelles version du DAO donc prend la plus avancée, se sera le mieux. (Acutellement sur ma machine je vois une version 3.6)

Commentaire de chico200987 le 22/12/2006 19:15:07

Ben en faite c'est pour un autre problème mais c'est quand même de cette librairie dont j'ai besoin car c'est pour convertir un base access 2000 en 2003 et comme elle dépendait de cette librairieet c'est la seul qui permet la compatibilité :/ et je ne l'ai pas dans "OUTIL > references"

Commentaire de turb0 le 06/06/2007 11:15:47

Bin j'ai le meme soucis et meme en chargeant les differentes librairies ca ne marche pas.

J'ai essaye avec la version 3.5 et 3.6 ainsi qu'avec Microsoft DAO 2.5/3.5 Compatibility Library.
Toujours le meme message d'erreur...

Commentaire de Squall____ le 06/06/2007 13:33:15

Je pense que vous devez avoir un problème d'instalation du JET 3.5 de Microsoft.

Pour régler votre problème, il vaut mieux essayer de le réinstaller en le téléchargeant ici :

http://www.download.com/Microsoft-Jet-Database-Engine-3-5/3000-2114_4-4238277.html

Sinon, j'ai trouvé un article pour vérifier l'installation du pilote JET 3.5 chez Microsoft ici :

http://support.microsoft.com/kb/240377

Je pense que ça devrais suffire à résoudre votre problème.

Commentaire de turb0 le 06/06/2007 14:23:27

Malheureusement je peux pas trop m'amuser avec ce genre de fichier sur le PC de la boite...

Mais si tu trouves une autre solution hesites pas a faire signe, ton code avait l'air interessant ;)

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales