Je ne sais pas ce qu'il en est du groupe de texte créé par VB. Maisil me semble que si à la question "voulez-vous créer un groupe ?" lors du copier-coller, vous répondez oui, cela veut dire que l'objet Text ne désigne plus la zone de texte mais le groupe. Dans ce cas il faut accéder aux objets contenus dans le groupe, et cela n'exclue pas que ceux-ci doivent maintenant être nommés, ou bien être accéder par leur indice d'objet.
Hors les indices d'objets sont globaux pour toute la feuille, et donc un groupe peut très bien avoir des objets dont les indices ne sont pas tous de 1 à N.
Du coup en utilisant Text(i) on ne pointe pas forcément sur la textbox attendue, mais peut-être arfois sur rien du tout. Et on a une erreur au moment où on veut accéder à l'attribut text de Text(i) puisque Text(i) n'est pas un objet...
Le seul moyen est donc de nommer explicitement les textbox du groupe.
C'est ce qu'on fait en JavaScript, où nomme couramment les champs <INPUT> en spécifiant leur ID par exemple:
<INPUT type="text" id="text1" value="">
<INPUT type="text" id="text2" value="">
<INPUT type="text" id="text3" value="">
<INPUT type="text" id="text4" value="">
Et on peut accéder aux valeurs des textbox ainsi:
<SCRIPT type="JavaScript">
function go() {
for(var i=1; i<=4; i++) {
if (eval("document.text"+i).value="" )
return false;
}
return true;
}
</SCRIPT>
Pourquoi faire encore du VB aujourd'hui alors que JavaScript est standardisé et multiplateforme et peut faire exactement la même chose avec du HTML au lieu de ressources VB ?
Et puis le développement en JavaScript peut se faire avec Office directement, sans acheter Visual Basic (si on veut utiliser MSDE pour produire un fichier .CHM avec le HTML compiler, ou pour utiliser les classes ActiveX avec le navigateur d'objets), voire même avec juste le navigateur Web et un éditeur de texte et MsPaint fournis gratuitement avec Windows, ou gratuitement aussi sous Linux en se passant même des ActiveX... (Avec déploiement possible de l'application sur le Web au lieu du PC Windows traditionnel)