Ok... Merci
Je n'avais pas mis de boucle While, c'est donc fait...
Mais en fait après While, j'utilise Do...
Ce qui me donne le code suivant :
If Not IsNull(oDonnees) Then REM
While oDonnees.next REM
Do
execOK = oDonnees.next
Print oDonnees.getString(3)
nbP = nbP+1
Loop until oDonnees.isLast
Wend REM
End If REM
Le problème avec ce code est qu'il m'oublie la première ligne de données
passant directement à la seconde jusqu'à la fin du tableau
N'étant pas très doué.... je n'arrive pas à corriger cette erreur...
comme ça à vue de nez et sans OOo sous la main pour tester, je dirais :
nbP = 0
If Not IsNull(oDonnees) Then
While oDonnees.next
nbP = nbP + 1
Print oDonnees.getString(3)
Wend
End If
(si nbP sert à compter le nombre de résultats dans oDonnees)
à vérifier.
on est dans le l'exemple intéressant de la différence fondamentale entre
WHILE ... WEND et DO ... LOOP UNTIL :
dans le premier cas, la boucle n'est parcourue que si le test est vrai,
alors que dans le second cas, la boucle est parcourue au moins une fois
quelle que soit la valeur du test.
Pour ton cas, tu ne souhaites pas parcourir la boucle si oDonnees est vide.
Manuel