Liaison Visual basic et les tables Access

chrisbaby12 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'ecrit un programme en Visual Basic et voudrais utiliser les tables Access comme fichier de stockage.
la liaison VB Access me pose problème. Pouvez-vous m'aider s'il vous plait !
Merci d'avance.
A voir également:

2 réponses

ziko
 
bonjour,tu as une module ou non
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Bonjour,

Voilà un exemple pour interfacer VB à Access.

'////////////////////////////////////////////////////
'//     MODULE DAO D'INTERFACE AVEC
'//         LA BASE DE DONNEES
'//*******************************************
'// Nécessite la référence :
'// Microsoft DAO x.x Object Library
'//*******************************************
'// Auteur : Polux31 (2006)
'//
'//Compatibilité : VB6 [x] - VBA [x] - VB.NET [ ]
'///////////////////////////////////////////////////////////////


Option Explicit     '/!\ Déclaration des variables obligatoire


Private bdd As Database     'Objet Database
Private rs As Recordset     'Objet Recordset
Public nb As Long           'Variable compteur
Public errDescpt As Variant 'Variable pour contenir les msg d'erreur

Private Const myBdd = "C:\Base_De_Donnees\bd1.mdb"   'Chemin et nom de la base

'Procédure d'ouverture de la base
Public Sub open_bdd()
    Set bdd = OpenDatabase(myBdd)
End Sub

'procédure de fermuture de la base
Public Sub close_bdd()
    bdd.Close
End Sub

'Fonction qui retourne le recordset
Public Function getRs() As Recordset
    Set getRs = rs
End Function

'**************************************************************
'Fonctions pour naviguer dans le recordset
'
Public Function lirePremier(rs As Recordset) As Boolean

    On Error Resume Next
    rs.MoveFirst

    If Err.Number <> 0 Then
        lirePremier = False
    Else
        lirePremier = True
    End If
    
End Function
'
Public Function lireDernier(rs As Recordset) As Boolean

    On Error Resume Next
    rs.MoveLast
    
    If Err.Number <> 0 Then
        lireDernier = False
    Else
        lireDernier = True
    End If
    
End Function
'
Public Function lirePrecedent(rs As Recordset) As Boolean

    On Error Resume Next
    rs.MovePrevious
    
    If Err.Number <> 0 Then
        lireSuivant = False
    Else
        lireSuivant = True
    End If
    
End Function
'
Public Function lireSuivant(rs As Recordset) As Boolean

    On Error Resume Next
    rs.MoveNext
    
    If Err.Number <> 0 Then
        lireSuivant = False
    Else
        lireSuivant = True
    End If
    
End Function
'
' fin fonctions de navigation
'***********************************************************

'Fonction qui permet de passer une requête à la base
'Paramètre d'entrée : Query - la requete SQL
'Paramètre de sortie : Booléen
'
Public Function open_Recordset(ByVal Query As String) As Boolean
    
    'gestion des exceptions, en cas d'erreur on n'arrête pas l'appli
    On Error Resume Next
    'ouverture de la base
    open_bdd
    'on récupère dans le recordset (rs) le résultat de la requête (query) passée à la base
    Set rs = bdd.OpenRecordset(Query)
    nb = rs.RecordCount

    'on se place sur le premier enregistremet
    rs.MoveFirst
    'on gère l'execption
    If Err.Number <> 0 Then     'si il n'y a pas d'erreur alors
        open_Recordset = False    'on retourne faux
        errDescpt = Err.Number & " - " & Err.Description & ": [" & Query & "]"
        MsgBox errDescpt 
        Exit Function   'on sort de la fonction
    Else                        'sinon
        open_Recordset = True             'on retourne vrai
    End If                      'fin si
    
    Set rs = Nothing
    
End Function


Bon courage

;o)
Polux
-1