Problème DDE Excel

Résolu
Throna Messages postés 11 Date d'inscription mercredi 28 février 2007 Statut Membre Dernière intervention 6 avril 2007 - 9 mars 2007 à 11:49
Polack77 Messages postés 1098 Date d'inscription mercredi 22 mars 2006 Statut Membre Dernière intervention 22 octobre 2019 - 13 mars 2007 à 13:09
Lut all

Voila je cherche a prendre des valeurs qui se trouvent dans Excel par DDE et le problème est le suivant, lorsque je veux mettre LinkMode de ma Text box par exemple a Automatic il me jette : No foreign application responded to a DDE initiate.

Pourtant j'ai bien rempli LinkTopic:"Excel|Sheet2" et LinkItem:L2C2.

Donc je vois pas d'où ça vient

Merci d'avance

10 réponses

Polack77 Messages postés 1098 Date d'inscription mercredi 22 mars 2006 Statut Membre Dernière intervention 22 octobre 2019 1
13 mars 2007 à 09:41
Bonjour, étant étoné de ne pas avoir de réponce à mon poste précédant j'ai fais des testes (j'ai hue acces à un poste avec Ms office et VB6). Donc finalement il faut faire ça (chez moi ça marche).

-> Aucune référance en plus n'est obligatoire.

Code qui marche :
-----------------
dim MyXl as object
set MyXl = getobject(,"Excel.Application")
MyXl.Workbooks('A').Worksheets('B').Cells('C','D').Value = "Teste"
-----------------

Avec :
    A -> Numéro d'index ou nom du fichier (l'index 1 est le denier doc ouvert)
    B -> Numéro d'index de la feille ou nom de la feuille
    C -> Numéro de la ligne (commance à 1 et non à 0)
    D -> Numéro de la collone (Attention en chiffre et non en lettre)

Par exemple :
MyXl.Workbooks(1).Worksheets(1).Cells(1,1).Value = "Teste" 'Cette ligne écrirat "Teste" dans la cellule A1 de la 1ér feuille du dernier doc Excel ouvert
msgbox MyXl.Workbooks("Toto.xls").Worksheets("Feuil1").Cells(1,5).Value 'Cette ligne écrira dans un message box la valeur de la cellule "E1" de la feuille nomé "Feuil1" dans la fichier "Toto.xls" (Attention il faut que ce fichier soit ouvert)
MyXl.Workbooks.Open("C:\Toto.xls") 'Ouvre le fichier "C:\Toto.xls"

Un petit truc :
Construit tes macro dans excel et copie les simplement apprés "MyXl." comme ça tu évite les erreur de syntaxe.

Comme ça tu ne dois plus avoir de problème

Amicalement
3