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

VB 6 et antérieur Discussion :

mise en page avant impression avec ShellExecute


Sujet :

VB 6 et antérieur

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 62
    Points : 39
    Points
    39
    Par défaut mise en page avant impression avec ShellExecute
    Bonjour,
    j'essaie d'imprimer différentes document d'un répertoire d'une façon automatique, mais je doit associer une mise en page de A3 pour certain documents, comment je procède svp ?

  2. #2
    Membre averti Avatar de Vince
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    369
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 369
    Points : 366
    Points
    366
    Par défaut
    De quel format de documents s'agit-il ?
    Quel code utilises-tu pour les imprimer ?

    Pour info tuto impressions avec VB6 : http://vb.developpez.com/bidou/vb-impression/

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 62
    Points : 39
    Points
    39
    Par défaut
    voici le code que j'utilise :
    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
     
    Option Explicit
     
    Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
            Const SW_SHOWNORMAL = 1
     
            Dim NbFichiers As Long
            Dim Tableau() As String
            Const Dossier As String = "C:\Transfert"
     
    Sub Tst()
        Dim hwnd As Long
        Dim i As Long
        Dim DossierOk As String
     
        DossierOk = Dossier
     
        If Right(DossierOk, 1) <> "\" Then DossierOk = Dossier & "\"
     
          ListeFichiers DossierOk, "*"
          If NbFichiers > 0 Then
          For i = 1 To UBound(Tableau)
          ShellExecute hwnd, "print", DossierOk & Tableau(i), "", "", SW_SHOWNORMAL
          'Printer.Print Tableau(i)
          Next
          End If
     
     
    End Sub
     
    Private Sub ListeFichiers(ByVal NomDossierSource As String, ByVal Extension As String)
        Dim NomFichier As String
        NomFichier = Dir(NomDossierSource & "*." & Extension)
     
        Erase Tableau
        NbFichiers = 0
        Do While Len(NomFichier) > 0
          Label1.Caption = Label1.Caption & NbFichiers & "- " & NomFichier & Chr(13)
     
          NbFichiers = NbFichiers + 1
          ReDim Preserve Tableau(1 To NbFichiers)
          Tableau(NbFichiers) = NomFichier
          NomFichier = Dir()
        Loop
    End Sub
     
     
     
    Private Sub Form_Load()
    Tst
    End Sub
    j'ai vu le document merci, et j'ai essayé de faire comme ça, mais ça ne amrche pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Printer.PaperSize = vbPRPSA3

  4. #4
    Membre averti Avatar de Vince
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    369
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 369
    Points : 366
    Points
    366
    Par défaut
    De quel format de documents s'agit-il ?
    Et dans le tuto que tu as lu il est stipulé d'imprimer avec ShellExecute ?

  5. #5
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 62
    Points : 39
    Points
    39
    Par défaut
    je doit imprimer des documents de type : Pdf, Excel, RTF .. c'est pourquoi j'utilise shellexecute qui me facilite la tâche, le problème qui me reste est de modifier la mise en page.
    j'ajoute que la classe Printer ne me permet pas d'imprimer mes documents, sinon comment je fais avec Printer? parce que printer prend en charge les paramètres de mise en page?

  6. #6
    Membre averti Avatar de Vince
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    369
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 369
    Points : 366
    Points
    366
    Par défaut
    Le mieux serait peut être d'ouvrir les documents avec l'activeX correspondant puis de paramétrer la mise en page et enfin lancer l'impression...
    A mon avis avec ShellExecute tu n'as aucun contrôle sur la mise en page du document.

  7. #7
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 62
    Points : 39
    Points
    39
    Par défaut
    merci Vince pour la piste, que je vais suivre et je reviens vers vous

Discussions similaires

  1. [C#]Mise en page avant impression
    Par actionman18 dans le forum C#
    Réponses: 21
    Dernier message: 30/01/2013, 16h19
  2. [XL-2010] mise en page avant impression macro
    Par yblotiere dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/06/2012, 09h30
  3. Mise en page avant impression sur toutes les feuilles du classeur
    Par fribelle dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/11/2008, 09h48
  4. mise en page avant impression
    Par mohcultiv dans le forum ASP
    Réponses: 2
    Dernier message: 16/05/2007, 16h11
  5. [VB6] Mise en page puis impression
    Par pier* dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 09/05/2006, 10h36

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