Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 01/07/2009, 16h56   #1
Membre régulier
 
Date d'inscription: juillet 2009
Messages: 115
Par défaut Ouverture d'une connexion DDE de VBA vers un logiciel tiers

Bonjour, je me présente david, ingénieur r&d. J'ai des notions en développement c et labview, et je suis malheureusement novice en VBA.

Je vous explique mon problème
Je développe une petite application via Excel.

Cette application doit commencer par établir un lien entre VBA(enfin donc Excel) et un logiciel tiers qui s'appelle Optima. Ce dernier est un logiciel d'acquisition pour un fluorimètre (mais bon ca à la limite on s'en fiche).

Ce logiciel est compatible dde et le fournisseur donne même un semblant de programme pour exemple que voici :

Citation:
Code :
Private Sub Command1_Click()
Dim Cmd, Separator
' open DDE connection:
If Text1.LinkMode = vbLinkNone Then
Z = Shell("D:\Programme\BMG\OPTIMA\ExeDLL\FLUOstar", 4)
' start DDE Server
Text1.LinkTopic = "FLUOstar|DDEServerConv1" ' set DDE topic
Text1.LinkItem = "DdeServerStatus" ' set DDE item
Text1.LinkMode = vbLinkManual ' choose link mode
End If
' send a DDE command:
Separator = Chr(13) & Chr(10)
Cmd = "PlateOut" ' Create command string
Cmd = Cmd & Separator & "User" ' Add parameters
Cmd = Cmd & Separator & "0"
Cmd = Cmd & Separator & "5000"
Text1.LinkExecute Cmd ' send DDE macro command
MsgBox "DDE command to OPTIMA sent.", 64
End Sub
la partie send a command est plutot clair pour moi
Suite à des recherches sur internet j'ai compris à quoi servaient les linktopic linkitem et linkmode. Là encore rien de bien compliquer.

Bien sur l'adresse dans l'exemple n'est pas la bonne, là encore ce n'est pas la difficulté réelle (quoi que dans la véritable adresse qui se situe dans program files, il y a un espace, est-ce un problème pour VBA faut il mettre l'espace sous forme de code ?)

Non mon problème se situe au niveau de la variable text1 (déjà est ce une variable ?) dois je la définir comme étant un objet (comme une textbox ?) ou comme une variable string ?

le compilateur bloque donc sur la première ligne ou apparait text1.linkmode

idem dois-je déclarer Z

Bref cette étape est vraiment ce qui me bloque, en effet après ce n'est qu'une succession d'envoi de commande et d'apparitions de fenetre pour l'utilisateur ce qui est relativement simple à faire compte tenu de mes petites connaissances et des tutoriaux présents un peu partout notamment sur ce site bien riche en informations.

Merci d'avance de votre aide et de vos réponses

edit : au passage je sais que la connexion fonctionne l'éditeur du logiciel fournissant un espèce de mini programme basé sur le protocole dde qui permet de communiquer de manière simplifier avec le logiciel d'acquisition.

Dernière modification par david_atx ; 01/07/2009 à 18h13.
david_atx est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 02/07/2009, 11h59   #2
Membre Expert
 
Avatar de aalex_38
 
Date d'inscription: septembre 2007
Messages: 1 455
Par défaut

Citation:
Non mon problème se situe au niveau de la variable text1 (déjà est ce une variable ?) dois je la définir comme étant un objet (comme une textbox ?) ou comme une variable string ?
trouvé sur internet :
Citation:
Notons aussi que lors d'une liaison DDE, vous ne pouvez transférer que les données qui sont dans les contrôles Label, TextBox et PictureBox.
Par contre je n'ai pas encore trouvé comment récupérer ces propriétés .LinkTopic ...
__________________
aalex_38 est déconnecté   Envoyer un message privé Réponse avec citation
NEWS EXCELF.A.Q EXCELTUTORIELS EXCELSOURCES EXCELOUTILS EXCELLIVRES EXCELOFFICE 2010

Réponse Proposer ce sujet en actualité

Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non



Fuseau horaire GMT +1. Il est actuellement 00h21.


Vos questions techniques : forum d'entraide Excel - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Hébergement - Participez - Copyright © 2000-2010 www.developpez.com - Legal informations.