Salut,
avec le moteur Jet, je fait ainsi :
Private wrkDatabase As Workspace Private pathDatabase As String Private dbStrings As Database Private psLangue As String Private EnregCtrl As Recordset Private EnregMess As Recordset Private pbEtatBase As Boolean Private pasParametres As Variant
Private Sub Form_Load() Dim recStrings As Recordset Dim VersionServeur As Long Dim VersionLocale As Long
MsgBox "Beginning of initialization", vbInformation, "DEBUG ACCESS DB ACCESS" pbEtatBase = True psLangue = "gb"
On Error GoTo ErreurPasDeBase
MsgBox "Set wrkDatabase = CreateWorkspace('', 'admin', '', dbUseJet)", vbInformation, "DEBUG ACCESS BD ACCESS" 'Créer le workspace, ouvrir la base de données, et obtenir l'ensemble d'enregistrements Set wrkDatabase = CreateWorkspace("", "admin", "", dbUseJet)
MsgBox "pathDatabase = " & App.Path & "\langues.mdb", vbInformation, "DEBUG ACCESS BD ACCESS" pathDatabase = App.Path & "\langues.mdb"
' Set dbStrings = wrkDatabase.OpenDatabase("d:\SignalLab\SignalLab.mdb") MsgBox "Set dbStrings = wrkDatabase.OpenDatabase(pathDatabase)", vbInformation, "DEBUG ACCESS BD ACCESS" Set dbStrings = wrkDatabase.OpenDatabase(pathDatabase)
MsgBox "Set recStrings = dbStrings.OpenRecordset('version')", vbInformation, "DEBUG ACCESS BD ACCESS" Set recStrings = dbStrings.OpenRecordset("version") MsgBox "recStrings.MoveFirst", vbInformation, "DEBUG ACCESS BD ACCESS" recStrings.MoveFirst MsgBox "VersionLocale = recStrings.Fields('version')", vbInformation, "DEBUG ACCESS BD ACCESS" VersionLocale = recStrings.Fields("version")
MsgBox "Set EnregCtrl = dbStrings.OpenRecordset('Controles')", vbInformation, "DEBUG ACCESS BD ACCESS" Set EnregCtrl = dbStrings.OpenRecordset("Controles") 'Utiliser les noms des contrôles comme index dans le record set MsgBox "EnregCtrl.Index = 'ctrl'", vbInformation, "DEBUG ACCESS BD ACCESS" EnregCtrl.Index = "ctrl"
MsgBox "Set EnregMess = dbStrings.OpenRecordset('Messages')", vbInformation, "DEBUG ACCESS BD ACCESS" Set EnregMess = dbStrings.OpenRecordset("Messages") 'Utiliser les noms des contrôles comme index dans le record set MsgBox "EnregMess.Index = 'mess'", vbInformation, "DEBUG ACCESS BD ACCESS" EnregMess.Index = "mess"
Exit Sub ErreurPasDeBase: MsgBox "Erreur : " & vbCrLf & _ "code : " & Err.Number & vbCrLf & _ "description : " & Err.Description & vbCrLf & _ "source : " & Err.Source, vbCritical, "DEBUG ACCESS BD ACCESS" pbEtatBase = False
End Sub
' Retourne le libellé du message demandé Public Function glUTI_LibelleMessRetourner(nommess As String, ByRef lib As String) As Long Dim message As String
glUTI_LibelleMessRetourner = 0 On Error GoTo MessPasTrouve EnregMess.Seek "=", Format(nommess, "<") message = EnregMess.Fields(psLangue) lib = message Exit Function
MessPasTrouve: glUTI_LibelleMessRetourner = 1 lib = "" End Function
en espérant que cela t'aidera...
Zephyrin
------------------------------- Réponse au message : -------------------------------
> Salut tout le monde ! > Voila j'aimerai faire une recherche de donnée dans un table et tester la valeure de retour... j'ai essayé ça mais sans succés : > > If rstEsp.Find "Nom_Esp= '" & ESP_INC & i_inc & "'" Then > rstEsp("Nom_Esp") = ESP_INC & i_inc > rstEsp.Update > End If > > Merci de m'aider !! > a++
|