2017-05-15 1 views
0

Peut-être que cette question est assez basique, mais je pense qu'il est important de la comprendre.VBA/Access: Comment un jeu d'enregistrements DAO est-il représenté?

En supposant que nous effectuons une requête de base de données qui se traduira par un jeu de résultats à la recherche comme ceci:

[A1][B1][C1][D1][E1][F1] 

[A2][B2][C2][D2][E2][F2] 

[A3][B3][C3][D3][E3][F3] 

Ainsi, l'indice du numéro est le représentant de la ligne, l'indice LETTRE représente la colonne.

Donc, l'ensemble de résultats serait-il un tableau?

Comment pourrais-je par ex. accéder à la deuxième rangée?

+2

Chose intéressante, le dossier est en quelque sorte d'un tableau. Si vous le stockez dans un tableau en utilisant la méthode .getrows, la sortie est réellement transposée. C'était plutôt frustrant de savoir au début. –

Répondre

1

accès à la troisième colonne (0,1,2)

recordset.fields(2) 

ou

recordset.fields("fieldName") 

Aller à l'enregistrement suivant (ligne)

recordset.movenext 

passage à un enregistrement spécifique

recordset.move 
+1

merci! ça a aidé. – mffm

2

Voici comment vous devez accéder à un enregistrement particulier

rs.MoveFirst 
rs.Move 2 

ou

dim TestValue as long 
TestValue = 2 
Do While True 
    If rs!TestField = TestValue Then Exit Do 
    rs.MoveNext 
    If rs.EOF then Exit Do 
Loop 

ou

rs.AbsolutePosition = 2