Option Strict Off Imports Microsoft.Office.Interop.Excel.XlUnderlineStyle Imports Microsoft.Office.Interop.Excel.Constants Imports Microsoft.Office.Interop.Excel.XlBordersIndex Imports Microsoft.Office.Interop.Excel.XlLineStyle Imports Microsoft.Office.Interop.Excel.XlBorderWeight Imports Microsoft.Office.Interop.Excel.XlThemeFont Imports Microsoft.Office.Interop.Excel.XlThemeColor Imports Microsoft.Office.Interop.Excel.XlWindowState Imports Microsoft.Office.Interop.Excel Imports PdfSharp.Pdf Imports PdfSharp.Pdf.IO Imports System.IO Imports Telerik.Windows.Documents.Spreadsheet.Expressions.Functions Public Class 應付款月報表 Dim xlApp As Application : Dim xlBook As Workbook : Dim xlSheet As Worksheet : Dim BN As Integer Private Sub 語言轉換讀取() If 系統語言 = "繁體中文" Then : 語言 = "CH" : ElseIf 系統語言 = "English" Then : 語言 = "EN" : ElseIf 系統語言 = "Indonesian" Then : 語言 = "IN" : End If Me.Text = 系統語言字典("H001-172-" & 語言) TabPage1.Text = 系統語言字典("H102-157-" & 語言) : TabPage2.Text = 系統語言字典("H108-148-" & 語言) : 表頭(0) = 系統語言字典("H108-148-" & 語言) 表頭(1) = 系統語言字典("H314-124-" & 語言) : 表頭(2) = 系統語言字典("H307-114-" & 語言) : 表頭(3) = 系統語言字典("H318-100-" & 語言) 表頭(4) = 系統語言字典("H319-101-" & 語言) : 表頭(5) = 系統語言字典("H319-100-" & 語言) : 表頭(6) = 系統語言字典("H319-102-" & 語言) Label2.Text = 系統語言字典("H319-103-" & 語言) : Label1.Text = 系統語言字典("H319-104-" & 語言) Label3.Text = 系統語言字典("H319-105-" & 語言) : Label4.Text = 系統語言字典("H319-106-" & 語言) Label7.Text = 系統語言字典("H319-103-" & 語言) : Label8.Text = 系統語言字典("H319-104-" & 語言) Label5.Text = 系統語言字典("H319-105-" & 語言) : Label6.Text = 系統語言字典("H319-106-" & 語言) End Sub Private Sub 分類清單() Dim ds1 As New DataSet : 單據_dgv.DataSource = Nothing : ds1.Clear() 單據_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 單據_dgv.ColumnHeadersHeight = 25 : 單據_dgv.AllowUserToAddRows = False If HX_ch.Checked = True And PGS_ch.Checked = False Then : PA = "HXI" : Else : PA = "PGS" : End If SQL_分類清單() da.Fill(ds1) : 單據_dgv.DataSource = ds1.Tables(0) : conn.Close() 單據_dgv.Columns(1).Visible = False End Sub Private Sub 分類明細() Dim ds1 As New DataSet : 明細_dgv.DataSource = Nothing : ds1.Clear() 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 明細_dgv.ColumnHeadersHeight = 45 : 明細_dgv.AllowUserToAddRows = False : 明細_dgv.RowTemplate.Height = 65 If HX_ch.Checked = True And PGS_ch.Checked = False Then : PA = "HXI" : Else : PA = "PGS" : End If PA1 = 年份_cb.Text & "/" & 月份_cb.Text If PA2 <> "N99" Then : SQL_分類帳務(PA2, PA1, PA) : Else : SQL_分類帳務1(PA1, PA) : End If da.Fill(ds1) : 明細_dgv.DataSource = ds1.Tables(0) : conn.Close() 明細_dgv.Columns(0).FillWeight = 50 : 明細_dgv.Columns(2).FillWeight = 200 : 明細_dgv.Columns(3).FillWeight = 450 明細_dgv.Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter 明細_dgv.Columns(0).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter 明細_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter 明細_dgv.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter 明細_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight 明細_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight 明細_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight 明細_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight 明細_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight 明細_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight 明細_dgv.Columns("主管人").Visible = False 彙總1_tb.Text = "0" : 彙總2_tb.Text = "0" : 彙總3_tb.Text = "0" : 彙總4_tb.Text = "0" For i As Integer = 0 To 明細_dgv.Rows.Count - 1 : 明細_dgv(0, i).Value = i + 1 If 明細_dgv("主管人", i).Value.ToString <> "" Then : 明細_dgv(5, i).Value = "0" : End If 明細_dgv(6, i).Value = CDbl(明細_dgv(4, i).Value.ToString) - CDbl(明細_dgv(5, i).Value.ToString) 明細_dgv(4, i).Value = Strings.Format(CDbl(明細_dgv(4, i).Value.ToString), "#,##0") : 明細_dgv(5, i).Value = Strings.Format(CDbl(明細_dgv(5, i).Value.ToString), "#,##0") 明細_dgv(6, i).Value = Strings.Format(CDbl(明細_dgv(6, i).Value.ToString), "#,##0") : 彙總1_tb.Text = CDbl(彙總1_tb.Text) + CDbl(明細_dgv(4, i).Value.ToString) 彙總2_tb.Text = CDbl(彙總2_tb.Text) + CDbl(明細_dgv(6, i).Value.ToString) : 彙總3_tb.Text = CDbl(彙總3_tb.Text) + CDbl(明細_dgv(5, i).Value.ToString) Next : 彙總4_tb.Text = CDbl(彙總1_tb.Text) - CDbl(彙總2_tb.Text) 彙總1_tb.Text = Strings.Format(CDbl(彙總1_tb.Text), "#,##0") : 彙總2_tb.Text = Strings.Format(CDbl(彙總2_tb.Text), "#,##0") 彙總3_tb.Text = Strings.Format(CDbl(彙總3_tb.Text), "#,##0") : 彙總4_tb.Text = Strings.Format(CDbl(彙總3_tb.Text), "#,##0") End Sub Private Sub 年份下拉表單資料載入() SQL_年份清單() : 年份_cb.Items.Clear() : While (dr.Read()) : 年份_cb.Items.Add(dr("年份")) : End While : conn.Close() End Sub Private Sub 應付款月報表() For I As Integer = 0 To 合計_dgv.Rows.Count - 1 : 合計_dgv.Rows.RemoveAt(0) : Next Dim SXD As Integer = 單據_dgv.Rows.Count - 1 For I As Integer = 0 To 單據_dgv.Rows.Count - 1 合計_dgv.Rows.Insert(0) : PA2 = 單據_dgv(1, SXD).Value.ToString : 分類明細() 合計_dgv(0, 0).Value = I + 1 : 合計_dgv(1, 0).Value = 年份_cb.Text & "/" & 月份_cb.Text : 合計_dgv(2, 0).Value = "" : Dim DFV As String If 單據_dgv(1, SXD).Value.ToString = "N01" Then : DFV = 系統語言字典("H319-107-" & 語言) ElseIf 單據_dgv(1, SXD).Value.ToString = "N02" Then : DFV = 系統語言字典("H319-108-" & 語言) ElseIf 單據_dgv(1, SXD).Value.ToString = "N99" Then : DFV = 系統語言字典("H319-109-" & 語言) : End If 合計_dgv(3, 0).Value = DFV & " " & 年份_cb.Text & "/" & 月份_cb.Text 合計_dgv(4, 0).Value = Strings.Format(CDbl(彙總1_tb.Text), "#,##0") : 合計_dgv(6, 0).Value = Strings.Format(CDbl(彙總2_tb.Text), "#,##0") 合計_dgv(5, 0).Value = Strings.Format((CDbl(彙總1_tb.Text) - CDbl(彙總2_tb.Text)), "#,##0") : SXD -= 1 Next 合計_dgv.Columns(0).FillWeight = 50 : 合計_dgv.Columns(2).Visible = False : 合計_dgv.Columns(3).FillWeight = 450 合計_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight 合計_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight 合計_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight 合計_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight 合計_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight 合計_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight 合計1_tb.Text = "0" : 合計2_tb.Text = "0" : 合計3_tb.Text = "0" : 合計4_tb.Text = "0" For i As Integer = 0 To 合計_dgv.Rows.Count - 1 : 合計_dgv(0, i).Value = i + 1 合計1_tb.Text = CDbl(合計1_tb.Text) + CDbl(合計_dgv(4, i).Value.ToString) 合計2_tb.Text = CDbl(合計2_tb.Text) + CDbl(合計_dgv(6, i).Value.ToString) 合計3_tb.Text = CDbl(合計3_tb.Text) + CDbl(合計_dgv(5, i).Value.ToString) Next : 合計4_tb.Text = CDbl(合計1_tb.Text) - CDbl(合計2_tb.Text) 合計1_tb.Text = Strings.Format(CDbl(合計1_tb.Text), "#,##0") : 合計2_tb.Text = Strings.Format(CDbl(合計2_tb.Text), "#,##0") 合計3_tb.Text = Strings.Format(CDbl(合計3_tb.Text), "#,##0") : 合計4_tb.Text = Strings.Format(CDbl(合計3_tb.Text), "#,##0") End Sub Private Sub 應付款月報表_Load(sender As Object, e As EventArgs) Handles MyBase.Load Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True H(319) = True : 介面 = "H319" : 顯示說明(999, False) : 語言轉換讀取() PictureBox2.SendToBack() : PictureBox3.SendToBack() MyMod.清單字體大小調整() 單據_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value) End Sub Private Sub 應付款月報表_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown 年份下拉表單資料載入() : 年份_cb.Text = DateAndTime.Year(DateAndTime.Today()) : 月份_cb.SelectedIndex = DateAndTime.Month(DateAndTime.Today) - 1 : 分類清單() : 首次開啟 = False 合計_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing 合計_dgv.ColumnHeadersHeight = 45 : 合計_dgv.RowTemplate.Height = 65 : 合計_dgv.AllowUserToAddRows = False Dim DB01 As New DataGridViewTextBoxColumn : Dim DB02 As New DataGridViewTextBoxColumn : Dim DB03 As New DataGridViewTextBoxColumn : Dim DB04 As New DataGridViewTextBoxColumn Dim DB05 As New DataGridViewTextBoxColumn : Dim DB06 As New DataGridViewTextBoxColumn : Dim DB07 As New DataGridViewTextBoxColumn DB01.HeaderText = "No" : DB01.Name = "No" : 合計_dgv.Columns.Insert(0, DB01) : DB02.HeaderText = 表頭(1) : DB02.Name = 表頭(1) : 合計_dgv.Columns.Insert(1, DB02) DB03.HeaderText = 表頭(2) : DB03.Name = 表頭(2) : 合計_dgv.Columns.Insert(2, DB03) : DB04.HeaderText = 表頭(3) : DB04.Name = 表頭(3) : 合計_dgv.Columns.Insert(3, DB04) DB05.HeaderText = 表頭(4) : DB05.Name = 表頭(4) : 合計_dgv.Columns.Insert(4, DB05) : DB06.HeaderText = 表頭(5) : DB06.Name = 表頭(5) : 合計_dgv.Columns.Insert(5, DB06) DB07.HeaderText = 表頭(6) : DB07.Name = 表頭(6) : 合計_dgv.Columns.Insert(6, DB07) 應付款月報表() End Sub Private Sub 應付款月報表_Closed(sender As Object, e As EventArgs) Handles MyBase.Closed H(319) = False : MyMod.虛擬桌面開啟() End Sub Private Sub 應付款月報表_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged MyMod.清單字體大小調整() 單據_dgv.RowsDefaultCellStyle.Font = New System.Drawing.Font("微軟正黑體", HX_PGS_ERP_SYS.字體_NUD.Value) End Sub Private Sub 登入閒置控制_MouseMove(sender As Object, e As EventArgs) Handles MyBase.MouseMove timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True End Sub Private Sub 登入閒置控制_KeyPress(sender As Object, e As EventArgs) Handles MyBase.KeyPress timeNow = 0 : HX_PGS_ERP_SYS.Timer1.Enabled = False : HX_PGS_ERP_SYS.Timer1.Enabled = True End Sub Private Sub 單據_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 單據_dgv.CellClick If e.RowIndex = -1 Then : Else : PA2 = 單據_dgv(1, e.RowIndex).Value.ToString : 分類明細() : End If End Sub Private Sub 設定_bt_Click(sender As Object, e As EventArgs) Handles 設定_bt.Click 應付款會科設定.Show() End Sub Private Sub HX_ch_CheckedChanged(sender As Object, e As EventArgs) Handles HX_ch.Click PictureBox2.SendToBack() : PictureBox3.SendToBack() : HX_ch.Checked = True : PGS_ch.Checked = False : 分類明細() : 應付款月報表() End Sub Private Sub PGS_ch_CheckedChanged(sender As Object, e As EventArgs) Handles PGS_ch.Click PictureBox1.SendToBack() : PictureBox4.SendToBack() : HX_ch.Checked = False : PGS_ch.Checked = True : 分類明細() : 應付款月報表() End Sub Private Sub 年份_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 年份_cb.SelectedIndexChanged If 首次開啟 = False Then : 分類明細() : 應付款月報表() : End If End Sub Private Sub 月份_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 月份_cb.SelectedIndexChanged If 首次開啟 = False Then : 分類明細() : 應付款月報表() : End If End Sub Private Sub 列印成EXCEL1_bt_Click(sender As Object, e As EventArgs) Handles 列印成EXCEL1_bt.Click 列印成EXCEL() End Sub Private Sub 列印成EXCEL_bt_Click(sender As Object, e As EventArgs) Handles 列印成EXCEL_bt.Click 列印成EXCEL() End Sub Private Sub 列印成EXCEL() PA17 = "EXCEL" : PA18 = "PDF" : 選擇考勤月份.ShowDialog() xlApp = CType(CreateObject("Excel.Application"), Application) xlBook = xlApp.Workbooks.Add xlApp.DisplayAlerts = True xlApp.Visible = True xlApp.Application.WindowState = xlMaximized Dim SXD As Integer = 單據_dgv.Rows.Count - 1 For I As Integer = 0 To 單據_dgv.Rows.Count - 1 PA2 = 單據_dgv(1, SXD).Value.ToString : 分類明細() : Dim DFV As String If 單據_dgv(1, SXD).Value.ToString = "N01" Then : PA1 = 單據_dgv(0, SXD).Value.ToString : DFV = 系統語言字典("H319-107-" & 語言) ElseIf 單據_dgv(1, SXD).Value.ToString = "N02" Then : PA1 = 單據_dgv(0, SXD).Value.ToString : DFV = 系統語言字典("H319-108-" & 語言) ElseIf 單據_dgv(1, SXD).Value.ToString = "N99" Then : PA1 = 單據_dgv(0, SXD).Value.ToString : DFV = 系統語言字典("H319-109-" & 語言) : End If If HX_ch.Checked = True And PGS_ch.Checked = False Then : PA = "HXI" : Else : PA = "PGS" : End If xlSheet = NewMethod(xlBook) : xlApp.Sheets(1).Select : SXD -= 1 xlApp.Sheets(1).Name = PA1.Replace("/", "_") : xlBook.Activate() : xlSheet.Activate() xlSheet.Cells(4, 2) = DFV & " " & PA & "-" & 月份_cb.Text & "-" & 年份_cb.Text xlSheet.Cells(5, 2) = "No" : xlSheet.Cells(5, 3) = 表頭(1) : xlSheet.Cells(5, 4) = 表頭(2) : xlSheet.Cells(5, 5) = 表頭(3) : xlSheet.Cells(5, 6) = 表頭(4) xlSheet.Cells(5, 7) = 表頭(5) : xlSheet.Cells(5, 8) = 表頭(6) : BN = 0 For ii As Integer = 0 To 明細_dgv.Rows.Count - 1 : BN += 1 xlSheet.Cells(ii + 6, 2) = 明細_dgv.Rows(ii).Cells(0).Value.ToString : xlSheet.Cells(ii + 6, 3) = 明細_dgv.Rows(ii).Cells(1).Value.ToString xlSheet.Cells(ii + 6, 4) = 明細_dgv.Rows(ii).Cells(2).Value.ToString : xlSheet.Cells(ii + 6, 5) = 明細_dgv.Rows(ii).Cells(3).Value.ToString xlSheet.Cells(ii + 6, 6) = 明細_dgv.Rows(ii).Cells(4).Value.ToString : xlSheet.Cells(ii + 6, 7) = 明細_dgv.Rows(ii).Cells(5).Value.ToString xlSheet.Cells(ii + 6, 8) = 明細_dgv.Rows(ii).Cells(6).Value.ToString Next xlSheet.Cells(6 + BN, 2) = Label2.Text : xlSheet.Cells(6 + BN, 6) = 彙總1_tb.Text xlSheet.Cells(6 + BN + 1, 2) = Label1.Text : xlSheet.Cells(6 + BN + 1, 6) = 彙總2_tb.Text xlSheet.Cells(6 + BN + 2, 2) = Label3.Text : xlSheet.Cells(6 + BN + 2, 6) = 彙總3_tb.Text xlSheet.Cells(6 + BN + 3, 2) = Label4.Text : xlSheet.Cells(6 + BN + 3, 6) = 彙總4_tb.Text AA(xlApp, xlSheet) : FF(xlApp, xlSheet) If HX_ch.Checked = True And PGS_ch.Checked = False Then : CC(xlApp, xlSheet) : Else : DD(xlApp, xlSheet) : End If Next xlSheet = NewMethod(xlBook) : xlApp.Sheets(1).Select : SXD -= 1 xlApp.Sheets(1).Name = "TOTAL" : xlBook.Activate() : xlSheet.Activate() xlSheet.Cells(5, 2) = "No" : xlSheet.Cells(5, 3) = 表頭(1) : xlSheet.Cells(5, 4) = 表頭(3) : xlSheet.Cells(5, 5) = 表頭(4) xlSheet.Cells(5, 6) = 表頭(5) : xlSheet.Cells(5, 7) = 表頭(6) : BN = 0 For ii As Integer = 0 To 合計_dgv.Rows.Count - 1 : BN += 1 xlSheet.Cells(ii + 6, 2) = 合計_dgv.Rows(ii).Cells(0).Value.ToString : xlSheet.Cells(ii + 6, 3) = 合計_dgv.Rows(ii).Cells(1).Value.ToString xlSheet.Cells(ii + 6, 4) = 合計_dgv.Rows(ii).Cells(3).Value.ToString : xlSheet.Cells(ii + 6, 5) = 合計_dgv.Rows(ii).Cells(4).Value.ToString xlSheet.Cells(ii + 6, 6) = 合計_dgv.Rows(ii).Cells(5).Value.ToString : xlSheet.Cells(ii + 6, 7) = 合計_dgv.Rows(ii).Cells(6).Value.ToString Next xlSheet.Cells(6 + BN, 2) = Label2.Text : xlSheet.Cells(6 + BN, 6) = 合計1_tb.Text xlSheet.Cells(6 + BN + 1, 2) = Label1.Text : xlSheet.Cells(6 + BN + 1, 6) = 合計2_tb.Text xlSheet.Cells(6 + BN + 2, 2) = Label3.Text : xlSheet.Cells(6 + BN + 2, 6) = 合計3_tb.Text xlSheet.Cells(6 + BN + 3, 2) = Label4.Text : xlSheet.Cells(6 + BN + 3, 6) = 合計4_tb.Text BB(xlApp, xlSheet) : FF(xlApp, xlSheet) If HX_ch.Checked = True And PGS_ch.Checked = False Then : CC(xlApp, xlSheet) : Else : DD(xlApp, xlSheet) : End If xlApp.Sheets(單據_dgv.Rows.Count + 2).Delete : xlSheet.PageSetup.PrintArea = "" If PA19 = "PDF" Then If HX_ch.Checked = True And PGS_ch.Checked = False Then : PA = "HXI" : Else : PA = "PGS" : End If '-------------轉換成PDF--------------------------------------------------------------------- Dim SERT As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) xlBook.Sheets(1).ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X1.pdf", XlFixedFormatQuality.xlQualityStandard, True) xlBook.Sheets(2).ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X2.pdf", XlFixedFormatQuality.xlQualityStandard, True) xlBook.Sheets(3).ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X3.pdf", XlFixedFormatQuality.xlQualityStandard, True) xlBook.Sheets(4).ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X4.pdf", XlFixedFormatQuality.xlQualityStandard, True) Dim pdf1 As String = SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X1.pdf" Dim pdf2 As String = SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X2.pdf" Dim pdf3 As String = SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X3.pdf" Dim pdf4 As String = SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X4.pdf" Dim outputPDF As String = SERT & "\KAS BESAR PERUSAHAAN " & PA & "-" & 年份_cb.Text & "-" & 月份_cb.Text & ".pdf" Dim mergedDocument As New PdfDocument() ' 创建一个新的PDF文档对象 Dim document1 As PdfDocument = PdfReader.Open(pdf1, PdfDocumentOpenMode.Import) ' 打开第一个PDF文件 For Each page As PdfPage In document1.Pages : mergedDocument.AddPage(page) : Next ' 将第一个PDF文件的页面逐一添加到合并文档 Dim document2 As PdfDocument = PdfReader.Open(pdf2, PdfDocumentOpenMode.Import) ' 打开第二个PDF文件 For Each page As PdfPage In document2.Pages : mergedDocument.AddPage(page) : Next ' 将第二个PDF文件的页面逐一添加到合并文档 Dim document3 As PdfDocument = PdfReader.Open(pdf3, PdfDocumentOpenMode.Import) ' 打开第三个PDF文件 For Each page As PdfPage In document3.Pages : mergedDocument.AddPage(page) : Next ' 将第三个PDF文件的页面逐一添加到合并文档 Dim document4 As PdfDocument = PdfReader.Open(pdf4, PdfDocumentOpenMode.Import) ' 打开第三个PDF文件 For Each page As PdfPage In document4.Pages : mergedDocument.AddPage(page) : Next ' 将第三个PDF文件的页面逐一添加到合并文档 mergedDocument.Save(outputPDF) ' 保存合并后的PDF文件 document1.Close() : document2.Close() : document3.Close() ' 关闭文档对象 File.Delete(SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X1.pdf") File.Delete(SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X2.pdf") File.Delete(SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X3.pdf") File.Delete(SERT & "\KAS BESAR PERUSAHAAN " & PA & "_X4.pdf") ' 删除文件1和文件2 '-------------關閉EXCEL--------------------------------------------------------------------- xlSheet.PageSetup.PrintArea = "" : xlApp.Cells.Select() xlApp.Application.WindowState = xlMinimized xlBook.Close(False) Runtime.InteropServices.Marshal.ReleaseComObject(xlSheet) Runtime.InteropServices.Marshal.ReleaseComObject(xlBook) Runtime.InteropServices.Marshal.ReleaseComObject(xlApp) xlApp.Quit() : xlSheet = Nothing : xlBook = Nothing : xlApp = Nothing : GC.Collect() '-------------開啟PDF--------------------------------------------------------------------- Dim pdfFilePath As String = SERT & "\KAS BESAR PERUSAHAAN " & PA & "-" & 年份_cb.Text & "-" & 月份_cb.Text & ".pdf" If IsChromeInstalled() Then Try Dim chromeProcess As New Process() chromeProcess.StartInfo.FileName = "chrome" chromeProcess.StartInfo.Arguments = """" & pdfFilePath & """" chromeProcess.Start() Catch ex As Exception End Try Else Try System.Diagnostics.Process.Start("""" & pdfFilePath & """") Catch ex As Exception End Try End If End If MGB(系統語言字典("H508-121-" & 語言), 1) : 首次開啟 = False End Sub Private Function IsChromeInstalled() As Boolean Dim key As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall") If key IsNot Nothing Then For Each subkeyName As String In key.GetSubKeyNames() Dim subkey As Microsoft.Win32.RegistryKey = key.OpenSubKey(subkeyName) Dim displayName As Object = subkey.GetValue("DisplayName") If displayName IsNot Nothing AndAlso displayName.ToString().Contains("Google Chrome") Then Return True End If Next End If Return False End Function Private Shared Function NewMethod(xlBook As Workbook) As Worksheet Return CType(xlBook.Worksheets.Add, Worksheet) End Function Private Sub AA(ByVal myExcel As Application, ByVal xlSheet As Worksheet) xlSheet.Cells.Select() With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 12 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With xlSheet.Columns("A:A").Select : myExcel.Selection.ColumnWidth = 2 xlSheet.Rows("5:5").Select : myExcel.Selection.RowHeight = 35 xlSheet.Columns("B:B").Select : myExcel.Selection.ColumnWidth = 4 With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With xlSheet.Columns("C:C").Select : myExcel.Selection.NumberFormatLocal = "yyyy/mm/dd" : myExcel.Selection.ColumnWidth = 13 With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With xlSheet.Columns("D:D").Select : myExcel.Selection.ColumnWidth = 20 xlSheet.Columns("E:E").Select : myExcel.Selection.ColumnWidth = 70 xlSheet.Columns("D:E").Select With myExcel.Selection : .HorizontalAlignment = xlGeneral : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With xlSheet.Range("B5:H5").Select() With myExcel.Selection : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False .ReadingOrder = xlContext : .MergeCells = False : End With xlSheet.Range("F5:H5").Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With xlSheet.Columns("F:H").Select : myExcel.Selection.Style = "Comma" : myExcel.Selection.NumberFormatLocal = "_-* #,##0_-;-* #,##0_-;_-* ""-""??_-;_-@_-" xlSheet.Range("B" & 6 + BN & ":E" & 6 + BN).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("B" & 6 + BN + 1 & ":E" & 6 + BN + 1).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("B" & 6 + BN + 2 & ":E" & 6 + BN + 2).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("B" & 6 + BN + 3 & ":E" & 6 + BN + 3).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("B" & 6 + BN & ":E" & 6 + BN + 3).Select() With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : End With xlSheet.Range("F" & 6 + BN & ":H" & 6 + BN).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("F" & 6 + BN + 1 & ":H" & 6 + BN + 1).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("F" & 6 + BN + 2 & ":H" & 6 + BN + 2).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("F" & 6 + BN + 3 & ":H" & 6 + BN + 3).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Rows(6 + BN & ":" & 6 + BN + 3).Select : myExcel.Selection.RowHeight = 30 xlSheet.Range("B5:H" & 6 + BN + 3).Select() myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With xlSheet.Range("B5:H5").Select() With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .Color = 49407 : .TintAndShade = 0 : .PatternTintAndShade = 0 : End With xlSheet.Columns("F:H").Select : myExcel.Selection.ColumnWidth = 18 xlSheet.Rows("6:6").Select : myExcel.ActiveWindow.FreezePanes = True : myExcel.ActiveWindow.DisplayGridlines = False xlSheet.Rows("1:1").Select : myExcel.Selection.RowHeight = 35 xlSheet.Rows("2:4").Select : myExcel.Selection.RowHeight = 30 Dim 攔寬 As Double For i As Integer = 6 To BN + 6 - 1 xlSheet.Rows(i & ":" & i).Select : 攔寬 = xlSheet.Rows(i & ":" & i).RowHeight xlSheet.Rows(i & ":" & i).Select : myExcel.Selection.RowHeight = 攔寬 + 10 Next xlSheet.Range("B4:F4").Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("B4:F4").Select() With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 18 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With End Sub Private Sub BB(ByVal myExcel As Application, ByVal xlSheet As Worksheet) xlSheet.Cells.Select() With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 12 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With xlSheet.Columns("A:A").Select : myExcel.Selection.ColumnWidth = 2 xlSheet.Rows("5:5").Select : myExcel.Selection.RowHeight = 35 xlSheet.Columns("B:B").Select : myExcel.Selection.ColumnWidth = 4 With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With xlSheet.Columns("C:C").Select : myExcel.Selection.NumberFormatLocal = "yyyy/mm/dd" : myExcel.Selection.ColumnWidth = 13 With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With xlSheet.Columns("D:D").Select : myExcel.Selection.ColumnWidth = 70 With myExcel.Selection : .HorizontalAlignment = xlGeneral : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With xlSheet.Range("B5:G5").Select() With myExcel.Selection : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False .ReadingOrder = xlContext : .MergeCells = False : End With xlSheet.Range("E5:G5").Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With xlSheet.Columns("E:G").Select : myExcel.Selection.Style = "Comma" : myExcel.Selection.NumberFormatLocal = "_-* #,##0_-;-* #,##0_-;_-* ""-""??_-;_-@_-" xlSheet.Range("B" & 6 + BN & ":D" & 6 + BN).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("B" & 6 + BN + 1 & ":D" & 6 + BN + 1).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("B" & 6 + BN + 2 & ":D" & 6 + BN + 2).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("B" & 6 + BN + 3 & ":D" & 6 + BN + 3).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 : .ShrinkToFit = False .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("B" & 6 + BN & ":D" & 6 + BN + 3).Select() With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : End With xlSheet.Range("E" & 6 + BN & ":G" & 6 + BN).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("E" & 6 + BN + 1 & ":G" & 6 + BN + 1).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("E" & 6 + BN + 2 & ":G" & 6 + BN + 2).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Range("E" & 6 + BN + 3 & ":G" & 6 + BN + 3).Select() With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0 .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge xlSheet.Rows(6 + BN & ":" & 6 + BN + 3).Select : myExcel.Selection.RowHeight = 30 xlSheet.Range("B5:G" & 6 + BN + 3).Select() myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With xlSheet.Range("B5:G5").Select() With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .Color = 49407 : .TintAndShade = 0 : .PatternTintAndShade = 0 : End With xlSheet.Columns("E:G").Select : myExcel.Selection.ColumnWidth = 18 xlSheet.Rows("6:6").Select : myExcel.ActiveWindow.FreezePanes = True : myExcel.ActiveWindow.DisplayGridlines = False xlSheet.Rows("1:1").Select : myExcel.Selection.RowHeight = 35 xlSheet.Rows("2:2").Select : myExcel.Selection.RowHeight = 30 Dim 攔寬 As Double For i As Integer = 6 To BN + 6 - 1 xlSheet.Rows(i & ":" & i).Select : 攔寬 = xlSheet.Rows(i & ":" & i).RowHeight xlSheet.Rows(i & ":" & i).Select : myExcel.Selection.RowHeight = 攔寬 + 10 Next End Sub Private Sub CC(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Worksheet) Clipboard.SetDataObject(合約報價單.PictureBox1.Image) xlSheet.Range("B1").Select() myExcel.ActiveSheet.Pictures.Paste.Select myExcel.Selection.ShapeRange.Height = 93 myExcel.Selection.ShapeRange.IncrementLeft(50) myExcel.Selection.ShapeRange.IncrementTop(0) End Sub Private Sub DD(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Worksheet) Clipboard.SetDataObject(合約報價單.PictureBox2.Image) xlSheet.Range("B1").Select() myExcel.ActiveSheet.Pictures.Paste.Select myExcel.Selection.ShapeRange.Height = 93 myExcel.Selection.ShapeRange.IncrementLeft(50) myExcel.Selection.ShapeRange.IncrementTop(0) End Sub Private Sub FF(ByVal myExcel As Application, ByVal xlSheet As Worksheet) If HX_ch.Checked = True And PGS_ch.Checked = False Then myExcel.ActiveSheet.PageSetup.CenterHeaderPicture.Filename = Str01 & "\HXBWLOG.png" Else myExcel.ActiveSheet.PageSetup.CenterHeaderPicture.Filename = Str01 & "\PGSBWLOG.png" End If myExcel.Application.PrintCommunication = False With myExcel.ActiveSheet.PageSetup : .PrintTitleRows = "$1:$10" : .PrintTitleColumns = "" : End With myExcel.Application.PrintCommunication = True : myExcel.ActiveSheet.PageSetup.PrintArea = "" : myExcel.Application.PrintCommunication = False With myExcel.ActiveSheet.PageSetup : .LeftHeader = "" .CenterHeader = "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "" & Chr(10) & "&G" .RightHeader = "" : .LeftFooter = "" : .CenterFooter = "第 &P 頁,共 &N 頁" : .RightFooter = "" .LeftMargin = myExcel.Application.InchesToPoints(0.236220472440945) : .RightMargin = myExcel.Application.InchesToPoints(0.236220472440945) .TopMargin = myExcel.Application.InchesToPoints(0.748031496062992) : .BottomMargin = myExcel.Application.InchesToPoints(0.748031496062992) .HeaderMargin = myExcel.Application.InchesToPoints(0.31496062992126) : .FooterMargin = myExcel.Application.InchesToPoints(0.31496062992126) .PrintHeadings = False : .PrintGridlines = False : .CenterHorizontally = False : .CenterVertically = False : .Draft = False .FirstPageNumber = xlAutomatic : .BlackAndWhite = False : .Zoom = False : .FitToPagesWide = 1 : .FitToPagesTall = False : .OddAndEvenPagesHeaderFooter = False .DifferentFirstPageHeaderFooter = False : .ScaleWithDocHeaderFooter = True : .AlignMarginsHeaderFooter = True : .EvenPage.LeftHeader.Text = "" .EvenPage.CenterHeader.Text = "" : .EvenPage.RightHeader.Text = "" : .EvenPage.LeftFooter.Text = "" : .EvenPage.CenterFooter.Text = "" .EvenPage.RightFooter.Text = "" : .FirstPage.LeftHeader.Text = "" : .FirstPage.CenterHeader.Text = "" : .FirstPage.RightHeader.Text = "" .FirstPage.LeftFooter.Text = "" : .FirstPage.CenterFooter.Text = "" : .FirstPage.RightFooter.Text = "" End With : myExcel.Application.PrintCommunication = True End Sub End Class