Text_change... mais comment faire???

Résolu
Sator1 Messages postés 30 Date d'inscription vendredi 27 août 2004 Statut Membre Dernière intervention 18 août 2008 - 17 juil. 2008 à 07:14
Sator1 Messages postés 30 Date d'inscription vendredi 27 août 2004 Statut Membre Dernière intervention 18 août 2008 - 18 juil. 2008 à 10:38
Voilà mon problème, simple; mais qui prend une alure de casse-tête...

j'ai 2 champs text... le fait est, que quand je change la valeur du champ text1 je veux changer la valeur du text2, et quand je veux rentrer des valeur dans le text2 la valeur du text1 change...

imaginons que je rentre 1 dans le text2, le text1 doit me mette le n° 1, quand je rentre une valeur comprise entre 1 et 100000 dans le text1 le text2 me mette toujours 1, mais quand je met 2 dans le text2 le text1 me mette 150000 par exemple mon problème en fait c'est que ça fait boucle... si vous m'avez suivi... exist-il un moyen pour désactiver un des "change" ???

je suis pas sûre de m'être bien exprimer... mais si jamais... vous n'avez pas tout compris je comprendrai... donc n'hésitez pas à poser des questions... merci pour votre attention

@+ Sator

7 réponses

jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
17 juil. 2008 à 10:01
Bonjour,

ou plus directement :

Private Sub Text1_Change()
 Text2.Text = ActiveControl.Text
End Sub

Private Sub Text2_Change()
 Text1.Text = ActiveControl.Text
End Sub

(si les modifications dans l'un ou l'autre sont le fait d'une intervention de l'utilisateur... sinon ==>> acrobatie nécessaire).
Tu aurais par contre intérêt à utiliser un groupe de contrôles indexés Text1(0) et Text1(1) et alors :

Private Sub Text1_Change(Index As Integer)  ou IIf(Index 0, 1, 0)
  Text1(ou) = ActiveControl.Text
End Sub
3
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
17 juil. 2008 à 07:50
joues avec un Flag,
ou testes le controle actif, lors des modifs...

Private Sub Text1_Change
    If Me.ActiveControl Is Text1 Then
          Text2 .....
    End If
End Sub

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
17 juil. 2008 à 10:04
pas l'impression que ce soit tant une recopie, il y a l'air d'y avoir un test...

Si Text1 Actif Alors
Text2.Text = 1+ Text1.Text \ 100000
Fin Si
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
17 juil. 2008 à 14:51
salut,

Renfield :

pourquoi faire ce test => If Me.ActiveControl Is Text1 Then ?
Y'aurait-il une subtilité dans tout ça qui m'échapperait ?

Merci pour l'info

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
17 juil. 2008 à 14:59
l'idée (de ce que j'ai compris)

si on modifie Text1, Text2 est modifié en retour, et inversement (y'a un calcul lambda).

je modifie le contenu de Text1.
l'evenement Text1_Change se déclenche.
Le calcul lambda1 effectué, j'impacte le contenu de Text2

l'evenement Text2_Change se déclenche.
Le calcul lambda2 effectué, j'impacte le contenu de Text1

l'evenement Text1_Change se déclenche.
Le calcul lambda1 effectué, j'impacte le contenu de Text2

l'evenement Text2_Change se déclenche.
Le calcul lambda2 effectué, j'impacte le contenu de Text1

et ce petit jeu pourrait durer un moment.

l'idée, ici, est de tester le controle actif, lors du _Change.
Ca permet de savoir si c'est l'utilisateur ou le code qui est a l'origine du déclenchement de l'evenement.
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
17 juil. 2008 à 15:27
Bien vu, je ne pensais pas aux modifications apportées par code..

Effectivement, ça peut durer un moment, ce jeu de 'jonglage' entre contrôles !
Merci pour ta précision

@++

le mystérieux chevalier,"Provençal, le gaulois"
Forum Office & VBA
0
Sator1 Messages postés 30 Date d'inscription vendredi 27 août 2004 Statut Membre Dernière intervention 18 août 2008
18 juil. 2008 à 10:38
En fait je fait un prog de probabilité sur l'euromillion...

j'ai généré  toute les solutions des tirages chiffres. donc ce que je veux c'est que quand je note que je veux une solution comprise entre 1741769 et 1794128 (dans le text1)  il me dise que le premier nombre de la série est 15 (dans le text5)
mais en suposant que je mette 15 dans le text5 il faut qu'il m'indique que la première soluce est 1741769 dans le text1, voilà....

Dès que j'aurai testé vos soluces. je mettrai "réponse acceptée". Merci pour votre attention.
@+ Sator
0
Rejoignez-nous