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

Powerbuilder Discussion :

[PowerBuilder] Lecture d'un fichier Excel


Sujet :

Powerbuilder

  1. #1
    Membre régulier
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    163
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 163
    Points : 76
    Points
    76
    Par défaut [PowerBuilder] Lecture d'un fichier Excel
    Bonjour tout le monde,

    Depuis un programme PB, je voudrais lire un fichier Excel. J'ai essayé la méthode DDE:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
    liRet = Run("C:\Program Files\Microsoft Office\Office\EXCEL.EXE " + excel_in_path, normal! ) 
    
    if liRet <= 0 then
    	return 1
    end if
    
    llhandle = OpenChannel("Excel", excel_in_path)
    
    liRet = GetRemote("R2C1", lsEan, llhandle)
    liRet = GetRemote("R2C2", lsCint, llhandle)
    liRet = GetRemote("R2C3", lsPrix, llhandle)
    
    messageBox ("Lecture", "Ean: " + lsEan + "; Cint: " + lsCint + " Prix: " + lsPrix)
    
    CloseChannel(llhandle)
    le seul problème est dans la fonction GetRemote qui me retourne la valeur -2, ce qui veut dire: -2 Request denied
    Je n'arrive donc pas à faire ces trois lecture.

    Comment regler ce problème? La méthode OLE est-elle plus simple? Si c'est oui, avez vous un bout de code?

    En attendant vos réponses, mes remerciements à tous.
    mamid

  2. #2
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Points : 13
    Points
    13
    Par défaut
    Bonjour mamid,

    J'avais fait une fois quelque chose avec OLE:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    OLEObject 	lo_ole
    string ls_nom_du_fichier, ls_nom_de_la_feuille, ls_texte
    ls_nom_du_fichier = "C:\test.xls"
    ls_nom_de_la_feuille = "Feuil1"
    lo_ole = CREATE oleobject
    lo_ole.ConnectToNewObject("excel.application")
    lo_ole.workbooks.open(ls_nom_du_fichier)
    lo_ole.Sheets("ls_nom_de_la_feuille").Select
    lo_ole.Range("A1").Select
    ls_texte = string(lo_ole.ActiveCell.Value)
    lo_ole.quit()
    Bonne chance...

  3. #3
    Membre régulier
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    163
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 163
    Points : 76
    Points
    76
    Par défaut
    Merci pour votre aide.

    J'ai fini par comprendre, c'est, en effet, plus facile que la méthode DDE puisque on la possibilité d'accader aux méthodes des objets Excel.

    Bien cordialement.
    mamid

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.NET] Accélerer la lecture d'un fichier excel
    Par Franck2mars dans le forum Windows Forms
    Réponses: 4
    Dernier message: 16/11/2007, 11h35
  2. Lecture d'un fichier excel avec C++
    Par ziss dans le forum C++
    Réponses: 1
    Dernier message: 17/10/2006, 18h31
  3. Lecture d'un fichier Excel uniquement sur un seul poste
    Par loutsky dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 24/05/2006, 08h09
  4. [VB6] Problème de lecture d'un fichier excel
    Par Requin15 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 23/03/2006, 17h10
  5. macros word et lecture dans un fichier excel
    Par antrax2013 dans le forum Windows
    Réponses: 2
    Dernier message: 01/10/2005, 19h05

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