تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] الطباعة الى الوورد كود بحاجة لتعديل
#5
(21-06-21, 08:14 PM)خالد كامل1 كتب : اولا يجب ان تدخل فى  Reverenc تلك المكتبات اخى الكريم 

1MSwordDllFiles.dl و Interop.Microsoft.Office.Core.dll
ثم تضيف هذا الفنكشن فى الفورم
كود :
Public Sub Print()

       Try
           '--------------------------------------------------------------
           ' مهم جداً أن تستدعي هذا الأمر قبل كتابة أي سطر برمجي يخص الطباعة
           MSO.SetDllFiles()
           '--------------------------------------------------------------
           Dim MyWord As MSO.MSWord
           MyWord = New MSO.MSWord(Me)
           Dim TemplatePath As String = My.Application.Info.DirectoryPath & "\RN.dotx"
           Dim TemplateInfo As New MSO.TemplateInfo(TemplatePath)
           With TemplateInfo
               '-------------------------------------
               .Caption = " "
               .PrintJob = GetPrintableJob()
               With .ViewOptions
                   '-------------------------------------
                   .ShowBookmarks = False
                   .ShowTableGridlines = False
                   .ArabicNumeral = MSO.Enums.MSArabicNumeral.NumeralContext
                   .DisplayPageBoundaries = True
                   .NormalViewDisplayRulers = True
                   .ViewType = MSO.Enums.MSViewType.PrintPreview
                   .WindowState = MSO.Enums.MSWindowState.Maximize
                   .NormalViewZoomPageFit = MSO.Enums.MSPageFit.PageFitBestFit
                   .NormalViewZoomPercentage = Nothing
                   '------------------------
                   .PrintPreviewDisplayRulers = True
                   .PrintPreviewPageFitness = New MSO.PrintPreviewPageFitness(0, 0)
                   .PrintPreviewZoomPageFit = MSO.Enums.MSPageFit.PageFitBestFit
                   .PrintPreviewZoomPercentage = Nothing
                   '-------------------------------------
               End With
           End With
           MyWord.AddNewTemplateInfo(TemplateInfo)
           '---------------------------------------
           'MyWord.PrintOut()
           MyWord.PrintPreview()

       Catch ex As Exception
           MSO.PrintingProcess.ShowErrorMsgAndClose(ex.Message)
       End Try
   End Sub
   '************* دالة خاصة بالطباعة ***********
   Private Function GetPrintableJob() As MSO.Printing.PrintJob

       Dim PrintJob As New MSO.Printing.PrintJob
       With PrintJob

           '============ طباعه راس الفاتوره ==============================

           '---------------------  Table 2 That Exist In Word Document ------------------

           .AddText(KASHF_CODE.Text, "KASHF_ID")
           .AddText(KASH_DATE.Value.Date, "KASH_DATE")
           .AddText(SIK_NAME.Text, "SIK_NAME")
           .AddText(SIK_AGE.Text, "SIK_AGE")
           .AddText(doc_name.Text, "doc_name")
           .AddText(DOC_TAKHSOS.Text, "DOC_TAKHSOS")
           .AddText(HARARA_.Text, "HARARA_")
           .AddText(DAKHT_.Text, "DAKHT_")
           .AddText(NABD_.Text, "NABD_")
           '.AddText(item_count.Text, "item_count")
           '.AddText(TAX_value.Text, "TAX_value")
           '.AddText(TAX_TOTAL.Text, "TAX_TOTAL")
           '.AddText(DISCOUNT_value.Text, "DISCOUNT_value")
           '.AddText(DISCOUNT_TOTAL.Text, "DISCOUNT_TOTAL")
           '.AddText(final_total.Text, "final_total")
           '.AddText(paid.Text, "paid")
           '.AddText(unpaid.Text, "UNpaid")
           'End With
           '####################################################################################
           '============= طباعه الداتا تفاصيل الفاتوره ===================
           'With .AddTable()
           '    .DataTable = Get_All_PRD()
           '    '-------------------------------------
           '    '.MinimumRowsAtTheBeginningOfTable = 3
           '    .IsFirstColumnAutoNumber = False
           '    .TableHeadBookMarkName = "TableHead_1"
           '    .FirstRowBookMarkName = "TableFirstRow_1"
           '    .DeleteTableIfNoData = False
           '    '-------------------------------------
           '    .AddTextColumn("PRD_ID")
           '    .AddTextColumn("prd_code")
           '    .AddTextColumn("prd_name")
           '    .AddTextColumn("BUYPRICE")
           '    .AddTextColumn("QTY")
           '    .AddTextColumn("TOTALAMOUNT")
           'End With
       End With
       Return PrintJob
   End Functi


ملحوظه 

RN.dotx هذا اسم ملف الورد ويتم حفظه كقالب وورد


اخي الكريم لا مشكلة لدي في عمل الكود يعمل بشكل ناجح المطلوب هو كما ذكرت معاينة عدة سجلات في نفس الملف وتكرار الصفحة حسب عدد السجلات لان الكود يعمل مع سجل واحد فقط ما اريده هو نفس موضوع دمج المراسلات في الوورد
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
RE: الطباعة الى الوورد كود بحاجة لتعديل - بواسطة i1982 - 21-06-21, 09:16 PM


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم