Programme vba

nab33 Messages postés 7 Date d'inscription jeudi 6 novembre 2014 Statut Membre Dernière intervention 14 novembre 2014 - Modifié par jordane45 le 12/11/2014 à 00:25
acive Messages postés 122 Date d'inscription vendredi 29 août 2014 Statut Membre Dernière intervention 14 décembre 2016 - 12 nov. 2014 à 00:35
Bonjour,

Puis-je savoir si ce programme fonctionne pour recevoir des données de COM1 ?
Private Sub CommandButton1_Click()
Beep

'Vider le buffer
MSComm1.InBufferCount = 0

'choisir un port série
MSComm1.CommPort = 1 'Ici

'Balance
'2400 bauds, parité, 7 bits de données, 1 bit d'arrêt
MSComm1.Settings = "9600,0,8,2" 'Ici

' indique au contrôle qu'il doit lire 1 seul caractère
'ce caractère sert à repérer la stabilisation de la balance
MSComm1.InputLen = 1  'Ici

'ouvre le port
MSComm1.PortOpen = True

'affiche un message
UserForm1.Label2.Visible = True
UserForm1.Repaint

'Boucle tant que le 1er caractère n'est pas un signe plus (+)
Do While MSComm1.Input <> "+" 'Ici
    Label1.Caption = "Rien reçu !"
    UserForm1.Repaint
Loop
UserForm1.Label2.Visible = False
UserForm1.Repaint

'lecture sur le port des 5 1ers caractères et stockage dans la boite de dialogue et dans la feuille active
MSComm1.InputLen = 10
    Label1.Caption = MSComm1.Input
    ActiveCell.Value = CSng(Label1.Caption)
    ActiveCell.Offset(1, 0).Select

'ferme le port
MSComm1.PortOpen = False  'Ici

End Sub


Private Sub CommandButton2_Click()
Unload Me
End Sub

Private Sub UserForm_Click()

End Sub



EDIT : Ajout des balises de code (jordane)

3 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
6 nov. 2014 à 19:02
Bonjour,
Lorsque l'on veut savoir si un programme fonctionne, on le lance et on constate soi-même. Qu'as-tu constaté ?
(ce forum n'est pas un forum de recherche de testeurs qui feront ce travail de test à ta place).
0
acive Messages postés 122 Date d'inscription vendredi 29 août 2014 Statut Membre Dernière intervention 14 décembre 2016
Modifié par acive le 12/11/2014 à 00:29
Bonjour,
1) Quand tu postes du code sur le forum, utilise les balises code /code sinon on a l'impression de lire un fichier texte en codes ascii...

2) Concernant ta question : 'si ce programme fonctionne pour recevoir des données de COM1 ?'
Qui est derrière le COM1 ? Quel est le protocole de communication ?

3) ce que je vois dans ton code (à la volée rapidement) :
'2400 bauds, parité, 7 bits de données, 1 bit d'arrêt 
MSComm1.Settings = "9600,0,8,2" 'Ici

- On t'a mis en commentaire :
2400 bauds
7 bits de données
1 bit d'arrêt
Or toi, tu as écrit :
9600 bauds
8 bits de données
2 bits d'arrêt

Il y a des erreurs... cherche-les...

Sinon j'aurais voulu t'aider plus mais ma boule de cristal s'est cassée (mes chats sont encore montés sur le bureau)

A +
0
acive Messages postés 122 Date d'inscription vendredi 29 août 2014 Statut Membre Dernière intervention 14 décembre 2016
Modifié par acive le 12/11/2014 à 00:36
Ahh... tu as déjà rectifié ma question numéo 1. C'est bien.
0
Rejoignez-nous