Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : OLE2 et Excel [ Système / Autre ] (sylvunix)

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é 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...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,281 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.