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 :

comment créer un fichier excel sans tous les champs de ma table


Sujet :

Delphi

  1. #1
    Débutant Avatar de lila23
    Inscrit en
    Janvier 2009
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 354
    Points : 54
    Points
    54
    Par défaut comment créer un fichier excel sans tous les champs de ma table
    bonjour tout le monde ,
    c'est encore moi hélas!!!

    voila j'aimerais savoir comment créer un fichier excel a partir de ma table mais prendre certaine colonne de ma table et non pas tous les champs

    moi j'ai fait ce code qui crée le fichier excel :
    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
    26
    27
     
    var
    vMSExcel,vXLWorkbooks, vXLWorkbook,  vWorksheet : variant ;
    i,j:integer;
    begin
    // demarrer excel
    vMSExcel := CreateOleObject('Excel.Application');
    vMSExcel.Visible := true;
    //creer un nouveau fichier xls
    vXLWorkbooks := vMSExcel.Workbooks;
    vXLWorkbook := vXLWorkbooks.Add;
    //acceder a une feuil
    vWorksheet := vXLWorkbook.WorkSheets['feuil1'];
    //ecrire les titres des champs
    for i:=0 to mouv.FieldCount-1 do
    vworksheet.cells.item[1,i+1].value:=mouv.Fields[i].FieldName;
    //ecrire les données
    mouv.First;
    for j := 1 to mouv.RecordCount do
    begin
    for i:=0 to mouv.FieldCount-1 do
    begin
    vworksheet.cells.item[j+1,i+1].value:=mouv.Fields[i].AsString;
    end;
    mouv.Next;
    end;
    end;
    sauf que pour certaine fiche je n'ai pas besoins de tous les champs de ma table mais de certains bien spécifique !!!!!

    merci de votre aide

  2. #2
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 304
    Points
    2 304
    Par défaut
    Salut;

    voici deux propositions différentes :

    • si tes champs sont reconnus au préalable alors faut tester le nom du champ à exporter comme ceci

      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      for i:=0 to mouv.FieldCount-1 do
      begin
         if (taTable.FieldName = 'Nom') or (...) or (..) then
         vworksheet.cells.item[1,i+1].value:=mouv.Fields[i].FieldName;
      end;
      //ecrire les données
    • si tu veux laisser la main à l'utilisateur faudrait sélectionner les champs les mettre dans une liste puis faire le test.


    Bonne chance.
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  3. #3
    Débutant Avatar de lila23
    Inscrit en
    Janvier 2009
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 354
    Points : 54
    Points
    54
    Par défaut
    j'ai essayé ce que tu ma di mais fielname n'existe pas je c'est pas comment on récupére le nom du champ!!!

    Et j'aimerais essayé de le faire d'aprés ce que j'ai dans le dbgrid!!!!!

    merci

  4. #4
    Débutant Avatar de lila23
    Inscrit en
    Janvier 2009
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 354
    Points : 54
    Points
    54
    Par défaut
    bon j'ai essayé ca pour le dbgrid :
    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
     
    var
    vMSExcel,vXLWorkbooks, vXLWorkbook,  vWorksheet : variant ;
    i,j:integer;
    begin
    // demarrer excel
    vMSExcel := CreateOleObject('Excel.Application');
    vMSExcel.Visible := true;
    //creer un nouveau fichier xls
    vXLWorkbooks := vMSExcel.Workbooks;
    vXLWorkbook := vXLWorkbooks.Add;
    //acceder a une feuil
    vWorksheet := vXLWorkbook.WorkSheets['feuil1'];
    //ecrire les titres des champs
    for i:=0 to mouv.FieldCount-1 do
    vworksheet.cells.item[1,i+1].value:=mouv.Fields[i].FieldName;
    //ecrire les données
    dbgrid1.DataSource.DataSet.First;
    for j := 1 to dbgrid1.DataSource.DataSet.RecordCount do
    begin
    for i:=0 to dbgrid1.DataSource.DataSet.FieldCount-1 do
    begin   vworksheet.cells.item[j+1,i+1].value:=mouv.Fields[i].AsString;
    end;
    dbgrid1.DataSource.DataSet.Next;
    end;
    sauf que quand j'ai executé il ne ma pas récupéré les bons champs doi je faire un refresh kelke part!!!!!!!

    merci

  5. #5
    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
    Points : 1 113
    Points
    1 113

  6. #6
    Débutant Avatar de lila23
    Inscrit en
    Janvier 2009
    Messages
    354
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 354
    Points : 54
    Points
    54
    Par défaut
    merci bcp pour ces liens justement ca m'interesse pour lexportation ver les fichiers txt

Discussions similaires

  1. [WD17] comment créer un fichier Excel
    Par vegetacherif dans le forum WinDev
    Réponses: 12
    Dernier message: 08/01/2013, 13h55
  2. Réponses: 1
    Dernier message: 27/07/2012, 15h24
  3. Réponses: 2
    Dernier message: 06/02/2010, 23h18
  4. Réponses: 2
    Dernier message: 15/09/2008, 23h12
  5. Comment créer un fichier Excel avec Delphi ?
    Par nancyvoyer dans le forum API, COM et SDKs
    Réponses: 6
    Dernier message: 30/11/2007, 20h39

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