Le seul moyen que je vois, tel que vous le pensez, est la MessageBox comme vous l'avez fait.
Je ne choisirai pas cette approche. En tant qu'utilisateur je trouverais lassant de devoir, à chaque résultat partiel, cliquer sur un bouton pour voir la suite. Je verrais plutôt de remplir une table avec tous les résultats.
Mais ne connaissant pas exactement votre projet il est difficile de donner des conseils concrets. Mais stopper le programme dans une boucle n'est, à mon avis, pas judicieux. Ce n'est que mon point de vue, mais je cherche toujours d'avoir le moins de clicks possible pour obtenir des résultats.
Meilleures salutations.