Condition ne fonctionne pas
Résolu
jobertomeu
Messages postés
1189
Date d'inscription
Statut
Membre
Dernière intervention
-
jobertomeu Messages postés 1189 Date d'inscription Statut Membre Dernière intervention -
jobertomeu Messages postés 1189 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Alors voila, je suis en train de mettre un place un programme de commande de robot à distance. Dans mon soft, j'ai donc deux SerialsPorts(1-2) qui tournent simultanément. Le serialport1 qui est la virtualisation de mon module bluetooth connecté à mon robot. Et le SerialPort2 sur lequel est branché un Arduino avec un recepteur IR. Ce dernier envoie les infos Ir qu'il reçois sur mon COM 3 qui est donc mon serialPort2.
Lorsque je recois les infos, je veux donc les comparer ( si je recois une info Y de l'arduino, cela signifie qu'on a appuyé sur le bouton 2 de la télécommande, donc, cela veut dire que je veux faire avancer le robot ), je réceptionne donc mes données envoyées par l'arduino via SerialPort2 donc, et je fais ça :
-> Avec C1AA0DF2 qui correspond à ma touche 2. Lorsque j'exécute mon code, mon "OKAY" ne s'affiche pas, mais ma variable inputData s'affiche bien, et elle vaut .. C1AA0DF2
Je ne comprend plus rien .. Si vous pouviez m'aider ..
Alors voila, je suis en train de mettre un place un programme de commande de robot à distance. Dans mon soft, j'ai donc deux SerialsPorts(1-2) qui tournent simultanément. Le serialport1 qui est la virtualisation de mon module bluetooth connecté à mon robot. Et le SerialPort2 sur lequel est branché un Arduino avec un recepteur IR. Ce dernier envoie les infos Ir qu'il reçois sur mon COM 3 qui est donc mon serialPort2.
Lorsque je recois les infos, je veux donc les comparer ( si je recois une info Y de l'arduino, cela signifie qu'on a appuyé sur le bouton 2 de la télécommande, donc, cela veut dire que je veux faire avancer le robot ), je réceptionne donc mes données envoyées par l'arduino via SerialPort2 donc, et je fais ça :
If (inputData = "C1AA0DF2") Then MsgBox("OKAY") End If MsgBox(inputData)
-> Avec C1AA0DF2 qui correspond à ma touche 2. Lorsque j'exécute mon code, mon "OKAY" ne s'affiche pas, mais ma variable inputData s'affiche bien, et elle vaut .. C1AA0DF2
Je ne comprend plus rien .. Si vous pouviez m'aider ..
A voir également:
- Condition ne fonctionne pas
- Excel cellule couleur si condition texte - Guide
- Excel condition ou - Guide
- Nbval avec condition ✓ - Forum Excel
- Je ne suis pas un robot confidentialité - conditions - Forum Facebook
- Condition optimale téléphone ✓ - Forum Mobile
2 réponses
Bonjour,
Affiches la variable inputData en l'encadrant de cette manière
ça te permettra de vérifier qu'il qu'il n'y a pas d'espaces et la longueur de la chaine.
Verifies aussi que tu as bien tapé un 0 (zéro) et non un O (o majuscule).
A+
Affiches la variable inputData en l'encadrant de cette manière
If (inputData = "C1AA0DF2") Then MsgBox("OKAY") End If MsgBox "-" & inputData & "-" & " longueur: " & len(inputData)
ça te permettra de vérifier qu'il qu'il n'y a pas d'espaces et la longueur de la chaine.
Verifies aussi que tu as bien tapé un 0 (zéro) et non un O (o majuscule).
A+
Merci beaucoup d'avoir répondu, en effet, tu avais raison, je viens juste de résoudre mon problème, en fin de compte, je recevais bien "C1AA0DF2" MAIS avec un Retour chariot à la fin, donc dans ma msgbox, la valeur de ma variable s'affichait bien, mais le RC n'apparaissait pas. J'ai donc fait :
Voila, merci beaucoup, sujet résolut !
Dim donnee_a_comparer As String = "C1AA0DF2" & vbCrLf & "" If (inputData = donnee_a_comparer) Then MsgBox("OKAY") End If MsgBox(inputData)
Voila, merci beaucoup, sujet résolut !