IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Lire données RS232 en VBA


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Janvier 2014
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Janvier 2014
    Messages : 4
    Par défaut Lire données RS232 en VBA
    Bonjour à tous

    Pour commencer une petite question : Quand j'avais des questions en VBA j'avais pour habitude de les poser sur un autre forum (dont j'ai oublié l nom, étant donné que j'y allais moins d'une fois par an) plutôt orienté VB, mais je n'arrive plus à le retrouver. Quelqu'un saurait si il a disparu ?

    Je me suis donc réinscris ici pour venir vous poser mes questions...

    Aujourd'hui je travaille sur une petite application qui permet de récupérer des pesées d'une balance.

    Après de nombreux essais j'ai fini par trouver un activeX qui semble fonctionner : XMComm (http://home.comcast.net/~hardandsoftware/xmcomm.htm)

    Toutefois je rencontre un problème étrange. Quand j'utilise le COM1 j'ai systématiquement un message d'erreur "port already open" au moment de l'ouvrir, bien qu'en exécutant mon appli pas à pas le port soit fermé juste avant d’en demander l'ouverture. Avec le COM3 je n'ai pas cette erreur.

    Voici mon code récupéré d'une page, et pas encore adapté à mon besoin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Private Sub CommandButton1_Click()
     
     ' Tampon devant contenir la chaîne d'entrée
     Dim Instring As String
     ' Utilise COM1.
      With UserForm1.XMComm1
     
      .CommPort = 1
     ' 9600 bauds, pas de parité, 8 bits de données et 1 bit d'arrêt.
      .Settings = "9600,N,8,1"
     ' Indique au contrôle qu'il doit lire la totalité
     ' du tampon si la propriété Input est utilisée.
      .InputLen = 0
     ' Ouvre le port.
      .PortOpen = True
     ' Envoie la commande Attention au modem.
     .Output = "ATV1Q0" & Chr$(13) ' Vérifie que
     'le modem répond "OK"
     ' Attend le retour des données vers le port série.
     Do
     DoEvents
     Buffer$ = Buffer$ & .InputData
     Loop Until InStr(Buffer$, "OK" & vbCrLf)
     ' Lit les données composant la réponse "OK" au niveau du port série.
     ' Ferme le port série.
     .PortOpen = False
     
     End With
     
    End Sub
    L'application plante sur la ligne 15.

    Merci d'avance pour vos réponses.

  2. #2
    Invité
    Invité(e)
    Par défaut
    L'electronique est plus lente que le serveau de ton pc il faut lui aménager du temps quelque miliseconde une boucle de 1 à 100 avec un doevent entre chaque requete

  3. #3
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2007
    Messages : 2
    Par défaut Piloter une balance via BillRedirect
    Bonjour,

    La meilleur façon que nous avons trouvé pour récupérer le poids d'une balance en VBA Excel c'est via le logiciel Bill Redirect de la société www.BillProduction.com . Leur logiciel offre la possibilité de rapidement communiquer avec une balance RS232 ou USB et de rediriger le poids vers Excel via un Plugin Excel offert gratuitement. Donc vous avez [Balance]--(RS232/USB)--[BillRedirect]--[Excel Plugin]--[Excel]

    Le poids peut être envoyé vers Excel via:
    - Une commande VBA
    - Un bouton dans l'écran créer par l'application
    - Une macro
    - Automatiquement quand le poids est stable
    ...

    J'espère vous avoir aider et que ce partage de technologie vous fera sauver du temps et de l'argent

Discussions similaires

  1. [XL-2007] Code VBA pour lire données d'un tableau dans Excel
    Par PierreL dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/10/2009, 20h31
  2. Liés des tables de données externes via VBA..
    Par Fritzoune dans le forum Access
    Réponses: 3
    Dernier message: 12/04/2006, 12h08
  3. [VBA-E]type de donnée range en vba utilisée dans une feuille
    Par Yoyo51 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 30/03/2006, 11h26
  4. [Excel] Lire données excel
    Par flopad dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 02/11/2005, 18h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo