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 imprimer un fichier excel en format A4


Sujet :

Delphi

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut Comment imprimer un fichier excel en format A4
    Bonjour;
    J'ai un fichier Excel contenant un tableau et je veux que ma feuille soit en mode paysage càd quand je l'imprime qu'elle soit en format A4.
    C'est quoi la propriété à utiliser?
    Voici mon code qui crée le fichier Excel et sa feuille que je cherche à imprimer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
     ExcelApplication := CreateOleObject('Excel.Application');
     ExcelApplication.Visible := true;
     
     vXLWorkbooks := ExcelApplication.Workbooks;
     
     
     vXLWorkbook := vXLWorkbooks.Add;
     
     
       vWorksheet := vXLWorkbook.WorkSheets['feuil1'];
    Merci infiniment

  2. #2
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    salut,

    Bonjour;
    J'ai un fichier Excel contenant un tableau et je veux que ma feuille soit en mode paysage càd quand je l'imprime qu'elle soit en format A4.
    C'est quoi la propriété à utiliser?
    Voici mon code qui crée le fichier Excel et sa feuille que je cherche à imprimer
    pour imprimer en mode "A4", il suffit d'utiliser le propriété "PaperSize" =>"xlPaperA4".
    tu peux imprimer ça en mode "Paysage", utilise "xlLandscape".
    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
    28
    29
    30
    31
    32
    33
    34
    35
    uses ComObj;
     
    {$R *.dfm}
     
    procedure TForm1.Button1Click(Sender: TObject);
    var ExcelApp: Variant;
    begin
    try
    ExcelApp := CreateOleObject( 'Excel.Application' );
        ExcelApp.Visible := True;
        ExcelApp.WorkBooks.Open( 'C:\test.xls' );
        ExcelApp.WorkSheets[1].Activate;
        ExcelApp.ActiveSheet.PageSetup.Orientation := xlLandscape; //mode paysage
     
      ExcelApp.ActiveSheet.PageSetup.LeftMargin := 35;
     ExcelApp.ActiveSheet.PageSetup.RightMargin := -15;
     
     //  Marge
     ExcelApp.ActiveSheet.PageSetup.FooterMargin := ExcelApp.InchesToPoints(0);
     
     // Ajuster à la page X (s) de largeur par hauteur Y  
     ExcelApp.ActiveSheet.PageSetup.FitToPagesWide := 1; // Y
     ExcelApp.ActiveSheet.PageSetup.FitToPagesTall := 3; // Y
     
        ExcelApp.ActiveSheet.PageSetup.PaperSize := xlPaperA4;// Feuille A4
        ExcelApp.Worksheets.PrintOut;
      finally
        if not VarIsEmpty(ExcelApp) then
        begin
         ExcelApp.Quit;
         ExcelApp := Unassigned;
        end;
      end;
     
    end;
    A+

    NABIL74

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut
    Salut;
    Merci infiniment pour ta réponse très utile .
    ALors ca marche mais j'ai encore mon tableau tronqué en terme de longueur.
    Quelles sont les propriétés à changer pour obtenir un affichage complet ?
    Merci

  4. #4
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    Citation Envoyé par zanoubya Voir le message
    Salut;
    Merci infiniment pour ta réponse très utile .
    ALors ca marche mais j'ai encore mon tableau tronqué en terme de longueur.
    Quelles sont les propriétés à changer pour obtenir un affichage complet ?
    Merci
    il faut penser à ajuster les colonnes et les lignes de ta feuille Excel selon son contenu. tu peux aussi réduire la taille de ton "Font".
    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 ExcelApp: Variant;
    begin
    try
    ExcelApp := CreateOleObject( 'Excel.Application' );
        ExcelApp.Visible := True;
        ExcelApp.WorkBooks.Open( 'C:\test.xls' );
        ExcelApp.WorkSheets[1].Activate;
     
        ExcelApp.ActiveSheet.PageSetup.PaperSize := xlPaperA4;// Feuille A4
        ExcelApp.ActiveSheet.PageSetup.Orientation := xlLandscape; //mode paysage
     
          ExcelApp.Cells.Select;// sélectionner toutes les cellules
         ExcelApp.Selection.Columns.AutoFit; // ajuster les colonnes selon leur contenu
        ExcelApp.Selection.Rows.AutoFit; // ajuster les lignes selon leur contenu
     
     ExcelApp.Worksheets.PrintOut;
      finally
        if not VarIsEmpty(ExcelApp) then
        begin
         ExcelApp.Quit;
         ExcelApp := Unassigned;
        end;
      end;
    end;
    Bonne chance.

    NABIL74

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut
    Bonjour;
    Je viens d'ajuter le contenu et diminuer la police malgré ca j'obtiens un apercu encore tronqué.
    Voici ci joint le fichier excel et fichier PDF obtenu par l'apercu .
    Est ce que je dois changer les marges? si oui quelles sont les valeurs à attribuer?
    Merci
    Fichiers attachés Fichiers attachés

  6. #6
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    bonjour zanoubya,

    Je viens d'ajuter le contenu et diminuer la police malgré ca j'obtiens un apercu encore tronqué.
    Voici ci joint le fichier excel et fichier PDF obtenu par l'apercu .
    Est ce que je dois changer les marges? si oui quelles sont les valeurs à attribuer?
    tu veux imprimer tout le contenu de ton fichier en une seule page?
    si c'est ça que tu cherches, je crains qu'il est impossible parceque ton fichier est composé de 6 pages! même si on réussi à ajuster le contenu et réduire la police,ça ne tiendra pas sur une seule page.

    A+

    NABIL74

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut
    Bonjour Nabil;
    c'est ce que je cherche exactement obtenir tout le contenu en une seule page en mode paysage c'est pas possible ???

  8. #8
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    j'ai essayé sous Excel de réduire la police,d'ajuster le contenu,réduire au maximum les marges mais ça n'a pas marché. ton fichier contient 110 lignes.
    même sur A3, l'impression se compose de 2 feuilles.
    pourquoi tu tiens à imprimer ça en 1 seul page?

    NABIL74

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    279
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Septembre 2006
    Messages : 279
    Points : 99
    Points
    99
    Par défaut
    Voilà je viens de diminuer un peu la taille et utiliser ces deux instructions
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     ExcelApplication.ActiveSheet.PageSetup.LeftMargin
    :=ExcelApplication.Application.InchesToPoints(0.1);
     
      ExcelApplication.ActiveSheet.PageSetup.RightMargin := ExcelApplication.Application.InchesToPoints(0.1);

    Et ca marche Merciiiiiiiiii

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 29/03/2011, 15h35
  2. Comment imprimer un fichier Excel ?
    Par babylover919 dans le forum Documents
    Réponses: 12
    Dernier message: 12/01/2011, 17h01
  3. Imprimer automatiquement fichiers de plusieurs formats
    Par lutin511 dans le forum Windows
    Réponses: 5
    Dernier message: 07/12/2005, 18h38
  4. Imprimer un fichier EXCEL
    Par bianconeri dans le forum C++Builder
    Réponses: 3
    Dernier message: 16/03/2005, 11h15
  5. Comment écrire un fichier texte au format MS-DOS ?
    Par fredfred dans le forum Langage
    Réponses: 9
    Dernier message: 20/01/2005, 09h00

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