OVH Cloud OVH Cloud

Classeur ouvert par liaison DDE ?

4 réponses
Avatar
Nico Iannizzi
Bonsoir,

Est-il possible de détecter dans la procédure Private Sub Workbook_Open()
si le classeur a été ouvert par un document Word à travers une liaison DDE
et d'exécuter en conséquence du code (affichage d'un formulaire par exemple) ?

Merci d'avance de votre aide précieuse.

Salutations,
Nico Iannizzi

4 réponses

Avatar
Laurent Longre
Nico,

Une soluce certainement pas parfaite, mais assez simple :

Private Sub Workbook_Open()
If Not Application.Visible Then MsgBox "Ouvert par DDE"
End Sub

Si le classeur n'a aucune raison d'être ouvert par OLE Automation et si
l'application est invisible c'est qu'il a été ouvert par DDE.

Cordialement,

Laurent
-------
http://xcell05.free.fr

Bonsoir,

Est-il possible de détecter dans la procédure Private Sub Workbook_Open()
si le classeur a été ouvert par un document Word à travers une liaison DDE
et d'exécuter en conséquence du code (affichage d'un formulaire par exemple) ?

Merci d'avance de votre aide précieuse.

Salutations,
Nico Iannizzi


Avatar
Nico Iannizzi
Bonjour Laurent,

Ca marche pas chez moi,...

En ouvrant le classuer Excel à partir de Word par le protocole DDE, le
classeur est certes visible, donc "not application.visible" équivaut toujours
à false et ton MsgBox ne s'affiche pas.

Une autre soluce serait la bienvenue.



Nico,

Une soluce certainement pas parfaite, mais assez simple :

Private Sub Workbook_Open()
If Not Application.Visible Then MsgBox "Ouvert par DDE"
End Sub

Si le classeur n'a aucune raison d'être ouvert par OLE Automation et si
l'application est invisible c'est qu'il a été ouvert par DDE.

Cordialement,

Laurent
-------
http://xcell05.free.fr

Bonsoir,

Est-il possible de détecter dans la procédure Private Sub Workbook_Open()
si le classeur a été ouvert par un document Word à travers une liaison DDE
et d'exécuter en conséquence du code (affichage d'un formulaire par exemple) ?

Merci d'avance de votre aide précieuse.

Salutations,
Nico Iannizzi





Avatar
Nico Iannizzi
Hopla,

J'ai oublié de dire merci et au revoir,... c'est fait maintenant.

Cordialement,
Nico


Bonjour Laurent,

Ca marche pas chez moi,...

En ouvrant le classuer Excel à partir de Word par le protocole DDE, le
classeur est certes visible, donc "not application.visible" équivaut toujours
à false et ton MsgBox ne s'affiche pas.

Une autre soluce serait la bienvenue.



Nico,

Une soluce certainement pas parfaite, mais assez simple :

Private Sub Workbook_Open()
If Not Application.Visible Then MsgBox "Ouvert par DDE"
End Sub

Si le classeur n'a aucune raison d'être ouvert par OLE Automation et si
l'application est invisible c'est qu'il a été ouvert par DDE.

Cordialement,

Laurent
-------
http://xcell05.free.fr

Bonsoir,

Est-il possible de détecter dans la procédure Private Sub Workbook_Open()
si le classeur a été ouvert par un document Word à travers une liaison DDE
et d'exécuter en conséquence du code (affichage d'un formulaire par exemple) ?

Merci d'avance de votre aide précieuse.

Salutations,
Nico Iannizzi







Avatar
Laurent Longre
Ah d'accord, je pensais que c'était une liaison par un champ Word.

OK, j'y réfléchis.

Laurent

Bonjour Laurent,

Ca marche pas chez moi,...

En ouvrant le classuer Excel à partir de Word par le protocole DDE, le
classeur est certes visible, donc "not application.visible" équivaut toujours
à false et ton MsgBox ne s'affiche pas.

Une autre soluce serait la bienvenue.