C# Word Dokument nur spezifische Seiten drucken

  • C#

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von newsletter.

    C# Word Dokument nur spezifische Seiten drucken

    Moin,

    Vielleicht weiss jemand wie ich ganz einfach sagen kann:

    Seite1, 5, 6 soll gedruckt werden in c#

    Bis jetzt habe ich einfach immer alles gedruckt:

    C#-Quellcode

    1. //Dokument starten
    2. Word.Application WordApp = new Word.Application();
    3. WordApp.Visible = true;
    4. object fileName = @"C:\..MeinDoc.docx";
    5. object readOnly = false;
    6. object isVisible = true;
    7. object missing = Type.Missing;
    8. Word.Document myDoc = WordApp.Documents.Open(ref fileName, ref missing, ref readOnly, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref isVisible, ref missing, ref missing, ref missing);
    9. myDoc.Activate();
    10. //Befüllen
    11. //[...]
    12. //drucken
    13. WordApp.GetType().InvokeMember("PrintOut", BindingFlags.InvokeMethod, null, WordApp, null);


    Habe bereits gegoogelt, aber weiss nicht wie ich das umsetzen kann ?(

    mit

    C#-Quellcode

    1. object from = 1;
    2. object to = 1;
    3. ActiveDocument.ActiveWindow.PrintOut _
    4. Range:=wdPrintFromTo, From:="1", To:="3"
    Vielen Dank für deine Hilfe.

    Es funktioniert soweit, nur erscheint jetzt ein Typenkonflikt ?(

    C#-Quellcode

    1. object from = null;
    2. object to = null;
    3. object copies = "1";
    4. object pages = "";
    5. if (ChkListDruck.CheckedItems.Contains(0) == true & ChkListDruck.CheckedItems.Contains(1) == true)
    6. {
    7. from = "1";
    8. to = "3";
    9. }
    10. //(wenn Item 1 + 2 ausgewählt ist, soll Seite 1-3 gedruckt werden
    11. object range = Word.WdPrintOutRange.wdPrintFromTo;
    12. object items = Word.WdPrintOutItem.wdPrintDocumentContent;
    13. object pageType = Word.WdPrintOutPages.wdPrintAllPages;
    14. object oTrue = true;
    15. object oFalse = false;
    16. myDoc.PrintOut(ref oTrue, ref oFalse, ref range, ref missing, ref from, ref to,
    17. ref items, ref copies, ref pages, ref pageType, ref oFalse, ref oTrue,
    18. ref missing, ref oFalse, ref missing, ref missing, ref missing, ref missing);


    habe es ja ausserhalb des IF-Blocks deklariert und anschliessend "from" und "to" den Wert zugeordnet :huh: