Bonjour,
Je tente actuellement de développer une application Access pour mon boulot (je ne suis pas développeurs). Afin d'y insérer un outil de recherche réellement puissant, j'ai suivi un tutoriel très didactique et plutôt clair (
loufab). Seulement voila, j'en suis à la partie où il s'agit de rentrer du code VB pour déterminer un type de donnée dans une des tables du projet.
Et là ... patatra ! VB m'indique systématiquement la même erreur et ce malgré plusieurs modification du code sur les conseils de plusieurs autres membres du forum Access. Le message est : "élément non trouvé dans cette collection" et pointe sur la ligne :
Set tbl = dbs.TableDefs(lfNameTbl) ' ouvre la définition table
Je me permets donc de vous soumettre le code en question pour que vous puissiez me dire ce qui semble clocher
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| Option Compare Database
Function lf_GetTypeField(lfNameTbl As String, lfNameFld As String)
' Renvoie le numéro du type du champ
'lfNameTbl = nom de la table
'lfNameFld = nom du champ
Dim dbs As DAO.Database ' Objet de la base
Dim tbl As DAO.TableDef ' Objet de définition de table
Debug.Print "la table est : " & lfNameTbl
Set dbs = CurrentDb ' ouvre la base courante
Set tbl = dbs.TableDefs(lfNameTbl) ' ouvre la définition table
Dim parcourt As Variant
For Each parcourt In tbl
Debug.Print parcourt.Name; parcourt.Name = lfNameTbl
Next parcourt
lf_GetTypeField = tbl.Fields(lfNameFld).Type ' renvoie le type de champ
Set tbl = Nothing ' libération des objets
Set dbs = Nothing
End Function |
et voici l'instruction qui est placé dans la fenêtre d'exécution
lf_GetTypeField("Saisie_des_operations", "Nom_titulaire")
Quelqu'un peut-il me venir en aide ? J'aurais besoin d'avancer assez rapidement sur cette application.
Merci par avance.
Partager