begin process at 2012 02 11 01:22:33
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Système

 > 

Autre

 > 

OLE2 et Excel


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

OLE2 et Excel

jeudi 26 avril 2007 à 16:01:29 | OLE2 et Excel

sylvunix

Bonjour à tous,

J'essaie de charger dans un TOleContainer un feuille Excel lue depuis un fichier, de modifier cette feuille, de la sauvegarder puis de l'imprimer.

J'ai regardé sur DelphiFr et sur d'autres sites tous les sujets pouvant avoir un rapport mais sans vraiment avoir trouvé mon bonheur.

Voici mon état d'avancement :

- Chargement de mon fichier Excel :

  OleContainer: TOleContainer;
  oExcel: OleVariant;

  OleContainer.CreateObject('Excel.Application',false);
  oExcel:=OleContainer.OleObject.Application;
  oExcel.WorkBooks.Open('mon_fichier.xls');


  Mais rien ne s'affiche ... Lorsque je tente d'activer ma feuille, il me dit qu'il ne la trouve pas ...

- Affichage d'une feuille Excel :

  OleContainer: TOleContainer;
  oExcel, oActiveSheet, oCells: OleVariant;

  OleContainer.CreateObject('Excel.Sheet',false);
  OleContainer.DoVerb(ovShow);
  oExcel:=OleContainer.OleObject.Application;
  oActiveSheet:=oExcel.ActiveSheet;
  oCells:=oActiveSheet.Cells;
  for i:=2 to 8 do oCells.Item[2,i].Value:= 'En-tête';


  Là, cela fonctionne. Mais comment charger la feuille depuis un fichier ?

Si quelqu'un pouvait me donner un coup de pouce, ce serait vraiment sympa ...

sylvunix


jeudi 26 avril 2007 à 20:12:28 | Re : OLE2 et Excel

Oniria

Bonjour,

Je te passe un petit bout de code

 var filtre, nom_Excel, nom_Fp,texte1,texte2,num_fp,NOK,Rep_Fp,txt : string;
    i,j,k,l : integer;
    xl,feuille,vWorkSheet : variant; // partie utilisée pour la communication avec EXCEL
    aRange,aLigne : AnsiString;
    vCell : Variant;
    sr : TSearchRec;
    table : array[0..20000] of integer;
    nb_table,ind_fp : integer;
begin
     // Exportation vers Excel
     Form1.SaveDialog1.FileName:=Form1.ComboBox1.Text+'.xls';
     if Form1.SaveDialog1.Execute then // C'est une fenêtre de dialogue pour donner un nom d'export
        begin
             nom_Excel:=Form1.SaveDialog1.FileName;
             // Ouverture Excel
             Xl:=CreateOLEObject('Excel.application'); // Ouverture d'excel
             XL.Visible:=true;                                          // Excel est visible
             feuille:=xl.Workbooks.open(nom_Excel);    // On ouvre le fichier "nom_excel"
             vWorksheet:=feuille.WorkSheets['FPB'];     // On active la page du fichier qui s'appelle FPB

J'espére que ca répond à ton probléme.

Bon courage

Oniria

jeudi 26 avril 2007 à 20:43:30 | Re : OLE2 et Excel

moldov

Salut, Voici un très bon tutorial pour piloter Excel en Delphi http://lfe.developpez.com/PasExcel/ Bonne Prog
vendredi 27 avril 2007 à 09:28:11 | Re : OLE2 et Excel

sylvunix

Réponse acceptée !
Merci pour ces informations mais mon problème est plus lié à l'utilisation du TOleContainer. Je souhaite en effet afficher ma feuille dans une form et non pas lancer Excel en tant qu'application.

En analysant toute les fonctions, j'ai enfin trouvé une solution :

  OleContainer.CreateObjectFromFile('mon_fichier.xls', false);
  OleContainer.DoVerb(ovInPlaceActivate);   
 
  oExcel:=OleContainer.OleObject.Application;
  oActiveSheet:=oExcel.ActiveSheet;
  oCells:=oActiveSheet.Cells;
  for i:=2 to 8 do oCells.Item[2,i].Value:= 'En-tête';


Merci encore pour votre aide.
vendredi 27 avril 2007 à 11:03:39 | Re : OLE2 et Excel

sylvunix

Si vous recherchez toutes les commandes OLE disponibles pour Excel, vous les trouverez dans VBAXL10.chm ...


Cette discussion est classée dans : fichier, excel, feuille, oexcel, olecontainer


Répondre à ce message

Sujets en rapport avec ce message

Ouvrir un fichier Excel ET savoir qu'il est en lecture seul [ par vagabon ] Bonjour,J'utlise OLE pour faire des ouvertures de fichiers Excel mais je n'arrive pas à savoir si le fichier est en lecture seul.Est ce que vous aurie Comment lire un fichier Excel sous Delphi? [ par kwentinn ] Salut tt le monde!Je voudrais savoir comment on peut récupérer des données de fichier Excel dans Delphi. (Ensuite, j'enregistre sous fichier texte.. ç Remettre en place la protection d'une feuille excel [ par _ulixes_ ] Bonjour, Je souhaiterai savoir la fonction delphi permettant de remettre en place la protection de la feuille.Merci d'avance Boucle dans un fichier excel [ par CyberMax452 ] Voilà,J'ai mon fichier excel qui est ouvert. Je voudrais prendre chacune de lignes pour les insérer dans une datagrid.Comment faire? Importer une feuille excel [ par codial ] Bonjour à tous,voilà j'aurais besoin de savoir comment faire sous Delphi pour importer les données d'une feuille EXCEL vers une table paradox.D'avance Nombre de ligne et colonne dans une feuille EXCEL [ par codial ] Bonjour,je cherche à compter le nombre de lignes occupées d'une feuille EXCEL.J'essaie le code suivant:NbreLigne:=xl.Workbooks('BASE PV42').WorkSheet. WebBrowser, Excel et interception message [ par Paraglider ] Bonjour tout le monde,(Delphi 6)J'affiche une page htm dans un WebBrowser. Sur cette page un lien qui m'ouvre un fichier Excel. Si je modifie le fichi renommer une feuille excel avec DELPHI [ par yvessimon ] Ouvrir et ajouter un documant excel avec DELPHI c'est une 1ere étape que je sais faire.Par contre quelle commande utiliser pour ajouter une feuille ou Créer un fichier Excel sans OLE [ par vagabon ] Bonjour,Est-ce qu'il est possible (et si oui comment) ;-) créer un fichier excel venant un tableau SANS passer par OLE ? Merci d'avanceVag Excel suite [ par bakik ] Suite de ma tentative d'exploitation d'un fichier excel. Alors : mon fichier est ouvert, une colonne est sélectionnée, et ce que je souhaite faire


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,727 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales