Bonjour,

habituellement j'utilise Visio sans les macros pour faire des joulis synoptiques de présentations pour le boulot. Aujourd'hui je dois rendre actif certains objet à l'intérieur de ceux-ci pour qu'ils exécutent deux événements lorsqu'un utilisateur double-clique sur l'objet.
L'idée est donc de changer la couleur de l'objet du vert au rouge (et inversement) et dans le même temps pointer vers un petit bat qui va exécuter une série de commandes telnet (cette partie existe déjà).

J'ai réussi à trouver un moyen de changer la couleur d'une forme par validation à l'aide d'un clic droit dans un menu contextuel en utilisant un gabarit et séparément à l'aide la fonction comportement à exécuter un bête batch de ping.

La difficulté, vous l'aurez compris est de lier les deux fonctions sur un "EventDblClick" à l'intérieur de ma macro.

Merci d'avance à toutes les bonnes volontés qui voudront bien m'apporter leur aide.

----------------------------------------------------------------

J'édite ce post car en faisant parallèlement des recherches sur google j'ai découvert un bout de macro que j'ai réutilisé pour gérer le changement de couleur de mon bouton lors du double clic :

======================================
Sub CHANGEIF()

Dim UndoScopeID1 As Long
UndoScopeID1 = Application.BeginUndoScope("Toggle fill")
Dim vCell As Cell
Dim shp As Shape
Set shp = ActiveWindow.Selection.PrimaryItem
If Not shp Is Nothing Then
Set vCell = shp.CellsSRC(visSectionObject, visRowFill, visFillForegnd)
If vCell.ResultIU = "2" Then
vCell.FormulaU = "3"
Else
vCell.FormulaU = "2"
End If
End If
Application.EndUndoScope UndoScopeID1, True

End Sub
=========================================

Bon il ne me reste plus qu'à associer la fonction d'exécution du bat dans le second temps de la macro et le tour sera presque joué.

Par contre, je pensais que, puisqu'il y a une condition par rapport à la couleur "active", il faudrait que cela influe sur le bat à lancer. Si on est en vert, je lance le 1.bat et si c'est en rouge, le 2.bat.

C'est tout pour le moment.