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

API, COM et SDKs Delphi Discussion :

Problème avec liaison DDE


Sujet :

API, COM et SDKs Delphi

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 19
    Points : 10
    Points
    10
    Par défaut Problème avec liaison DDE

    Bonjour

    Je galère pour importer des données dans mon appli qui sont disponible sur un serveur DDE et également dans une feuille excel active, puisque cette feuille excel utilise déja une liaison dde vers le serveur en //

    J'ai 24 infos à récupérer lorsque j'utilise 24 TddeclientItem avec un ClientConv en mode auto le rafraichissement est instable.
    J'ai essayé de laisser le ClientConv en manu mais je ne peut compiller mon appli avec la fonction RequestDde (Identificateur non déclaré)!!

    Y à t'il possibilité de récupérer ces données à partie de la feuille excel

    Si quelqu'un à une idée je le remercie

  2. #2
    Expert éminent sénior

    Avatar de Nono40
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2002
    Messages
    8 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2002
    Messages : 8 640
    Points : 19 101
    Points
    19 101
    Par défaut
    Qu'entend-tu par instable ?
    Je ne me souvient pas avoir eut de soucis avec DDE, mais ça fait belle-lurette que je ne m'en sert plus.
    Delphi :
    La F.A.Q. , 877 réponses à vos questions !
    264 sources à consulter/télécharger !

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    Merci de ta réponse.

    En fait le rafraîchissement des données n'est pas régulier voir absent pour certaine et même jusqu'à l'arrêt de la liaison.
    Si je ne garde qu'un seul client il fonctionne très bien mais mon soucis c'est que j'en ais 24!!
    Sinon j'explore le moyen de récupérer les données en dynamique sur la feuille Excel, j'ai trouvé une solution en utilisant mon fichier Excel comme base de données dans Delphi, ça marche mais un peut 'bourin' en vitesse d'acquisition.
    Si tu as une idée avec ces précision elle est la bien venue
    Merci

  4. #4
    Membre chevronné
    Avatar de Pierre Castelain
    Inscrit en
    Avril 2002
    Messages
    523
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 523
    Points : 1 943
    Points
    1 943
    Par défaut
    Il te faut laisser tomber DDE et utiliser les interfaces publiées par excel : http://lfe.developpez.com/PasExcel/

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    Je teste la liaison OLE vers excel mais je bloque sur l'affectation du non de classeur à vXLWorkbook car contrairement au exemple mon classeur est déja ouvert.

    A tu une idée sur la mèthode à utiliser
    Merci

    Ci dessous mon code.
    // Affecte la liaison excel
    vMSExcel := GetActiveOleObject('Excel.Application');

    // Affecte le nom du classeur
    aFileName := 'c:\Piscine\Piscine.xls';
    vXLWorkbooks := vMSExcel.Workbooks;
    vXLWorkbook := vXLWorkbooks.Open(aFileName);

    !! c'est sur la ligne précedente que je sèche, quelle mèthode doit on utiliser à la place de Open

    //Affecte l'onglet
    aSheetName := 'reg';
    vWorksheet := vXLWorkbooks.WorkSheets[aSheetName];

    // Affecte la cellule
    aRange := 'AC33';
    vCell := vWorksheet.Range[aRange];
    aValue := vCell.Value;
    [Modération]
    Merci d'utiliser les balises code ou quote, Laurent Dardenne
    [/Modération]

  6. #6
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Utilise la collection Items pour récupéer un classeur existant. N'hésite pas à regarder dans la FAQ.

    Un exemple pour Word dans un contexte différent mais la démarche peut t'aider :
    http://delphi.developpez.com/faq/?page=worddoc

Discussions similaires

  1. Problème avec liaison
    Par malumiere dans le forum W4 Express
    Réponses: 0
    Dernier message: 16/03/2013, 19h13
  2. Problème de liaison C++/CLI avec DLL MFC
    Par skeltryx dans le forum C++/CLI
    Réponses: 10
    Dernier message: 27/04/2007, 15h07
  3. [PDO] Problème avec les liaisons de paramètres
    Par evaisse dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 17/04/2007, 14h17
  4. Problème avec la liaison série
    Par perchman dans le forum Général Python
    Réponses: 3
    Dernier message: 22/03/2007, 16h52
  5. Problème à la liaison avec LMDTools SE et Builder 2006
    Par Bodom-Child dans le forum C++Builder
    Réponses: 2
    Dernier message: 09/02/2007, 15h11

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