OVH Cloud OVH Cloud

objets Database et Recordset

6 réponses
Avatar
bonjour,

j'aimerai, dans un formulaire, afficher la valeur d'un=20
tuple d'une de mes relations. Pour cela, je veux utiliser=20
du VB (plutot que de lier directement le formulaire =E0 la=20
table).
Mon code est le suivant :

Private Sub Form_Open(Cancel As Integer)
'ouverture du premier tuple

Dim dbs As Database
Dim rst As Recordset
Set dbs =3D DBEngine.Workspaces(0).Databases(0)
=20
Set rst =3D dbs.OpenRecordset("SELECT C.numeroChambre,=20
T.taille " _
& "FROM Chambre C, TailleChambre T " _
& "WHERE C.taille=3Dt.idTaille;")
=20
Dim num As Integer
Dim tai As String
=20
num =3D rst(0)
tai =3D rst(1)
=20
Me.zn_numero =3D num
Me.zn_taille =3D tai
=20
End Sub

A l'ex=E9cution, j'ai un message d'erreur "erreur de=20
compilation : type d=E9fini par l'utilisateur non d=E9fini"

Quelqu'un aurait-il une id=E9e SVP ?

Merci d'avance

6 réponses

Avatar
Eric
Bonjour,
Tu devrais mettre tes déclarations comme suit
Dim dbs as DAO.Database
Dim rst as DAO.Recordset

et charger dans ton projet la Référence Microsoft DAO 3.x Object Library,
supprimer Microsoft ADO si pas besoin.

A+
Eric

écrivait news:23f0501c45f70
$5ea58c20$:

bonjour,

j'aimerai, dans un formulaire, afficher la valeur d'un
tuple d'une de mes relations. Pour cela, je veux utiliser
du VB (plutot que de lier directement le formulaire à la
table).
Mon code est le suivant :

Private Sub Form_Open(Cancel As Integer)
'ouverture du premier tuple

Dim dbs As Database
Dim rst As Recordset
Set dbs = DBEngine.Workspaces(0).Databases(0)

Set rst = dbs.OpenRecordset("SELECT C.numeroChambre,
T.taille " _
& "FROM Chambre C, TailleChambre T " _
& "WHERE C.taille=t.idTaille;")

Dim num As Integer
Dim tai As String

num = rst(0)
tai = rst(1)

Me.zn_numero = num
Me.zn_taille = tai

End Sub

A l'exécution, j'ai un message d'erreur "erreur de
compilation : type défini par l'utilisateur non défini"

Quelqu'un aurait-il une idée SVP ?

Merci d'avance



Avatar
Jessy Sempere [MVP]
Bonjour

Sûrement un pb de références...

Rajoutes la référence Microsoft DAO x.xx Object Library

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
a écrit dans le message news:
23f0501c45f70$5ea58c20$
bonjour,

j'aimerai, dans un formulaire, afficher la valeur d'un
tuple d'une de mes relations. Pour cela, je veux utiliser
du VB (plutot que de lier directement le formulaire à la
table).
Mon code est le suivant :

Private Sub Form_Open(Cancel As Integer)
'ouverture du premier tuple

Dim dbs As Database
Dim rst As Recordset
Set dbs = DBEngine.Workspaces(0).Databases(0)

Set rst = dbs.OpenRecordset("SELECT C.numeroChambre,
T.taille " _
& "FROM Chambre C, TailleChambre T " _
& "WHERE C.taille=t.idTaille;")

Dim num As Integer
Dim tai As String

num = rst(0)
tai = rst(1)

Me.zn_numero = num
Me.zn_taille = tai

End Sub

A l'exécution, j'ai un message d'erreur "erreur de
compilation : type défini par l'utilisateur non défini"

Quelqu'un aurait-il une idée SVP ?

Merci d'avance
Avatar
Pierre CFI [mvp]
bonjour
tu dois étre sur access 2000 ou plus ?
retire les réfs ADO et ajoute microsoft dao 3.xxx
précise de plus dao.database, dao.recordset (pour éviter litige si ado et dao)

--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
http://users.skynet.be/mpfa/
Site perso
http://access.cfi.free.fr
a écrit dans le message de news:23f0501c45f70$5ea58c20$
bonjour,

j'aimerai, dans un formulaire, afficher la valeur d'un
tuple d'une de mes relations. Pour cela, je veux utiliser
du VB (plutot que de lier directement le formulaire à la
table).
Mon code est le suivant :

Private Sub Form_Open(Cancel As Integer)
'ouverture du premier tuple

Dim dbs As Database
Dim rst As Recordset
Set dbs = DBEngine.Workspaces(0).Databases(0)

Set rst = dbs.OpenRecordset("SELECT C.numeroChambre,
T.taille " _
& "FROM Chambre C, TailleChambre T " _
& "WHERE C.taille=t.idTaille;")

Dim num As Integer
Dim tai As String

num = rst(0)
tai = rst(1)

Me.zn_numero = num
Me.zn_taille = tai

End Sub

A l'exécution, j'ai un message d'erreur "erreur de
compilation : type défini par l'utilisateur non défini"

Quelqu'un aurait-il une idée SVP ?

Merci d'avance
Avatar
Guillaume
J'avais déjà essayé en précisant le DAO avant les objets,
mais cela ne fonctionne pas non plus.. Qu'entendez-vous
par "charger dans ton projet la Référence Microsoft DAO
3.x Object Library" svp ? je ne comprend pas...



-----Message d'origine-----
Bonjour,
Tu devrais mettre tes déclarations comme suit
Dim dbs as DAO.Database
Dim rst as DAO.Recordset

et charger dans ton projet la Référence Microsoft DAO 3.x
Object Library,

supprimer Microsoft ADO si pas besoin.

A+
Eric

écrivait
news:23f0501c45f70

$5ea58c20$:

bonjour,

j'aimerai, dans un formulaire, afficher la valeur d'un
tuple d'une de mes relations. Pour cela, je veux
utiliser


du VB (plutot que de lier directement le formulaire à
la


table).
Mon code est le suivant :

Private Sub Form_Open(Cancel As Integer)
'ouverture du premier tuple

Dim dbs As Database
Dim rst As Recordset
Set dbs = DBEngine.Workspaces(0).Databases(0)

Set rst = dbs.OpenRecordset("SELECT
C.numeroChambre,


T.taille " _
& "FROM Chambre C, TailleChambre T " _
& "WHERE C.taille=t.idTaille;")

Dim num As Integer
Dim tai As String

num = rst(0)
tai = rst(1)

Me.zn_numero = num
Me.zn_taille = tai

End Sub

A l'exécution, j'ai un message d'erreur "erreur de
compilation : type défini par l'utilisateur non défini"

Quelqu'un aurait-il une idée SVP ?

Merci d'avance



.




Avatar
Eric
Bonjour Guillaume,

Dans la fenêtre VBA (Accès par Alt+F11), menu Outils/Références.
Tu auras la liste des références chargées. Sélectionnes Microsoft DAO
3.xx Object Library
Si la référence Microsoft ADO 2.x est cochée, enlèves la si tu ne
l'utilises pas.

A+
Eric

"Guillaume" écrivait
news:23fb701c45f78$218cb400$:

J'avais déjà essayé en précisant le DAO avant les objets,
mais cela ne fonctionne pas non plus.. Qu'entendez-vous
par "charger dans ton projet la Référence Microsoft DAO
3.x Object Library" svp ? je ne comprend pas...



-----Message d'origine-----
Bonjour,
Tu devrais mettre tes déclarations comme suit
Dim dbs as DAO.Database
Dim rst as DAO.Recordset

et charger dans ton projet la Référence Microsoft DAO 3.x
Object Library,

supprimer Microsoft ADO si pas besoin.

A+
Eric

écrivait
news:23f0501c45f70

$5ea58c20$:

bonjour,

j'aimerai, dans un formulaire, afficher la valeur d'un
tuple d'une de mes relations. Pour cela, je veux
utiliser


du VB (plutot que de lier directement le formulaire à
la


table).
Mon code est le suivant :

Private Sub Form_Open(Cancel As Integer)
'ouverture du premier tuple

Dim dbs As Database
Dim rst As Recordset
Set dbs = DBEngine.Workspaces(0).Databases(0)

Set rst = dbs.OpenRecordset("SELECT
C.numeroChambre,


T.taille " _
& "FROM Chambre C, TailleChambre T " _
& "WHERE C.taille=t.idTaille;")

Dim num As Integer
Dim tai As String

num = rst(0)
tai = rst(1)

Me.zn_numero = num
Me.zn_taille = tai

End Sub

A l'exécution, j'ai un message d'erreur "erreur de
compilation : type défini par l'utilisateur non défini"

Quelqu'un aurait-il une idée SVP ?

Merci d'avance



.







Avatar
guillaume
Et bien, merci Eric !! je n'ai pas la moindre idée de ce
qu'est ADO/DAO, mais cela fonctionne désormais! un grand
merci (si si, j'insiste !)



-----Message d'origine-----
Bonjour Guillaume,

Dans la fenêtre VBA (Accès par Alt+F11), menu
Outils/Références.

Tu auras la liste des références chargées. Sélectionnes
Microsoft DAO

3.xx Object Library
Si la référence Microsoft ADO 2.x est cochée, enlèves la
si tu ne

l'utilises pas.

A+
Eric

"Guillaume"
écrivait

news:23fb701c45f78$218cb400$:

J'avais déjà essayé en précisant le DAO avant les
objets,


mais cela ne fonctionne pas non plus.. Qu'entendez-vous
par "charger dans ton projet la Référence Microsoft DAO
3.x Object Library" svp ? je ne comprend pas...



-----Message d'origine-----
Bonjour,
Tu devrais mettre tes déclarations comme suit
Dim dbs as DAO.Database
Dim rst as DAO.Recordset

et charger dans ton projet la Référence Microsoft DAO
3.x



Object Library,
supprimer Microsoft ADO si pas besoin.

A+
Eric

écrivait
news:23f0501c45f70

$5ea58c20$:

bonjour,

j'aimerai, dans un formulaire, afficher la valeur
d'un




tuple d'une de mes relations. Pour cela, je veux
utiliser


du VB (plutot que de lier directement le formulaire à
la


table).
Mon code est le suivant :

Private Sub Form_Open(Cancel As Integer)
'ouverture du premier tuple

Dim dbs As Database
Dim rst As Recordset
Set dbs = DBEngine.Workspaces(0).Databases(0)

Set rst = dbs.OpenRecordset("SELECT
C.numeroChambre,


T.taille " _
& "FROM Chambre C, TailleChambre T " _
& "WHERE C.taille=t.idTaille;")

Dim num As Integer
Dim tai As String

num = rst(0)
tai = rst(1)

Me.zn_numero = num
Me.zn_taille = tai

End Sub

A l'exécution, j'ai un message d'erreur "erreur de
compilation : type défini par l'utilisateur non
défini"





Quelqu'un aurait-il une idée SVP ?

Merci d'avance



.





.