j'ai regard=E9 la m=E9thode getrows dans l'aide access mais=20
tout n'est pas clair pour moi.
Puis je r=E9cup=E9rer le r=E9sultat de cette fonction dans un=20
tableau variant ?
est il possible de ne r=E9cup=E9rer qu'une colonne sur les 2=20
renvoy=E9es par getrows ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Eric
Bonjour Pierref
Je viens de regarder cette méthode. En fait GetRows te renvoie tous les champs de ton select(ou de ta table) dans un tableau de type variant bidemensionnel. Le 1er indice te donne le contenu de l'enregistrement lu, le 2eme son numero de ligne. Le 1er champ du tableau créé est en fait la concaténation de tous les champs du recordset avec certainement un séparateur pour que tu puisses les extraire facilement (ou encore un tableau).
Ainsi dans la Sub ci-dessous je crée un recordset contenant 3 champs sur une table de 62 enregistrements (et 12 champs)
Sub test() Dim sql As String, rs As DAO.Recordset, i As Integer, nb As Integer, Temp sql = "select societe_client, ville_client, telephone_client from tclient;" Set rs = CurrentDb.OpenRecordset(sql) rs.MoveLast: rs.MoveFirst ' pour connaitre RecordCount Temp = rs.GetRows(rs.RecordCount) ' je veux récuperer tous les enreg For i = 0 To UBound(Temp, 2) nb = nb + 1 Debug.Print Temp(0, i), Debug.Print Temp(1, i), Debug.Print Temp(2, i) Next i Debug.Print "Nb d'enreg récupérés : " & nb End Sub
Temp(0,i), Temp(1,i), Temp(2,i) permet d'extraire chacun des champs de la 1ere composante(ce qui correspond à l'enregistrement Societe_Client & Ville_Client & Telephone_Client) de la ligne i du tableau Temp. Ca te permet de préciser quel élément du recordset tu veux manipuler.
est il possible de ne récupérer qu'une colonne sur les 2 renvoyées par getrows ? Non je ne pense pas mais ca ne doit pas être un handicap
Seule la 1ere colonne contient l'info à retraiter, la 2eme donne le rang de l'info, ce qui te permet eventuellement d'y accéder des lors que tu connais le numéro d'enregistrement. Par exemple : Debug.Print Temp(2, 9) me retourne le num de téléphone de la 10° société
Est ce plus clair ?
Eric
"pierref" écrivait news:437901c42b76$20b4ed80$:
bonjour,
j'ai regardé la méthode getrows dans l'aide access mais tout n'est pas clair pour moi. Puis je récupérer le résultat de cette fonction dans un tableau variant ?
merci et a+
Bonjour Pierref
Je viens de regarder cette méthode. En fait GetRows te renvoie tous les
champs de ton select(ou de ta table) dans un tableau de type variant
bidemensionnel. Le 1er indice te donne le contenu de l'enregistrement lu,
le 2eme son numero de ligne.
Le 1er champ du tableau créé est en fait la concaténation de tous les
champs du recordset avec certainement un séparateur pour que tu puisses
les extraire facilement (ou encore un tableau).
Ainsi dans la Sub ci-dessous je crée un recordset contenant 3 champs sur
une table de 62 enregistrements (et 12 champs)
Sub test()
Dim sql As String, rs As DAO.Recordset, i As Integer, nb As Integer,
Temp
sql = "select societe_client, ville_client, telephone_client from
tclient;"
Set rs = CurrentDb.OpenRecordset(sql)
rs.MoveLast: rs.MoveFirst ' pour connaitre RecordCount
Temp = rs.GetRows(rs.RecordCount) ' je veux récuperer tous les enreg
For i = 0 To UBound(Temp, 2)
nb = nb + 1
Debug.Print Temp(0, i),
Debug.Print Temp(1, i),
Debug.Print Temp(2, i)
Next i
Debug.Print "Nb d'enreg récupérés : " & nb
End Sub
Temp(0,i), Temp(1,i), Temp(2,i) permet d'extraire chacun des champs de la
1ere composante(ce qui correspond à l'enregistrement Societe_Client &
Ville_Client & Telephone_Client) de la ligne i du tableau Temp. Ca te
permet de préciser quel élément du recordset tu veux manipuler.
est il possible de ne récupérer qu'une colonne sur les 2
renvoyées par getrows ?
Non je ne pense pas mais ca ne doit pas être un handicap
Seule la 1ere colonne contient l'info à retraiter, la 2eme donne le
rang de l'info, ce qui te permet eventuellement d'y accéder des lors que
tu connais le numéro d'enregistrement. Par exemple : Debug.Print Temp(2,
9) me retourne le num de téléphone de la 10° société
j'ai regardé la méthode getrows dans l'aide access mais
tout n'est pas clair pour moi.
Puis je récupérer le résultat de cette fonction dans un
tableau variant ?
Je viens de regarder cette méthode. En fait GetRows te renvoie tous les champs de ton select(ou de ta table) dans un tableau de type variant bidemensionnel. Le 1er indice te donne le contenu de l'enregistrement lu, le 2eme son numero de ligne. Le 1er champ du tableau créé est en fait la concaténation de tous les champs du recordset avec certainement un séparateur pour que tu puisses les extraire facilement (ou encore un tableau).
Ainsi dans la Sub ci-dessous je crée un recordset contenant 3 champs sur une table de 62 enregistrements (et 12 champs)
Sub test() Dim sql As String, rs As DAO.Recordset, i As Integer, nb As Integer, Temp sql = "select societe_client, ville_client, telephone_client from tclient;" Set rs = CurrentDb.OpenRecordset(sql) rs.MoveLast: rs.MoveFirst ' pour connaitre RecordCount Temp = rs.GetRows(rs.RecordCount) ' je veux récuperer tous les enreg For i = 0 To UBound(Temp, 2) nb = nb + 1 Debug.Print Temp(0, i), Debug.Print Temp(1, i), Debug.Print Temp(2, i) Next i Debug.Print "Nb d'enreg récupérés : " & nb End Sub
Temp(0,i), Temp(1,i), Temp(2,i) permet d'extraire chacun des champs de la 1ere composante(ce qui correspond à l'enregistrement Societe_Client & Ville_Client & Telephone_Client) de la ligne i du tableau Temp. Ca te permet de préciser quel élément du recordset tu veux manipuler.
est il possible de ne récupérer qu'une colonne sur les 2 renvoyées par getrows ? Non je ne pense pas mais ca ne doit pas être un handicap
Seule la 1ere colonne contient l'info à retraiter, la 2eme donne le rang de l'info, ce qui te permet eventuellement d'y accéder des lors que tu connais le numéro d'enregistrement. Par exemple : Debug.Print Temp(2, 9) me retourne le num de téléphone de la 10° société
Est ce plus clair ?
Eric
"pierref" écrivait news:437901c42b76$20b4ed80$:
bonjour,
j'ai regardé la méthode getrows dans l'aide access mais tout n'est pas clair pour moi. Puis je récupérer le résultat de cette fonction dans un tableau variant ?
merci et a+
pierref
je te remercie. C'est tres clair, d'autant plus que tu as mis un exemple. je m'y colle tout de suite. A+
-----Message d'origine----- Bonjour Pierref
Je viens de regarder cette méthode. En fait GetRows te renvoie tous les
champs de ton select(ou de ta table) dans un tableau de type variant
bidemensionnel. Le 1er indice te donne le contenu de l'enregistrement lu,
le 2eme son numero de ligne. Le 1er champ du tableau créé est en fait la concaténation de tous les
champs du recordset avec certainement un séparateur pour que tu puisses
les extraire facilement (ou encore un tableau).
Ainsi dans la Sub ci-dessous je crée un recordset contenant 3 champs sur
une table de 62 enregistrements (et 12 champs)
Sub test() Dim sql As String, rs As DAO.Recordset, i As Integer, nb As Integer,
Temp sql = "select societe_client, ville_client, telephone_client from
tclient;" Set rs = CurrentDb.OpenRecordset(sql) rs.MoveLast: rs.MoveFirst ' pour connaitre RecordCount Temp = rs.GetRows(rs.RecordCount) ' je veux récuperer tous les enreg
For i = 0 To UBound(Temp, 2) nb = nb + 1 Debug.Print Temp(0, i), Debug.Print Temp(1, i), Debug.Print Temp(2, i) Next i Debug.Print "Nb d'enreg récupérés : " & nb End Sub
Temp(0,i), Temp(1,i), Temp(2,i) permet d'extraire chacun des champs de la
1ere composante(ce qui correspond à l'enregistrement Societe_Client &
Ville_Client & Telephone_Client) de la ligne i du tableau Temp. Ca te
permet de préciser quel élément du recordset tu veux manipuler.
est il possible de ne récupérer qu'une colonne sur les 2
renvoyées par getrows ? Non je ne pense pas mais ca ne doit pas être un
handicap
Seule la 1ere colonne contient l'info à retraiter, la 2eme donne le
rang de l'info, ce qui te permet eventuellement d'y accéder des lors que
tu connais le numéro d'enregistrement. Par exemple : Debug.Print Temp(2,
9) me retourne le num de téléphone de la 10° société
Est ce plus clair ?
Eric
"pierref" écrivait news:437901c42b76$20b4ed80$:
bonjour,
j'ai regardé la méthode getrows dans l'aide access mais tout n'est pas clair pour moi. Puis je récupérer le résultat de cette fonction dans un tableau variant ?
merci et a+
.
je te remercie. C'est tres clair, d'autant plus que tu as
mis un exemple.
je m'y colle tout de suite. A+
-----Message d'origine-----
Bonjour Pierref
Je viens de regarder cette méthode. En fait GetRows te
renvoie tous les
champs de ton select(ou de ta table) dans un tableau de
type variant
bidemensionnel. Le 1er indice te donne le contenu de
l'enregistrement lu,
le 2eme son numero de ligne.
Le 1er champ du tableau créé est en fait la concaténation
de tous les
champs du recordset avec certainement un séparateur pour
que tu puisses
les extraire facilement (ou encore un tableau).
Ainsi dans la Sub ci-dessous je crée un recordset
contenant 3 champs sur
une table de 62 enregistrements (et 12 champs)
Sub test()
Dim sql As String, rs As DAO.Recordset, i As Integer,
nb As Integer,
Temp
sql = "select societe_client, ville_client,
telephone_client from
tclient;"
Set rs = CurrentDb.OpenRecordset(sql)
rs.MoveLast: rs.MoveFirst ' pour connaitre RecordCount
Temp = rs.GetRows(rs.RecordCount) ' je veux récuperer
tous les enreg
For i = 0 To UBound(Temp, 2)
nb = nb + 1
Debug.Print Temp(0, i),
Debug.Print Temp(1, i),
Debug.Print Temp(2, i)
Next i
Debug.Print "Nb d'enreg récupérés : " & nb
End Sub
Temp(0,i), Temp(1,i), Temp(2,i) permet d'extraire chacun
des champs de la
1ere composante(ce qui correspond à l'enregistrement
Societe_Client &
Ville_Client & Telephone_Client) de la ligne i du tableau
Temp. Ca te
permet de préciser quel élément du recordset tu veux
manipuler.
est il possible de ne récupérer qu'une colonne sur les
2
renvoyées par getrows ?
Non je ne pense pas mais ca ne doit pas être un
handicap
Seule la 1ere colonne contient l'info à retraiter,
la 2eme donne le
rang de l'info, ce qui te permet eventuellement d'y
accéder des lors que
tu connais le numéro d'enregistrement. Par exemple :
Debug.Print Temp(2,
9) me retourne le num de téléphone de la 10° société
j'ai regardé la méthode getrows dans l'aide access mais
tout n'est pas clair pour moi.
Puis je récupérer le résultat de cette fonction dans un
tableau variant ?
je te remercie. C'est tres clair, d'autant plus que tu as mis un exemple. je m'y colle tout de suite. A+
-----Message d'origine----- Bonjour Pierref
Je viens de regarder cette méthode. En fait GetRows te renvoie tous les
champs de ton select(ou de ta table) dans un tableau de type variant
bidemensionnel. Le 1er indice te donne le contenu de l'enregistrement lu,
le 2eme son numero de ligne. Le 1er champ du tableau créé est en fait la concaténation de tous les
champs du recordset avec certainement un séparateur pour que tu puisses
les extraire facilement (ou encore un tableau).
Ainsi dans la Sub ci-dessous je crée un recordset contenant 3 champs sur
une table de 62 enregistrements (et 12 champs)
Sub test() Dim sql As String, rs As DAO.Recordset, i As Integer, nb As Integer,
Temp sql = "select societe_client, ville_client, telephone_client from
tclient;" Set rs = CurrentDb.OpenRecordset(sql) rs.MoveLast: rs.MoveFirst ' pour connaitre RecordCount Temp = rs.GetRows(rs.RecordCount) ' je veux récuperer tous les enreg
For i = 0 To UBound(Temp, 2) nb = nb + 1 Debug.Print Temp(0, i), Debug.Print Temp(1, i), Debug.Print Temp(2, i) Next i Debug.Print "Nb d'enreg récupérés : " & nb End Sub
Temp(0,i), Temp(1,i), Temp(2,i) permet d'extraire chacun des champs de la
1ere composante(ce qui correspond à l'enregistrement Societe_Client &
Ville_Client & Telephone_Client) de la ligne i du tableau Temp. Ca te
permet de préciser quel élément du recordset tu veux manipuler.
est il possible de ne récupérer qu'une colonne sur les 2
renvoyées par getrows ? Non je ne pense pas mais ca ne doit pas être un
handicap
Seule la 1ere colonne contient l'info à retraiter, la 2eme donne le
rang de l'info, ce qui te permet eventuellement d'y accéder des lors que
tu connais le numéro d'enregistrement. Par exemple : Debug.Print Temp(2,
9) me retourne le num de téléphone de la 10° société
Est ce plus clair ?
Eric
"pierref" écrivait news:437901c42b76$20b4ed80$:
bonjour,
j'ai regardé la méthode getrows dans l'aide access mais tout n'est pas clair pour moi. Puis je récupérer le résultat de cette fonction dans un tableau variant ?