Selection de caractères dans textbox lors d'une boucle [Résolu]

foussouy 55 Messages postés dimanche 14 août 2011Date d'inscription 1 février 2013 Dernière intervention - 8 janv. 2013 à 19:39 - Dernière réponse : foussouy 55 Messages postés dimanche 14 août 2011Date d'inscription 1 février 2013 Dernière intervention
- 9 janv. 2013 à 17:26
Bonsoir,
Voilà ^^, je dispose de 6 textbox et je veux sélectionner les 12 et 13ème caractère et j'utilise d'habitude cette commande :
Textbox1.select(12, 2)

Cela fait 20 minutes que j'essaie de sélectionner une partie de ces textbox dans une boucle For...to....next pour éviter d'avoir à taper toutes les lignes de code mais une exception est générée :

For i = 1 To 6
            Me.Controls("textbox" & i).Select(12, 2)
        Next


Voici l'exception :

La résolution de surcharge a échoué, car aucun 'Select' accessible n'accepte ce nombre d'arguments.

Help please
Merci d'avance comme d'habitude :)
Afficher la suite 

Votre réponse

11 réponses

Meilleure réponse
cs_ShayW 3238 Messages postés jeudi 26 novembre 2009Date d'inscription 14 mars 2018 Dernière intervention - 8 janv. 2013 à 23:45
3
Merci
tiens

For k = 1 To 6
    For Each ctrl In Me.Controls
       If TypeOf ctrl Is TextBox Then
          If DirectCast(ctrl, TextBox).Name = "TextBox" & k.ToString Then
          DirectCast(ctrl, TextBox).Select(12, 2)
              Exit For
          End If
       End If
    Next
Next

Merci cs_ShayW 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de cs_ShayW
cs_ShayW 3238 Messages postés jeudi 26 novembre 2009Date d'inscription 14 mars 2018 Dernière intervention - 8 janv. 2013 à 22:14
0
Merci
Salut
For i = 0 To Me.Controls.Count - 1
                If Me.Controls(i).Name = "TextBox" & i.ToString Then
                    DirectCast(Me.Controls(i), TextBox).Select(12, 2)
                End If
            Next


l'inconvenient est que tu ne peux pas controler
l'ordre de tes texboxes dans la boucle
la boucle scanne les controls de ta form
si c'est un textbox alors select(12,2)
ce n'est pas forcement dans l'ordre voulu

peut etre il y a comme tu veux
Commenter la réponse de cs_ShayW
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 8 janv. 2013 à 22:25
0
Merci
Bonjour,
Toutes ces textboxes :
- sont-elles dans le même container ?
- contiennent-elles une chaîne de longueur suffisante ?

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
Commenter la réponse de ucfoutu
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 8 janv. 2013 à 22:34
0
Merci
Et (on ne sait jamais) : où ce code figure-t-il exactement dans ton projet ?


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
Commenter la réponse de ucfoutu
foussouy 55 Messages postés dimanche 14 août 2011Date d'inscription 1 février 2013 Dernière intervention - 8 janv. 2013 à 22:58
0
Merci
- Le code se trouve dans l'évènement click d'un bouton.
- Elle ont un maximum de 50 caractère
- Elle sont toutes dans la Form1.vb
Merci de votre aide :)

ShayW
Ton code marche mais effectivement je ne peux pas contrôler l'ordre des textbox ce qui est fort ennuyant car elles ont un ordre bien précis :s
Commenter la réponse de foussouy
foussouy 55 Messages postés dimanche 14 août 2011Date d'inscription 1 février 2013 Dernière intervention - 9 janv. 2013 à 16:53
0
Merci
Merci ce code marche !
Mais j'ai un dernier petit soucis et je viens de m'en apercevoir ^^
J'ai au total environ 500 textbox éparpillé dans un tabcontrol.
J'en ai crée 30 et je veux faire un copier coller mais le problème c'est que le logiciel lorsque je colle les textbox inverse le numéro de textbox.
Je m'explique

Je copie : Textbox1, textbox2,.........,textbox30
Et lorsque je colle le logiciel le fait dans cette ordre : Textbox60, textbox59........,textbox31 :s
Il y aurait-il un moyen de paramétrer le logiciel de sorte à ce qu'il les colle en continu ?
Commenter la réponse de foussouy
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 9 janv. 2013 à 17:13
0
Merci
Attends-là ..
Veux-tu finalement dire que les 6 textboxes dont tu parles depuis le début ne sont pas directement sur ton Form, mais dans un tabcontrol ?
En dépit du fait que, interrogé, tu m'as répondu :
sont toutes dans la Form1.vb

Pas étonnant, dans ce cas que ta collection
Me.controls

les ignorait !
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
Commenter la réponse de ucfoutu
foussouy 55 Messages postés dimanche 14 août 2011Date d'inscription 1 février 2013 Dernière intervention - 9 janv. 2013 à 17:15
0
Merci
Non ça c'était le projet de départ mais maintenant que j'ai eu le code je viens de faire un peu de design et mise en forme dans un tabcontrol mais à l'origine oui il étaient sur la form.
Commenter la réponse de foussouy
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 9 janv. 2013 à 17:16
0
Merci
Car la collection concernée ne devait alors pas être
Me.controls
mais très probablement (si toto est le nom du tabcontrol)
toto.Controls


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
Commenter la réponse de ucfoutu
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 9 janv. 2013 à 17:18
0
Merci
Ah === Croisés !
Dans ce cas : ta nouvelle question est sans rapport avec le sujet ouvert et devrait donc faire l'objet d'une discussion distincte.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
Commenter la réponse de ucfoutu
foussouy 55 Messages postés dimanche 14 août 2011Date d'inscription 1 février 2013 Dernière intervention - 9 janv. 2013 à 17:26
0
Merci
Ok merci je vais clore cette discussion et en ouvrir une autre.
Merci de votre aide a vous deux ^^
Commenter la réponse de foussouy

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.