none
Probleme avec Word.Interop en vb.net RRS feed

  • Question

  • Bonjour,

    J'ai besoin d'imprimer sur une page A4 deux (2) pages A5.

    J'utilise un bout de code extrait de l'enregistrement d'une macro depuis word 2007.

    WordApp.PrintOut(FileName:="", _
    
                                Range:=Microsoft.Office.Interop.Word.WdPrintOutRange.wdPrintRangeOfPages, _
    
                                Item:=Microsoft.Office.Interop.Word.WdPrintOutItem.wdPrintDocumentContent, _
    
                                Copies:=1, _
    
                                Pages:=CouplePage, _
    
                                PageType:=Microsoft.Office.Interop.Word.WdPrintOutPages.wdPrintAllPages, _
    
                                ManualDuplexPrint:=False, _
    
                                Collate:=True, _
    
                                Background:=True, _
    
                                PrintToFile:=False, _
    
                                PrintZoomColumn:=2, _
    
                                PrintZoomRow:=1, _
    
                                PrintZoomPaperWidth:=0, PrintZoomPaperHeight:=0)
    
    
    
    

    Probleme:

    Si je réalise mon document par mon appli et que j'imprime depuis les menu de word cela fonctionne.
    Si j'imprime depuis mon appli apres avoir imprimer depuis word ca fonctionne.
    Si je réalise mon document par mon appli et que j'imprime depuis mon appli sans passer par word ca n'imprime pas (en fait page blanche).
    word passe bien des parametres ou fait quelques chose ?
    Merci par avance


    • Modifié Dave Path vendredi 16 septembre 2011 13:51
    vendredi 16 septembre 2011 13:51

Réponses

  • Bonjour,

    Qu’est-ce que vous voulez dire par « si je réalise le document par mon appli » ? Pouvez-vous svp réexpliquer en détail votre problème. Ce n’est pas très clair ce que vous voulez faire. Merci d’avance !

     

    Si vous voulez imprimer un document Word à partir d’une application VB vous pouvez consulter cet exemple.

     

    Cordialement,

    Cipri


    Suivez MSDN sur Twitter   Suivez MSDN sur Facebook


    Ciprian DUDUIALA, MSFT  
    •Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.

    • Proposé comme réponse TroxsaEditor mercredi 21 septembre 2011 14:12
    • Marqué comme réponse Ciprian Duduiala jeudi 22 septembre 2011 06:17
    lundi 19 septembre 2011 09:47
  • Bonjour,

    Voici un exemple:

    ' Declare the PrintDocument object.
        Private WithEvents docToPrint As New Printing.PrintDocument
    
        ' This method will set properties on the PrintDialog object and
        ' then display the dialog.
        Private Sub Button1_Click(ByVal sender As System.Object, _
            ByVal e As System.EventArgs) Handles Button1.Click
    
            ' Allow the user to choose the page range he or she would
            ' like to print.
            PrintDialog1.AllowSomePages = True
    
            ' Show the help button.
            PrintDialog1.ShowHelp = True
    
            ' Set the Document property to the PrintDocument for 
            ' which the PrintPage Event has been handled. To display the
            ' dialog, either this property or the PrinterSettings property 
            ' must be set 
            PrintDialog1.Document = docToPrint
    
            Dim result As DialogResult = PrintDialog1.ShowDialog()
    
            ' If the result is OK then print the document.
            If (result = DialogResult.OK) Then
                docToPrint.Print()
            End If
    	
        End Sub
    
        ' The PrintDialog will print the document
        ' by handling the document's PrintPage event.
        Private Sub document_PrintPage(ByVal sender As Object, _
           ByVal e As System.Drawing.Printing.PrintPageEventArgs) _
               Handles docToPrint.PrintPage
    
            ' Insert code to render the page here.
            ' This code will be called when the control is drawn.
    
            ' The following code will render a simple
            ' message on the printed document.
            Dim text As String = "In document_PrintPage method."
            Dim printFont As New System.Drawing.Font _
                ("Arial", 35, System.Drawing.FontStyle.Regular)
    
            ' Draw the content.
            e.Graphics.DrawString(text, printFont, _
                System.Drawing.Brushes.Black, 10, 10)
        End Sub
    



    fred
    mercredi 21 septembre 2011 22:11

Toutes les réponses

  • Bonjour,

    Si vous voulez imprimer depuis votre appli, il faut implémenter une procédure d'impression comme ceci

    http://msdn.microsoft.com/fr-fr/library/fd7k8bxt.aspx

     


    fred
    vendredi 16 septembre 2011 17:43
  • Bonjour,

    Merci de votre reponse.

    Pourriez-vous etre plus clair

    Merci

    dimanche 18 septembre 2011 12:21
  • Bonjour,

    Qu’est-ce que vous voulez dire par « si je réalise le document par mon appli » ? Pouvez-vous svp réexpliquer en détail votre problème. Ce n’est pas très clair ce que vous voulez faire. Merci d’avance !

     

    Si vous voulez imprimer un document Word à partir d’une application VB vous pouvez consulter cet exemple.

     

    Cordialement,

    Cipri


    Suivez MSDN sur Twitter   Suivez MSDN sur Facebook


    Ciprian DUDUIALA, MSFT  
    •Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.

    • Proposé comme réponse TroxsaEditor mercredi 21 septembre 2011 14:12
    • Marqué comme réponse Ciprian Duduiala jeudi 22 septembre 2011 06:17
    lundi 19 septembre 2011 09:47
  • Bonjour DG10,

    Avez vous trouver réponse a votre problème ?
    Si oui, pourriez vous nous transmettes les informations afin que d'autre puisse en bénéficier au cas ou il rencontrerait la même difficulté que vous.

     


    Cordialement,
    Xavier TALOUR
    Alias Troxsa SendMail
    Voir le profil de Xavier TALOUR sur LinkedIn

    mardi 20 septembre 2011 11:11
    Auteur de réponse
  • Bonjour,

    Voici un exemple:

    ' Declare the PrintDocument object.
        Private WithEvents docToPrint As New Printing.PrintDocument
    
        ' This method will set properties on the PrintDialog object and
        ' then display the dialog.
        Private Sub Button1_Click(ByVal sender As System.Object, _
            ByVal e As System.EventArgs) Handles Button1.Click
    
            ' Allow the user to choose the page range he or she would
            ' like to print.
            PrintDialog1.AllowSomePages = True
    
            ' Show the help button.
            PrintDialog1.ShowHelp = True
    
            ' Set the Document property to the PrintDocument for 
            ' which the PrintPage Event has been handled. To display the
            ' dialog, either this property or the PrinterSettings property 
            ' must be set 
            PrintDialog1.Document = docToPrint
    
            Dim result As DialogResult = PrintDialog1.ShowDialog()
    
            ' If the result is OK then print the document.
            If (result = DialogResult.OK) Then
                docToPrint.Print()
            End If
    	
        End Sub
    
        ' The PrintDialog will print the document
        ' by handling the document's PrintPage event.
        Private Sub document_PrintPage(ByVal sender As Object, _
           ByVal e As System.Drawing.Printing.PrintPageEventArgs) _
               Handles docToPrint.PrintPage
    
            ' Insert code to render the page here.
            ' This code will be called when the control is drawn.
    
            ' The following code will render a simple
            ' message on the printed document.
            Dim text As String = "In document_PrintPage method."
            Dim printFont As New System.Drawing.Font _
                ("Arial", 35, System.Drawing.FontStyle.Regular)
    
            ' Draw the content.
            e.Graphics.DrawString(text, printFont, _
                System.Drawing.Brushes.Black, 10, 10)
        End Sub
    



    fred
    mercredi 21 septembre 2011 22:11
  • Bonjour,

    A ce jour je n'ai rien rouver comme solution, il semblerait que meme microsoft ne maitrise pas le sujet et celui-ci n'est du tout documenter en example concrets.

    Plein d'exemples limté au minimum (wordapp.printout()).

    J'ai donc remis a plus tard et ais changer de direction. J'ai contourné le probleme. c'est tout.

    Merci a tous pour votre aide, qui parfois n'est pas en relation avec l'objet, mais merci quant meme.

    jeudi 22 septembre 2011 08:41