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

 Delphi Discussion :

Problème avec Excel et Delphi


Sujet :

Delphi

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Février 2008
    Messages : 108
    Par défaut Problème avec Excel et Delphi
    Bonjour,

    J'ai une TForm qui comprte plusieurs TEdit.
    J'ai un bouton qui sert à rentrer les données saisies dans un tableau excel.

    le code :
    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
    18
    19
    20
    21
    22
    23
    24
    25
     
    procedure TForm1.Button1Click(Sender: TObject);
    Var
    instance:variant;
    fichier:string;
    fichiersauv : string;
    begin
    instance:=CreateOleObject('Excel.Application');
    instance.visible:=true;
    fichiersauv := form1.Caption;
    fichier := 'c:\Pricer NetSeenergy\Data\Pricer ns.xls';
    instance.workbooks.open(fichier); // Ca bloque ici....
    instance.visible := false;
    instance.Cells[2,2] := numdevis.caption;
    instance.Cells[6,2] := edit1.Text ;
    instance.cells[4,2] := commercial.text;
    instance.cells[2,5] := datedev.Date;
    instance.cells[6,2] := edit1.Text ;
    instance.cells[7,2] := edit2.Text ;
    instance.cells[8,2] := edit3.Text + ' ' + edit4.Text;
    instance.cells[8,3] := edit5.Text + ' '+ edit6.text;
    instance.quit;
    instance:=unassigned;
    Form1.Close;
    end;
    Le problème est que mon programme plante et me déclare une erreur sur l'ouverture du fichier.

    pourtant mon code ne semble pas démentiel....

    Merci pour votre aide.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 40
    Par défaut
    Bonjour,

    Question toute bête, ton fichier "Pricer ns.xls" existe bien? Et le chemin est bien correct?

  3. #3
    Membre émérite
    Avatar de Montor
    Homme Profil pro
    Autre
    Inscrit en
    Avril 2008
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Avril 2008
    Messages : 879
    Par défaut
    par hasard
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    instance.connect ;
    instance.workbooks.open(fichier);

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 591
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 591
    Par défaut
    @ breizh44,

    En effet, le fichier se trouve t'il ou tu l'indiques est t'il connecté ?

    Sinon dans le nom du fichier, j'ai pris l'habitude depuis le Dos de l'écrire sans espace.

    Ex :
    fichier := 'c:\Pricer NetSeenergy\Data\Pricer ns.xls';
    Mieux :
    fichier := 'c:\Pricer NetSeenergy\Data\Pricer_ns.xls';
    @+,

    Cincap

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Février 2008
    Messages : 108
    Par défaut
    eh oui! c'est là qu'est le problème!

    le message d'erreur est le suivant :
    Exception déclenchée à $7652FBAE. Classe d'exception EOleException avec message 'La méthode Open de la classe Workbooks a échoué'. Processus pricerns.exe (3616)

  6. #6
    Membre émérite
    Avatar de Montor
    Homme Profil pro
    Autre
    Inscrit en
    Avril 2008
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Avril 2008
    Messages : 879
    Par défaut
    tu peux regarder dans le faq delphi il y a une large partie consacré à l'Excel

  7. #7
    Membre éprouvé Avatar de BuzzLeclaire
    Homme Profil pro
    Dev/For/Vte/Ass
    Inscrit en
    Août 2008
    Messages
    1 606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dev/For/Vte/Ass

    Informations forums :
    Inscription : Août 2008
    Messages : 1 606
    Par défaut
    Salut,

    tu peux aussi t'inspirer de cela :

    http://www.developpez.net/forums/d67...id-vers-excel/


    Bye.

  8. #8
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 591
    Détails du profil
    Informations personnelles :
    Âge : 72
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 591
    Par défaut
    Bonjour à toutes et à tous,

    @ breizh44, ta variable pour le nom de fichier est String, teste avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure TForm1.Button1Click(Sender: TObject);
    Var
    instance:variant;
    fichier:AnsiString;
    fichiersauv : string;
    begin
    @+,

    Cincap

  9. #9
    Membre chevronné Avatar de archonte
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 343
    Par défaut
    Salut,

    perso j'utilise peu excel mais surtout la liaison vers Word, mais comme dans toutes les FAQ Word et Excel, j'ai pris l'habitude de décomposer en plusieurs variants, ce qui donnerait quelque chose comme :
    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
    var 
      ExcelApp, ExcelWbx, ExcelWbk : variant;
      fichier : String;
     
    // Ouverture Excel
      try                                              // 1
        ExcelApp := GetActiveOleObject('Excel.Application');
      except
        ExcelApp := CreateOleObject('Excel.Application');
      end;
      ExcelApp.Visible := False;
     
    // Ouverture d'un classeur
      ExcelWbx := ExcelApp.Workbooks;                    // 2
      ExcelWbk := ExcelWbx.Open(fichier);                // 3
    (1) Pourquoi ne protèges-tu pas ton code d'ouverture d'Excel ?

    (2 & 3) Est-ce qu'un ExcelWbk := ExcelApp.WorkBooks.Open(fichier); n'est pas un raccourci qui génère l'erreur ? (je n'ai pas Delphi sous la main pour vérifier !)

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Février 2008
    Messages : 108
    Par défaut
    Ca ne marche toujours pas!..........;

    Le plus troublant, c'est que cela a fonctionné. Je remplissais bien le ficiher Excel en question. et puis, d'un coup, plus rien ne marche... A s'arracher les cheveux!
    Fichiers attachés Fichiers attachés

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Février 2008
    Messages : 108
    Par défaut
    Problème résolu. Le hic venait du fichier Excel qui à l'ouverture détectait du contenu illisible.

    Merci pour toutes vos réponses et le temps passé sur mon problème!

    bonnes fêtes à tous.

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

Discussions similaires

  1. Problème avec Excel et tableau croisé dynamique
    Par françois62 dans le forum VBScript
    Réponses: 9
    Dernier message: 19/11/2006, 22h17
  2. Réponses: 1
    Dernier message: 12/07/2006, 18h48
  3. Problème de déploiment avec Excel et Delphi
    Par wbagg2 dans le forum API, COM et SDKs
    Réponses: 5
    Dernier message: 18/01/2006, 22h59
  4. Problème avec EInOutError sous delphi 2005
    Par Teb dans le forum Langage
    Réponses: 3
    Dernier message: 19/08/2005, 11h48
  5. [MFC] [CRecordset] Problème avec Excel
    Par Yellowmat dans le forum MFC
    Réponses: 4
    Dernier message: 20/07/2005, 15h24

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