problème de déclaration.

Le
bonneau.loic
bonjour,

sous access 2003
j'ai une erreur lors de la compilation de mon code "Menbre de methode
ou de données introuvable"

voici mon code.
Dim r, t As Recordset
Set db = CurrentDb()
Set r = db.OpenRecordset("table1")
Set t = db.OpenRecordset("table2")

r.movefirst
t.addnew
t.champs1=r.champs1
t.update

Mais ci j'ajout un dim a as recordset je n'ai plus d'erreur.

Je voudrais savoir si il y a un moyen d'évité une déclaration d'une
varriable supplaimentaire.

Merci.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
papou
Le #17400211
Bonjour
Tu dois spécifier chaque variable, sinon elle devient Variant.
Donc Dim r, t As Recordset doit devenir :
Dim r As Recordset, Dim t As Recordset.

Cordialement
Pascal


bonjour,

sous access 2003
j'ai une erreur lors de la compilation de mon code "Menbre de methode
ou de données introuvable"

voici mon code.
Dim r, t As Recordset
Set db = CurrentDb()
Set r = db.OpenRecordset("table1")
Set t = db.OpenRecordset("table2")

r.movefirst
t.addnew
t.champs1=r.champs1
t.update

Mais ci j'ajout un dim a as recordset je n'ai plus d'erreur.

Je voudrais savoir si il y a un moyen d'évité une déclaration d'une
varriable supplaimentaire.

Merci.
papou
Le #17401431
Pff, en plus j'ai fait une erreur, donc excuse-moi, il faut rectifier bien
sûr :
Dim r As Recordset, t As Recordset

Cordialement
Pascal

"papou" de news: uP6$
Bonjour
Tu dois spécifier chaque variable, sinon elle devient Variant.
Donc Dim r, t As Recordset doit devenir :
Dim r As Recordset, Dim t As Recordset.

Cordialement
Pascal


bonjour,

sous access 2003
j'ai une erreur lors de la compilation de mon code "Menbre de methode
ou de données introuvable"

voici mon code.
Dim r, t As Recordset
Set db = CurrentDb()
Set r = db.OpenRecordset("table1")
Set t = db.OpenRecordset("table2")

r.movefirst
t.addnew
t.champs1=r.champs1
t.update

Mais ci j'ajout un dim a as recordset je n'ai plus d'erreur.

Je voudrais savoir si il y a un moyen d'évité une déclaration d'une
varriable supplaimentaire.

Merci.



bonneau.loic
Le #17401801
On 2 oct, 15:54, "papou" wrote:
Pff, en plus j'ai fait une erreur, donc excuse-moi, il faut rectifier bie n
sûr :
Dim r As Recordset, t As Recordset

Cordialement
Pascal

"papou" denews: uP6$0eIJJHA.5__BEGIN_MASK_n#9g02mG7!__...__END_MASK_i?a63jfAD$z__ @TK2MSFTNGP05.phx.gbl...



> Bonjour
> Tu dois spécifier chaque variable, sinon elle devient Variant.
> Donc Dim r, t As Recordset doit devenir :
> Dim r As Recordset, Dim t As Recordset.

> Cordialement
> Pascal

> >
> bonjour,

> sous access 2003
> j'ai une erreur lors de la compilation de mon code "Menbre de methode
> ou de données introuvable"

> voici mon code.
> Dim r, t As Recordset
> Set db = CurrentDb()
> Set r = db.OpenRecordset("table1")
> Set t = db.OpenRecordset("table2")

> r.movefirst
> t.addnew
> t.champs1=r.champs1
> t.update

> Mais ci j'ajout un dim a as recordset je n'ai plus d'erreur.

> Je voudrais savoir si il y a un moyen d'évité une déclaration d'u ne
> varriable supplaimentaire.

> Merci.- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Bonjour,

que je fasse
dim t, r as recordset
ou
dim t as recordset, r as recordset
ou
dim t as recordset
dim r as recordset

J'ai toujours le même message d'erreur.

Merci
3stone
Le #17403621
Salut,


> voici mon code.
> Dim r, t As Recordset
> Set db = CurrentDb()
> Set r = db.OpenRecordset("table1")
> Set t = db.OpenRecordset("table2")

> r.movefirst
> t.addnew
> t.champs1=r.champs1
> t.update





Dim db as DAO.database
Dim r as DAO.Recordset, t as DAO.Recordset

Set db = CurrentDb
Set r = db.OpenRecordset("t1")
Set t = db.OpenRecordset("t2")




r.MoveFirst
'inutile car déjà sur le premier
'par contre tu auras une erreur si recordset vide !
'il faut donc tester cela par
'
' if Not r.eof Then


t.AddNew
'ok


t!Champs1 = r!Champ1
'utiliser le point d'exclamation pour les champs

etc...
Ceci dit, une simple requête ajout devrais résoudre le tout plus élégamment.
;-)

| que je fasse
| dim t, r as recordset
|
| ou
| dim t as recordset, r as recordset
| ou
| dim t as recordset
| dim r as recordset
|
| J'ai toujours le même message d'erreur.

Oui, mais le premier est définitivement faux !

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
bonneau.loic
Le #17407671
On 2 oct, 19:04, "3stone"
Salut,




> > voici mon code.
> > Dim r, t As Recordset
> > Set db = CurrentDb()
> > Set r = db.OpenRecordset("table1")
> > Set t = db.OpenRecordset("table2")

> > r.movefirst
> > t.addnew
> > t.champs1=r.champs1
> > t.update

Dim db as DAO.database
Dim r as DAO.Recordset, t as DAO.Recordset

Set db = CurrentDb
Set r = db.OpenRecordset("t1")
Set t = db.OpenRecordset("t2")

r.MoveFirst
        'inutile car déjà sur le premier
        'par contre tu auras une erreur si recordset vide !
        'il faut donc tester cela par
        '
        '  if Not r.eof Then

t.AddNew
        'ok

t!Champs1 = r!Champ1
        'utiliser le point d'exclamation pour les champs

etc...
Ceci dit, une simple requête ajout devrais résoudre le tout plus él égamment.
 ;-)

| que je fasse
|     dim t, r as recordset
|
| ou
|     dim t as recordset, r as recordset
| ou
|     dim t as recordset
|     dim r as recordset
|
| J'ai toujours le même message d'erreur.

Oui, mais le premier est définitivement faux !

--
A+
Pierre (3stone) Access MVP
Perso:http://www.3stone.be/
MPFA:http://www.mpfa.info/ (infos générales)



merci pour ta réppnce
mon problème venait de t.Champs1 = r.Champ1 qui faut que je passe
en t!Champs1 = r!Champ1

(Une requette n'aurait pas était plus simple ceci est pas 1/20 du code
que j'utilise.)
Pour information je ne voit pas pourquoi il ne faut pas utiliser dim
r,t as recordset, ça fonctionne bien, et on utilise bien dim texte1,
texte2, texte3 as string.
Merci à tous
3stone
Le #17411811
Salut,

[...]
| (Une requette n'aurait pas était plus simple ceci est pas 1/20 du code
| que j'utilise.)


S'il est de la même veine...


| Pour information je ne voit pas pourquoi il ne faut pas utiliser dim
| r,t as recordset, ça fonctionne bien, et on utilise bien dim texte1,
| texte2, texte3 as string.


Pour TON information...
Ta déclaration est mauvaise !

et on n'utilise PAS non plus :

Dim texte1, texte2, texte3 As String

Et puisque tu prétends ne pas suivre les conseils et remarques qui
te sont faites, donne toi la peine de lire la doc, on y explique
entre autre comment faire une déclaration correcte dans le VBA.

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
Publicité
Poster une réponse
Anonyme