説明なし
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

營運成本收支單一覽表.vb 51KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569
  1. Option Strict Off
  2. Imports System.Data.SqlClient
  3. Imports System.IO
  4. Imports Microsoft.Office.Interop.Excel.XlUnderlineStyle
  5. Imports Microsoft.Office.Interop.Excel.Constants
  6. Imports Microsoft.Office.Interop.Excel.XlBordersIndex
  7. Imports Microsoft.Office.Interop.Excel.XlLineStyle
  8. Imports Microsoft.Office.Interop.Excel.XlBorderWeight
  9. Imports Microsoft.Office.Interop.Excel.XlThemeFont
  10. Imports Microsoft.Office.Interop.Excel.XlThemeColor
  11. Imports Microsoft.Office.Interop.Excel.XlWindowState
  12. Imports Microsoft.Office.Interop.Excel
  13. Public Class 營運成本收支單一覽表
  14. ReadOnly ds As New DataSet : ReadOnly ds1 As New DataSet : ReadOnly ds2 As New DataSet : Dim ds4 As New DataSet
  15. Dim DTP As String : Dim N1 As Integer : Dim N2 As Integer : Dim 對話框(0) As String
  16. Dim xlApp As Application
  17. Dim xlBook As Workbook
  18. Dim xlSheet As Worksheet
  19. Private Sub Set_清單1()
  20. 單據彙總_dgv.DataSource = Nothing : ds1.Clear()
  21. 單據彙總_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  22. 單據彙總_dgv.ColumnHeadersHeight = 25
  23. 單據彙總_dgv.AllowUserToAddRows = False
  24. SQL_營運成本收支單一覽表_查詢清單() : da.Fill(ds1) : 單據彙總_dgv.DataSource = ds1.Tables(0) : conn.Close()
  25. 單據彙總_dgv.Columns(0).FillWeight = 160 : 單據彙總_dgv.Columns(1).Visible = False : 單據彙總_dgv.Columns(2).FillWeight = 100 : 單據彙總_dgv.Columns(3).Visible = False
  26. 單據彙總_dgv.Columns(4).FillWeight = 100 : 單據彙總_dgv.Columns(5).Visible = False : 單據彙總_dgv.Columns(6).Visible = False
  27. End Sub
  28. Private Sub Set_清單2()
  29. 財務彙總_dgv.DataSource = Nothing : ds2.Clear()
  30. 財務彙總_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  31. 財務彙總_dgv.ColumnHeadersHeight = 25
  32. 財務彙總_dgv.AllowUserToAddRows = False
  33. SQL_營運成本收支單一覽表_查詢清單2() : da.Fill(ds2) : 財務彙總_dgv.DataSource = ds2.Tables(0) : conn.Close()
  34. 財務彙總_dgv.Columns(0).FillWeight = 100 : 財務彙總_dgv.Columns(1).FillWeight = 140 : 財務彙總_dgv.Columns(2).FillWeight = 140 : 財務彙總_dgv.Columns(3).FillWeight = 140
  35. 財務彙總_dgv.Columns(4).FillWeight = 100 : 財務彙總_dgv.Columns(5).FillWeight = 100 : 財務彙總_dgv.Columns(6).FillWeight = 100 : 財務彙總_dgv.Columns(7).FillWeight = 100
  36. 財務彙總_dgv.Columns(8).FillWeight = 100 : 財務彙總_dgv.Columns(9).FillWeight = 100
  37. 財務彙總_dgv.Columns(6).DefaultCellStyle.Format = "#,##0.00" : 財務彙總_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.00" : 財務彙總_dgv.Columns(4).DefaultCellStyle.Format = "#,##0.00"
  38. 財務彙總_dgv.Columns(5).DefaultCellStyle.Format = "#,##0.00"
  39. 財務彙總_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 財務彙總_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  40. 財務彙總_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 財務彙總_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  41. 財務彙總_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 財務彙總_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  42. 財務彙總_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 財務彙總_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  43. 財務彙總_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 財務彙總_dgv.Columns(8).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  44. 財務彙總_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 財務彙總_dgv.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  45. 財務彙總_dgv.Columns(0).ReadOnly = True : 財務彙總_dgv.Columns(1).ReadOnly = True : 財務彙總_dgv.Columns(2).ReadOnly = True : 財務彙總_dgv.Columns(3).ReadOnly = True
  46. 財務彙總_dgv.Columns(4).ReadOnly = True : 財務彙總_dgv.Columns(5).ReadOnly = True : 財務彙總_dgv.Columns(6).ReadOnly = True : 財務彙總_dgv.Columns(7).ReadOnly = True
  47. End Sub
  48. Private Sub Set_費用清單()
  49. 明細_dgv.DataSource = Nothing : ds.Clear()
  50. 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  51. 明細_dgv.ColumnHeadersHeight = 25
  52. 明細_dgv.AllowUserToAddRows = False
  53. 明細_dgv.RowTemplate.Height = 35
  54. SQL_營運成本收支單一覽表_查詢費用清單() : da.Fill(ds) : 明細_dgv.DataSource = ds.Tables(0) : conn.Close()
  55. 明細_dgv.Columns(0).Visible = False : 明細_dgv.Columns(1).FillWeight = 80 : 明細_dgv.Columns(2).FillWeight = 300 : 明細_dgv.Columns(3).FillWeight = 500
  56. 明細_dgv.Columns(4).FillWeight = 140 : 明細_dgv.Columns(5).FillWeight = 140 : 明細_dgv.Columns(6).FillWeight = 140 : 明細_dgv.Columns(7).FillWeight = 140
  57. 明細_dgv.Columns(8).FillWeight = 140 : 明細_dgv.Columns(9).FillWeight = 140 : 明細_dgv.Columns(10).FillWeight = 140 : 明細_dgv.Columns(11).Visible = False
  58. 明細_dgv.Columns(12).Visible = False
  59. 明細_dgv.Columns(1).ReadOnly = True : 明細_dgv.Columns(2).ReadOnly = True : 明細_dgv.Columns(9).ReadOnly = True : 明細_dgv.Columns(10).ReadOnly = True
  60. 明細_dgv.Columns(4).DefaultCellStyle.Format = "#,##0.00" : 明細_dgv.Columns(5).DefaultCellStyle.Format = "#,##0.00" : 明細_dgv.Columns(6).DefaultCellStyle.Format = "#,##0.00"
  61. 明細_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.00"
  62. 明細_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  63. 明細_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  64. 明細_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  65. 明細_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight : 明細_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  66. 明細_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  67. 明細_dgv.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(10).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  68. 明細_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  69. 明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  70. 台幣現金_tb.Text = "0.00" : 台幣支出_tb.Text = "0.00" : 台幣現金餘額_tb.Text = "0.00" : 台幣零用金_tb.Text = "0.00" : 台幣支票_tb.Text = "0.00"
  71. 人民幣零用金_tb.Text = "0.00" : 人民幣支票_tb.Text = "0.00" : 人民幣現金_tb.Text = "0.00" : 人民幣支出_tb.Text = "0.00" : 人民幣現金餘額_tb.Text = "0.00"
  72. 美金_tb.Text = "0.00" : 美金支票_tb.Text = "0.00" : 美金現金_tb.Text = "0.00" : 美金支出_tb.Text = "0.00" : 美金餘額_tb.Text = "0.00"
  73. 印尼盾_tb.Text = "0.00" : 印尼支票_tb.Text = "0.00" : 印尼現金_tb.Text = "0.00" : 印尼支出_tb.Text = "0.00" : 印尼餘額_tb.Text = "0.00"
  74. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  75. If 明細_dgv.Rows(i).Cells(表頭(115)).Value = "台幣現金" Then
  76. 台幣現金_tb.Text = Val(台幣現金_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(39)).Value
  77. 台幣支出_tb.Text = Val(台幣支出_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(112)).Value
  78. 台幣零用金_tb.Text = Val(台幣零用金_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(110)).Value
  79. 台幣支票_tb.Text = Val(台幣支票_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(111)).Value
  80. End If
  81. If 明細_dgv.Rows(i).Cells(表頭(115)).Value = "人民幣現金" Then
  82. 人民幣現金_tb.Text = Val(人民幣現金_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(39)).Value
  83. 人民幣支出_tb.Text = Val(人民幣支出_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(112)).Value
  84. 人民幣零用金_tb.Text = Val(人民幣零用金_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(110)).Value
  85. 人民幣支票_tb.Text = Val(人民幣支票_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(111)).Value
  86. End If
  87. If 明細_dgv.Rows(i).Cells(表頭(115)).Value = "美金" Then
  88. 美金_tb.Text = Val(美金_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(110)).Value
  89. 美金支出_tb.Text = Val(美金支出_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(112)).Value
  90. 美金現金_tb.Text = Val(美金現金_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(39)).Value
  91. 美金支票_tb.Text = Val(美金支票_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(111)).Value
  92. End If
  93. If 明細_dgv.Rows(i).Cells(表頭(115)).Value = "印尼盾" Then
  94. 印尼盾_tb.Text = Val(印尼盾_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(110)).Value
  95. 印尼支出_tb.Text = Val(印尼支出_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(112)).Value
  96. 印尼現金_tb.Text = Val(印尼現金_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(39)).Value
  97. 印尼支票_tb.Text = Val(印尼支票_tb.Text) + 明細_dgv.Rows(i).Cells(表頭(111)).Value
  98. End If
  99. Next i
  100. 台幣現金餘額_tb.Text = Val(台幣零用金_tb.Text) + Val(台幣現金_tb.Text) - Val(台幣支出_tb.Text) : 人民幣現金餘額_tb.Text = Val(人民幣零用金_tb.Text) + Val(人民幣現金_tb.Text) - Val(人民幣支出_tb.Text)
  101. 美金餘額_tb.Text = Val(美金_tb.Text) + Val(美金現金_tb.Text) - Val(美金支出_tb.Text) : 印尼餘額_tb.Text = Val(印尼現金_tb.Text) + Val(印尼盾_tb.Text) - Val(印尼支出_tb.Text)
  102. If Val(台幣現金餘額_tb.Text) > 0 Then : 台幣現金餘額_tb.ForeColor = Color.Blue : Else : 台幣現金餘額_tb.ForeColor = Color.Red : End If
  103. If Val(人民幣現金餘額_tb.Text) > 0 Then : 人民幣現金餘額_tb.ForeColor = Color.Blue : Else : 台幣現金餘額_tb.ForeColor = Color.IndianRed : End If
  104. If Val(美金餘額_tb.Text) > 0 Then : 美金餘額_tb.ForeColor = Color.DarkSlateGray : Else : 美金餘額_tb.ForeColor = Color.Red : End If
  105. If Val(印尼餘額_tb.Text) > 0 Then : 印尼餘額_tb.ForeColor = Color.IndianRed : Else : 印尼餘額_tb.ForeColor = Color.DarkSlateGray : End If
  106. 台幣現金_tb.Text = Strings.Format(Val(台幣現金_tb.Text), "#,##0.00") : 台幣支出_tb.Text = Strings.Format(Val(台幣支出_tb.Text), "#,##0.00") : 台幣現金餘額_tb.Text = Strings.Format(Val(台幣現金餘額_tb.Text), "#,##0.00")
  107. 台幣零用金_tb.Text = Strings.Format(Val(台幣零用金_tb.Text), "#,##0.00") : 台幣支票_tb.Text = Strings.Format(Val(台幣支票_tb.Text), "#,##0.00")
  108. 人民幣零用金_tb.Text = Strings.Format(Val(人民幣零用金_tb.Text), "#,##0.00") : 人民幣支票_tb.Text = Strings.Format(Val(人民幣支票_tb.Text), "#,##0.00") : 人民幣現金_tb.Text = Strings.Format(Val(人民幣現金_tb.Text), "#,##0.00")
  109. 人民幣支出_tb.Text = Strings.Format(Val(人民幣支出_tb.Text), "#,##0.00") : 人民幣現金餘額_tb.Text = Strings.Format(Val(人民幣現金餘額_tb.Text), "#,##0.00")
  110. 美金現金_tb.Text = Strings.Format(Val(美金現金_tb.Text), "#,##0.00") : 美金支出_tb.Text = Strings.Format(Val(美金支出_tb.Text), "#,##0.00") : 美金餘額_tb.Text = Strings.Format(Val(美金餘額_tb.Text), "#,##0.00")
  111. 美金_tb.Text = Strings.Format(Val(美金_tb.Text), "#,##0.00") : 美金支票_tb.Text = Strings.Format(Val(美金支票_tb.Text), "#,##0.00")
  112. 印尼現金_tb.Text = Strings.Format(Val(印尼現金_tb.Text), "#,##0.00") : 印尼支出_tb.Text = Strings.Format(Val(印尼支出_tb.Text), "#,##0.00") : 印尼餘額_tb.Text = Strings.Format(Val(印尼餘額_tb.Text), "#,##0.00")
  113. 印尼盾_tb.Text = Strings.Format(Val(印尼盾_tb.Text), "#,##0.00") : 印尼支票_tb.Text = Strings.Format(Val(印尼支票_tb.Text), "#,##0.00")
  114. End Sub
  115. Private Sub 日期格式()
  116. If 會計月_ch.Checked = True Then
  117. '-------------日期一----------------------------------------------------------------------------------------
  118. DTP = Strings.Left(Strings.Format(開始日期_dtp.Value, "yyyy/MM/dd"), 8) & "01" : 開始日期_dtp.Value = DTP
  119. 開始日期_dtp.Value = 開始日期_dtp.Value.AddMonths(-1)
  120. DTP = Strings.Left(Strings.Format(開始日期_dtp.Value, "yyyy/MM/dd"), 8) & "26" : 開始日期_dtp.Value = DTP
  121. '-------------日期二----------------------------------------------------------------------------------------
  122. DTP = Strings.Left(Strings.Format(結束日期_dtp.Value, "yyyy/MM/dd"), 8) & "25" : 結束日期_dtp.Value = DTP
  123. Else
  124. '-------------日期一----------------------------------------------------------------------------------------
  125. 開始日期_dtp.Value = 開始日期_dtp.Value.AddMonths(1)
  126. DTP = Strings.Left(Strings.Format(開始日期_dtp.Value, "yyyy/MM/dd"), 8) & "01" : 開始日期_dtp.Value = DTP
  127. '-------------日期二----------------------------------------------------------------------------------------
  128. DTP = Strings.Left(Strings.Format(結束日期_dtp.Value, "yyyy/MM/dd"), 8) & "01" : 結束日期_dtp.Value = DTP
  129. 結束日期_dtp.Value = 結束日期_dtp.Value.AddMonths(1) : 結束日期_dtp.Value = 結束日期_dtp.Value.AddDays(-1)
  130. End If
  131. End Sub
  132. Private Sub Set_語言()
  133. 語言_dgv.DataSource = Nothing : ds4.Clear()
  134. 語言_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  135. 語言_dgv.ColumnHeadersHeight = 25
  136. 語言_dgv.AllowUserToAddRows = False
  137. SQL_系統語言導入()
  138. da.Fill(ds4) : 語言_dgv.DataSource = ds4.Tables(0) : conn.Close()
  139. End Sub
  140. Private Sub 語言轉換讀取()
  141. Set_語言() : conn.Close()
  142. For i As Integer = 0 To 語言_dgv.Rows.Count - 1
  143. If 語言_dgv("控件", i).Value.ToString = "營運成本收支單一覽表" Then : Me.Text = 語言_dgv("內容", i).Value.ToString : End If
  144. If 語言_dgv("控件", i).Value.ToString = "明細_rb" Then : 明細_rb.Text = 語言_dgv("內容", i).Value.ToString : End If
  145. If 語言_dgv("控件", i).Value.ToString = "彙總_rb" Then : 彙總_rb.Text = 語言_dgv("內容", i).Value.ToString : End If
  146. If 語言_dgv("控件", i).Value.ToString = "到_lb" Then : 到_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  147. If 語言_dgv("控件", i).Value.ToString = "當日_bt" Then : 當日_bt.Text = 語言_dgv("內容", i).Value.ToString : End If
  148. If 語言_dgv("控件", i).Value.ToString = "當月_bt" Then : 當月_bt.Text = 語言_dgv("內容", i).Value.ToString : End If
  149. If 語言_dgv("控件", i).Value.ToString = "會計月_ch" Then : 會計月_ch.Text = 語言_dgv("內容", i).Value.ToString : End If
  150. If 語言_dgv("控件", i).Value.ToString = "一般月_ch" Then : 一般月_ch.Text = 語言_dgv("內容", i).Value.ToString : End If
  151. If 語言_dgv("控件", i).Value.ToString = "上個月_bt" Then : 上個月_bt.Text = 語言_dgv("內容", i).Value.ToString : End If
  152. If 語言_dgv("控件", i).Value.ToString = "下個月_bt" Then : 下個月_bt.Text = 語言_dgv("內容", i).Value.ToString : End If
  153. If 語言_dgv("控件", i).Value.ToString = "驗證碼_lb" Then : 驗證碼_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  154. If 語言_dgv("控件", i).Value.ToString = "圖片編碼_lb" Then : 圖片編碼_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  155. If 語言_dgv("控件", i).Value.ToString = "營運成本收支單號_lb" Then : 營運成本收支單號_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  156. If 語言_dgv("控件", i).Value.ToString = "申請人_lb" Then : 申請人_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  157. If 語言_dgv("控件", i).Value.ToString = "日期_lb" Then : 日期_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  158. If 語言_dgv("控件", i).Value.ToString = "審核人_lb" Then : 審核人_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  159. If 語言_dgv("控件", i).Value.ToString = "日期1_lb" Then : 日期1_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  160. If 語言_dgv("控件", i).Value.ToString = "台幣_lb" Then : 台幣_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  161. If 語言_dgv("控件", i).Value.ToString = "人民幣零用金_lb" Then : 人民幣零用金_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  162. If 語言_dgv("控件", i).Value.ToString = "美金_lb" Then : 美金_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  163. If 語言_dgv("控件", i).Value.ToString = "印尼_lb" Then : 印尼_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  164. If 語言_dgv("控件", i).Value.ToString = "支票_lb" Then : 支票_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  165. If 語言_dgv("控件", i).Value.ToString = "支票1_lb" Then : 支票1_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  166. If 語言_dgv("控件", i).Value.ToString = "支票2_lb" Then : 支票2_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  167. If 語言_dgv("控件", i).Value.ToString = "支票3_lb" Then : 支票3_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  168. If 語言_dgv("控件", i).Value.ToString = "現金_lb" Then : 現金_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  169. If 語言_dgv("控件", i).Value.ToString = "現金1_lb" Then : 現金1_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  170. If 語言_dgv("控件", i).Value.ToString = "現金2_lb" Then : 現金2_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  171. If 語言_dgv("控件", i).Value.ToString = "現金3_lb" Then : 現金3_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  172. If 語言_dgv("控件", i).Value.ToString = "支出_lb" Then : 支出_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  173. If 語言_dgv("控件", i).Value.ToString = "支出1_lb" Then : 支出1_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  174. If 語言_dgv("控件", i).Value.ToString = "支出2_lb" Then : 支出2_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  175. If 語言_dgv("控件", i).Value.ToString = "支出3_lb" Then : 支出3_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  176. If 語言_dgv("控件", i).Value.ToString = "餘_lb" Then : 餘_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  177. If 語言_dgv("控件", i).Value.ToString = "餘1_lb" Then : 餘1_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  178. If 語言_dgv("控件", i).Value.ToString = "餘2_lb" Then : 餘2_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  179. If 語言_dgv("控件", i).Value.ToString = "餘3_lb" Then : 餘3_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  180. If 語言_dgv("控件", i).Value.ToString = "支付單列印成EXCEL_bt" Then : 支付單列印成EXCEL_bt.Text = 語言_dgv("內容", i).Value.ToString : End If
  181. If 語言_dgv("控件", i).Value.ToString = "已核准的營運成本收支單_lb" Then : 已核准的營運成本收支單_lb.Text = 語言_dgv("內容", i).Value.ToString : End If
  182. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_收支單號" Then : 表頭(107) = 語言_dgv("內容", i).Value.ToString : End If
  183. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_申請日期" Then : 表頭(20) = 語言_dgv("內容", i).Value.ToString : End If
  184. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_審核日期" Then : 表頭(108) = 語言_dgv("內容", i).Value.ToString : End If
  185. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_項次" Then : 表頭(11) = 語言_dgv("內容", i).Value.ToString : End If
  186. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_會計科目" Then : 表頭(98) = 語言_dgv("內容", i).Value.ToString : End If
  187. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_用途" Then : 表頭(109) = 語言_dgv("內容", i).Value.ToString : End If
  188. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_零用金" Then : 表頭(110) = 語言_dgv("內容", i).Value.ToString : End If
  189. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_支票" Then : 表頭(111) = 語言_dgv("內容", i).Value.ToString : End If
  190. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_現金" Then : 表頭(39) = 語言_dgv("內容", i).Value.ToString : End If
  191. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_支出" Then : 表頭(112) = 語言_dgv("內容", i).Value.ToString : End If
  192. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_票期" Then : 表頭(113) = 語言_dgv("內容", i).Value.ToString : End If
  193. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_匯率" Then : 表頭(114) = 語言_dgv("內容", i).Value.ToString : End If
  194. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_幣別" Then : 表頭(115) = 語言_dgv("內容", i).Value.ToString : End If
  195. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_日期" Then : 表頭(116) = 語言_dgv("內容", i).Value.ToString : End If
  196. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_主項" Then : 表頭(117) = 語言_dgv("內容", i).Value.ToString : End If
  197. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_子項" Then : 表頭(118) = 語言_dgv("內容", i).Value.ToString : End If
  198. If 語言_dgv("控件", i).Value.ToString = "清單_dgv_子細項" Then : 表頭(119) = 語言_dgv("內容", i).Value.ToString : End If
  199. If 語言_dgv("控件", i).Value.ToString = "對話框1" Then : 對話框(0) = 語言_dgv("內容", i).Value.ToString : End If
  200. Next
  201. End Sub
  202. Private Sub 營運成本收支單一覽表_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  203. 介面 = "H303" : Set_語言() : 語言轉換讀取()
  204. Me.MdiParent = HX_PGS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  205. DTP = Strings.Left(Strings.Format(Today(), "yyyy/MM/dd"), 8) & "01"
  206. 開始日期_dtp.Value = DTP : 結束日期_dtp.Value = Today()
  207. 日期格式() : 財務彙總_dgv.Visible = False : 明細_rb.Checked = True
  208. End Sub
  209. Private Sub DataGridView4_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 單據彙總_dgv.CellClick
  210. If e.RowIndex = -1 Then : Else
  211. 收支單號_tb.Text = 單據彙總_dgv(0, e.RowIndex).Value.ToString : 驗證碼_tb.Text = 單據彙總_dgv(6, e.RowIndex).Value.ToString
  212. 申請人_tb.Text = 單據彙總_dgv(1, e.RowIndex).Value.ToString : 申請日期_dtp.Value = 單據彙總_dgv(2, e.RowIndex).Value.ToString
  213. 審核人_tb.Text = 單據彙總_dgv(3, e.RowIndex).Value.ToString : 審核日期_dtp.Value = 單據彙總_dgv(4, e.RowIndex).Value.ToString
  214. 圖片編碼_tb.Text = 單據彙總_dgv(5, e.RowIndex).Value.ToString
  215. Set_費用清單()
  216. End If
  217. End Sub
  218. Private Sub 財務彙總_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 財務彙總_dgv.RowPostPaint
  219. Dim linePen As New Pen(Color.Blue, 2) : Dim linePen1 As New Pen(Color.Red, 2) : Dim linePen2 As New Pen(Color.Green, 2)
  220. If e.RowIndex = 財務彙總_dgv.Rows.Count - 1 Then
  221. Exit Sub
  222. Else
  223. If 財務彙總_dgv(0, e.RowIndex).Value.ToString <> 財務彙總_dgv(0, e.RowIndex + 1).Value.ToString Then
  224. Dim startX As Integer = IIf(財務彙總_dgv.RowHeadersVisible, 財務彙總_dgv.RowHeadersWidth, 0)
  225. Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  226. Dim endX As Integer = startX + 財務彙總_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 財務彙總_dgv.HorizontalScrollingOffset
  227. e.Graphics.DrawLine(linePen, startX, startY, endX, startY)
  228. Exit Sub
  229. End If
  230. If 財務彙總_dgv(8, e.RowIndex).Value.ToString <> 財務彙總_dgv(8, e.RowIndex + 1).Value.ToString Then
  231. Dim startX As Integer = IIf(財務彙總_dgv.RowHeadersVisible, 財務彙總_dgv.RowHeadersWidth, 0)
  232. Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  233. Dim endX As Integer = startX + 財務彙總_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 財務彙總_dgv.HorizontalScrollingOffset
  234. e.Graphics.DrawLine(linePen2, startX, startY, endX, startY)
  235. Exit Sub
  236. End If
  237. If 財務彙總_dgv(1, e.RowIndex).Value.ToString <> 財務彙總_dgv(1, e.RowIndex + 1).Value.ToString Then
  238. Dim startX As Integer = IIf(財務彙總_dgv.RowHeadersVisible, 財務彙總_dgv.RowHeadersWidth, 0)
  239. Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  240. Dim endX As Integer = startX + 財務彙總_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 財務彙總_dgv.HorizontalScrollingOffset
  241. e.Graphics.DrawLine(linePen1, startX, startY, endX, startY)
  242. Exit Sub
  243. End If
  244. End If
  245. End Sub
  246. Private Sub Button3_Click(sender As Object, e As EventArgs) Handles 當日_bt.Click
  247. DTP = Strings.Format(Today(), "yyyy/MM/dd")
  248. 開始日期_dtp.Value = DTP : 結束日期_dtp.Value = DTP
  249. End Sub
  250. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles 當月_bt.Click
  251. DTP = Strings.Left(Strings.Format(Today(), "yyyy/MM/dd"), 8) & "01"
  252. 開始日期_dtp.Value = DTP : 結束日期_dtp.Value = Today()
  253. End Sub
  254. Private Sub 彙總計算()
  255. If 明細_rb.Checked = False And 彙總_rb.Checked = True Then
  256. 台幣現金_tb.Text = "0.00" : 台幣支出_tb.Text = "0.00" : 台幣現金餘額_tb.Text = "0.00" : 台幣零用金_tb.Text = "0.00" : 台幣支票_tb.Text = "0.00"
  257. 人民幣零用金_tb.Text = "0.00" : 人民幣支票_tb.Text = "0.00" : 人民幣現金_tb.Text = "0.00" : 人民幣支出_tb.Text = "0.00" : 人民幣現金餘額_tb.Text = "0.00"
  258. 美金_tb.Text = "0.00" : 美金支出_tb.Text = "0.00" : 美金餘額_tb.Text = "0.00" : 美金現金_tb.Text = "0.00" : 美金支票_tb.Text = "0.00"
  259. 印尼盾_tb.Text = "0.00" : 印尼支出_tb.Text = "0.00" : 印尼餘額_tb.Text = "0.00" : 印尼現金_tb.Text = "0.00" : 印尼支票_tb.Text = "0.00"
  260. For i As Integer = 0 To 財務彙總_dgv.Rows.Count - 1
  261. If 財務彙總_dgv.Rows(i).Cells(表頭(115)).Value = "台幣現金" Then
  262. 台幣現金_tb.Text = Val(台幣現金_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(39)).Value
  263. 台幣支出_tb.Text = Val(台幣支出_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(112)).Value
  264. 台幣零用金_tb.Text = Val(台幣零用金_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(110)).Value
  265. 台幣支票_tb.Text = Val(台幣支票_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(111)).Value
  266. End If
  267. If 財務彙總_dgv.Rows(i).Cells(表頭(115)).Value = "人民幣現金" Then
  268. If 財務彙總_dgv.Rows(i).Cells(表頭(117)).Value <> "上月結存" Then
  269. 人民幣現金_tb.Text = Val(人民幣現金_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(39)).Value
  270. 人民幣支出_tb.Text = Val(人民幣支出_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(112)).Value
  271. 人民幣零用金_tb.Text = Val(人民幣零用金_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(110)).Value
  272. 人民幣支票_tb.Text = Val(人民幣支票_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(111)).Value
  273. End If
  274. End If
  275. If 財務彙總_dgv.Rows(i).Cells(表頭(115)).Value = "美金" Then
  276. 美金現金_tb.Text = Val(美金現金_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(39)).Value
  277. 美金支出_tb.Text = Val(美金支出_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(112)).Value
  278. 美金_tb.Text = Val(美金_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(110)).Value
  279. 美金支票_tb.Text = Val(美金支票_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(111)).Value
  280. End If
  281. If 財務彙總_dgv.Rows(i).Cells(表頭(115)).Value = "印尼盾" Then
  282. 印尼現金_tb.Text = Val(印尼現金_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(39)).Value
  283. 印尼支出_tb.Text = Val(印尼支出_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(112)).Value
  284. 印尼盾_tb.Text = Val(印尼盾_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(110)).Value
  285. 印尼支票_tb.Text = Val(印尼支票_tb.Text) + 財務彙總_dgv.Rows(i).Cells(表頭(111)).Value
  286. End If
  287. Next i
  288. 台幣現金餘額_tb.Text = Val(台幣零用金_tb.Text) + Val(台幣現金_tb.Text) - Val(台幣支出_tb.Text) : 人民幣現金餘額_tb.Text = Val(人民幣零用金_tb.Text) + Val(人民幣現金_tb.Text) - Val(人民幣支出_tb.Text)
  289. 美金餘額_tb.Text = Val(美金_tb.Text) + Val(美金現金_tb.Text) - Val(美金支出_tb.Text) : 印尼餘額_tb.Text = Val(印尼現金_tb.Text) + Val(印尼盾_tb.Text) - Val(印尼支出_tb.Text)
  290. If Val(台幣現金餘額_tb.Text) > 0 Then : 台幣現金餘額_tb.ForeColor = Color.Blue : Else : 台幣現金餘額_tb.ForeColor = Color.Red : End If
  291. If Val(人民幣現金餘額_tb.Text) > 0 Then : 人民幣現金餘額_tb.ForeColor = Color.Blue : Else : 台幣現金餘額_tb.ForeColor = Color.Red : End If
  292. If Val(美金餘額_tb.Text) > 0 Then : 美金餘額_tb.ForeColor = Color.DarkSlateGray : Else : 美金餘額_tb.ForeColor = Color.Red : End If
  293. If Val(印尼餘額_tb.Text) > 0 Then : 印尼餘額_tb.ForeColor = Color.IndianRed : Else : 印尼餘額_tb.ForeColor = Color.DarkSlateGray : End If
  294. 台幣現金_tb.Text = Strings.Format(Val(台幣現金_tb.Text), "#,##0.00") : 台幣支出_tb.Text = Strings.Format(Val(台幣支出_tb.Text), "#,##0.00") : 台幣現金餘額_tb.Text = Strings.Format(Val(台幣現金餘額_tb.Text), "#,##0.00")
  295. 台幣零用金_tb.Text = Strings.Format(Val(台幣零用金_tb.Text), "#,##0.00") : 台幣支票_tb.Text = Strings.Format(Val(台幣支票_tb.Text), "#,##0.00")
  296. 人民幣零用金_tb.Text = Strings.Format(Val(人民幣零用金_tb.Text), "#,##0.00") : 人民幣支票_tb.Text = Strings.Format(Val(人民幣支票_tb.Text), "#,##0.00") : 人民幣現金_tb.Text = Strings.Format(Val(人民幣現金_tb.Text), "#,##0.00")
  297. 人民幣支出_tb.Text = Strings.Format(Val(人民幣支出_tb.Text), "#,##0.00") : 人民幣現金餘額_tb.Text = Strings.Format(Val(人民幣現金餘額_tb.Text), "#,##0.00")
  298. 美金現金_tb.Text = Strings.Format(Val(美金現金_tb.Text), "#,##0.00") : 美金支出_tb.Text = Strings.Format(Val(美金支出_tb.Text), "#,##0.00") : 美金餘額_tb.Text = Strings.Format(Val(美金餘額_tb.Text), "#,##0.00")
  299. 美金_tb.Text = Strings.Format(Val(美金_tb.Text), "#,##0.00") : 美金支票_tb.Text = Strings.Format(Val(美金支票_tb.Text), "#,##0.00")
  300. 印尼現金_tb.Text = Strings.Format(Val(印尼現金_tb.Text), "#,##0.00") : 印尼支出_tb.Text = Strings.Format(Val(印尼支出_tb.Text), "#,##0.00") : 印尼餘額_tb.Text = Strings.Format(Val(印尼餘額_tb.Text), "#,##0.00")
  301. 印尼盾_tb.Text = Strings.Format(Val(印尼盾_tb.Text), "#,##0.00") : 印尼支票_tb.Text = Strings.Format(Val(印尼支票_tb.Text), "#,##0.00")
  302. End If
  303. End Sub
  304. Private Sub 上個月_bt_Click(sender As Object, e As EventArgs) Handles 上個月_bt.Click
  305. If 會計月_ch.Checked = True Then
  306. 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
  307. 開始日期_dtp.Value = 中間日期_dtp.Value
  308. 結束日期_dtp.Value = 中間日期_dtp.Value
  309. Else
  310. 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
  311. 開始日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
  312. 結束日期_dtp.Value = 中間日期_dtp.Value
  313. End If
  314. 日期格式()
  315. End Sub
  316. Private Sub 下個月_bt_Click(sender As Object, e As EventArgs) Handles 下個月_bt.Click
  317. If 會計月_ch.Checked = True Then
  318. 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(1)
  319. 開始日期_dtp.Value = 中間日期_dtp.Value
  320. 結束日期_dtp.Value = 中間日期_dtp.Value
  321. Else
  322. 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(1)
  323. 開始日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
  324. 結束日期_dtp.Value = 中間日期_dtp.Value
  325. End If
  326. 日期格式()
  327. End Sub
  328. Private Sub DateTimePicker4_ValueChanged(sender As Object, e As EventArgs) Handles 開始日期_dtp.ValueChanged
  329. Set_清單1() : Set_清單2() : 彙總計算()
  330. End Sub
  331. Private Sub DateTimePicker3_ValueChanged(sender As Object, e As EventArgs) Handles 結束日期_dtp.ValueChanged
  332. Set_清單1() : Set_清單2() : 彙總計算()
  333. End Sub
  334. Private Sub 會計月_CheckedChanged(sender As Object, e As EventArgs) Handles 會計月_ch.Click
  335. 會計月_ch.Checked = True : 一般月_ch.Checked = False : 日期格式()
  336. End Sub
  337. Private Sub 一般月_CheckedChanged(sender As Object, e As EventArgs) Handles 一般月_ch.Click
  338. 會計月_ch.Checked = False : 一般月_ch.Checked = True : 日期格式()
  339. End Sub
  340. Private Sub RadioButton1_CheckedChanged(sender As Object, e As EventArgs) Handles 明細_rb.Click
  341. 明細_dgv.Visible = True : 財務彙總_dgv.Visible = False : 明細_rb.Checked = True : 彙總_rb.Checked = False
  342. 台幣現金_tb.Text = "0.00" : 台幣支出_tb.Text = "0.00" : 台幣現金餘額_tb.Text = "0.00" : 台幣零用金_tb.Text = "0.00" : 台幣支票_tb.Text = "0.00" : 單據彙總_dgv.Enabled = True
  343. End Sub
  344. Private Sub RadioButton2_CheckedChanged(sender As Object, e As EventArgs) Handles 彙總_rb.Click
  345. 明細_dgv.Visible = False : 財務彙總_dgv.Visible = True : 明細_rb.Checked = False : 彙總_rb.Checked = True
  346. 收支單號_tb.Text = "" : 申請人_tb.Text = "" : 審核人_tb.Text = "" : 明細_dgv.DataSource = Nothing : ds.Clear() : 單據彙總_dgv.Enabled = False
  347. 彙總計算()
  348. End Sub
  349. Private Sub TextBox14_TextChanged(sender As Object, e As EventArgs) Handles 圖片編碼_tb.TextChanged
  350. SQL_營運成本收支單一覽表_查詢簽名檔圖片()
  351. While dr.Read() = True
  352. Dim unused As Byte() = New Byte(-1) {}
  353. Dim bytes As Byte() = DirectCast(dr.Item("簽名檔圖片"), Byte())
  354. Dim oStream As New MemoryStream(bytes)
  355. 簽名圖_pb.Image = Bitmap.FromStream(oStream)
  356. End While
  357. conn.Close()
  358. 簽名圖_pb.SizeMode = 4
  359. End Sub
  360. Private Sub Button2_Click(sender As Object, e As EventArgs) Handles 支付單列印成EXCEL_bt.Click
  361. xlApp = CType(CreateObject("Excel.Application"), Application)
  362. xlBook = xlApp.Workbooks.Add
  363. xlApp.DisplayAlerts = True
  364. xlBook.Activate()
  365. xlSheet = NewMethod(xlBook)
  366. xlSheet.Activate()
  367. xlApp.Visible = True
  368. xlApp.Application.WindowState = xlMaximized
  369. xlSheet.Cells(1, 1) = "年度" : xlSheet.Cells(1, 2) = Year(Today) - 1911
  370. If 明細_rb.Checked = True And 彙總_rb.Checked = False Then
  371. xlSheet.Cells(1, 3) = "工巧明智能企業有限公司-營運費用收支明細表"
  372. xlSheet.Cells(2, 1) = "收款日期" : xlSheet.Cells(2, 2) = "會計科目" : xlSheet.Cells(2, 3) = "客戶或用途"
  373. xlSheet.Cells(2, 4) = "零用金" : xlSheet.Cells(2, 5) = "支票" : xlSheet.Cells(2, 6) = "現金" : xlSheet.Cells(2, 7) = "支出" : xlSheet.Cells(2, 8) = "現金餘額" : xlSheet.Cells(2, 9) = "票期"
  374. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  375. xlSheet.Cells(i + 3, 1) = 申請日期_dtp.Value : xlSheet.Cells(i + 3, 2) = 明細_dgv.Rows(i).Cells(表頭(98)).Value
  376. xlSheet.Cells(i + 3, 3) = 明細_dgv.Rows(i).Cells(表頭(109)).Value : xlSheet.Cells(i + 3, 4) = 明細_dgv.Rows(i).Cells(表頭(110)).Value
  377. xlSheet.Cells(i + 3, 5) = 明細_dgv.Rows(i).Cells(表頭(111)).Value : xlSheet.Cells(i + 3, 6) = 明細_dgv.Rows(i).Cells(表頭(39)).Value
  378. xlSheet.Cells(i + 3, 7) = 明細_dgv.Rows(i).Cells(表頭(112)).Value : xlSheet.Cells(i + 3, 9) = 明細_dgv.Rows(i).Cells(表頭(113)).Value
  379. If i = 0 Then
  380. xlSheet.Cells(i + 3, 8) = "=D3+F3-G3"
  381. Else
  382. xlSheet.Cells(i + 3, 8) = "=H" & i + 2 & "+D" & i + 3 & "+F" & i + 3 & "-G" & i + 3 & ""
  383. End If
  384. With xlApp.Selection
  385. .Font.Bold = True
  386. End With
  387. N1 = i + 3 : N2 = i + 3
  388. Next i
  389. xlSheet.Cells(N1 + 1, 3) = "以下空白" : xlSheet.Cells(N1 + 3, 1) = "簽核(點交)" : xlSheet.Cells(N1 + 3, 7) = "製表 : " & 申請人_tb.Text & " - " & 申請日期_dtp.Value
  390. xlSheet.Cells(N1 + 2, 4) = "=SUM(D3:D" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 5) = "=SUM(E3:E" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 6) = "=SUM(F3:F" & N1 + 1 & ")"
  391. xlSheet.Cells(N1 + 2, 7) = "=SUM(G3:G" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 8) = "=H" & N1 : xlSheet.Cells(N1 + 2, 1) = "合計"
  392. AA(xlApp, xlSheet) : BB(xlApp, xlSheet)
  393. ElseIf 明細_rb.Checked = False And 彙總_rb.Checked = True Then
  394. xlSheet.Cells(1, 3) = "工巧明智能企業有限公司-營運費用收支彙總簡表"
  395. xlSheet.Cells(2, 1) = "日期" : xlSheet.Cells(2, 2) = "主項" : xlSheet.Cells(2, 3) = "子項" : xlSheet.Cells(2, 4) = "子細項" : xlSheet.Cells(2, 5) = "零用金"
  396. xlSheet.Cells(2, 6) = "支票" : xlSheet.Cells(2, 7) = "現金" : xlSheet.Cells(2, 8) = "支出" : xlSheet.Cells(2, 9) = "現金餘額"
  397. For i As Integer = 0 To 財務彙總_dgv.Rows.Count - 1
  398. xlSheet.Cells(i + 3, 1) = 財務彙總_dgv.Rows(i).Cells(表頭(116)).Value
  399. xlSheet.Cells(i + 3, 2) = 財務彙總_dgv.Rows(i).Cells(表頭(117)).Value
  400. xlSheet.Cells(i + 3, 3) = 財務彙總_dgv.Rows(i).Cells(表頭(118)).Value
  401. xlSheet.Cells(i + 3, 4) = 財務彙總_dgv.Rows(i).Cells(表頭(119)).Value
  402. xlSheet.Cells(i + 3, 5) = 財務彙總_dgv.Rows(i).Cells(表頭(110)).Value
  403. xlSheet.Cells(i + 3, 6) = 財務彙總_dgv.Rows(i).Cells(表頭(111)).Value
  404. xlSheet.Cells(i + 3, 7) = 財務彙總_dgv.Rows(i).Cells(表頭(39)).Value
  405. xlSheet.Cells(i + 3, 8) = 財務彙總_dgv.Rows(i).Cells(表頭(112)).Value
  406. If i = 0 Then
  407. xlSheet.Cells(i + 3, 9) = "=E3+G3-H3"
  408. Else
  409. xlSheet.Cells(i + 3, 9) = "=I" & i + 2 & "+E" & i + 3 & "+G" & i + 3 & "-H" & i + 3 & ""
  410. End If
  411. With xlApp.Selection
  412. .Font.Bold = True
  413. End With
  414. N1 = i + 3 : N2 = i + 3
  415. Next i
  416. xlSheet.Cells(N1 + 1, 2) = "以下空白" : xlSheet.Cells(N1 + 3, 1) = "簽核" : xlSheet.Cells(N1 + 3, 5) = "製表 : " & gUserName & " - " & Today()
  417. xlSheet.Cells(N1 + 2, 5) = "=SUM(E3:E" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 6) = "=SUM(F3:F" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 7) = "=SUM(G3:G" & N1 + 1 & ")"
  418. xlSheet.Cells(N1 + 2, 8) = "=SUM(H3:H" & N1 + 1 & ")" : xlSheet.Cells(N1 + 2, 9) = "=I" & N1 : xlSheet.Cells(N1 + 2, 1) = "合計"
  419. CC(xlApp, xlSheet)
  420. End If
  421. xlSheet.PageSetup.PrintArea = ""
  422. xlApp.Cells.Select()
  423. xlSheet.Range("B1").Select()
  424. xlApp.Application.WindowState = xlMinimized
  425. xlSheet.Cells.Select()
  426. xlApp.ActiveSheet.Protect(DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="0911274990")
  427. xlApp.ActiveSheet.EnableSelection = 1
  428. MsgBox(對話框(0))
  429. End Sub
  430. Private Shared Function NewMethod(xlBook As Workbook) As Worksheet
  431. Return CType(xlBook.Worksheets.Add, Worksheet)
  432. End Function
  433. Private Sub AA(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  434. xlSheet.Cells.Select()
  435. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 10 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  436. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  437. End With
  438. xlSheet.Columns("A:A").Select : myExcel.Selection.NumberFormatLocal = "m/d;@"
  439. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  440. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  441. End With
  442. xlSheet.Range("B1").Select()
  443. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  444. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  445. End With
  446. xlSheet.Columns("B:B").Select : myExcel.Selection.ColumnWidth = 25
  447. xlSheet.Columns("C:C").Select : myExcel.Selection.ColumnWidth = 30
  448. xlSheet.Columns("D:H").Select : myExcel.Selection.ColumnWidth = 10 : myExcel.Selection.NumberFormatLocal = "#,##0;[紅色]-#,##0"
  449. xlSheet.Columns("I:I").Select : myExcel.Selection.ColumnWidth = 10 : myExcel.Selection.NumberFormatLocal = "[$-zh-TW]e/m/d;@"
  450. xlSheet.Rows("2:2").Select : myExcel.Selection.RowHeight = 25
  451. xlSheet.Range("A2:I2").Select()
  452. With myExcel.Selection : .HorizontalAlignment = xlGeneral : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  453. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  454. End With
  455. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  456. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  457. End With
  458. xlSheet.Range("A2:I" & N1 + 2).Select() : myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  459. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  460. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  461. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  462. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  463. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  464. With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  465. myExcel.ActiveWindow.DisplayGridlines = False
  466. xlSheet.Rows("3:" & N1 + 2).Select : myExcel.Selection.RowHeight = 20
  467. xlSheet.Rows(N1 + 3 & ":" & N1 + 3).Select : myExcel.Selection.RowHeight = 40
  468. xlSheet.Columns("I:I").Select
  469. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  470. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  471. End With
  472. xlSheet.Range("A" & N1 + 2 & ":C" & N1 + 2).Select() : myExcel.Selection.Merge
  473. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  474. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True
  475. End With
  476. xlSheet.Rows("1:1").Select : myExcel.Selection.RowHeight = 25
  477. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 14 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  478. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  479. End With
  480. End Sub
  481. Private Sub BB(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  482. Clipboard.SetDataObject(簽名圖_pb.Image)
  483. xlSheet.Range("B" & N2 + 3).Select()
  484. myExcel.ActiveSheet.Pictures.Paste.Select
  485. myExcel.Selection.ShapeRange.Height = 43
  486. myExcel.Selection.ShapeRange.IncrementTop(3)
  487. End Sub
  488. Private Sub CC(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  489. xlSheet.Cells.Select()
  490. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 10 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  491. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  492. End With
  493. xlSheet.Columns("A:A").Select : myExcel.Selection.ColumnWidth = 8
  494. xlSheet.Columns("B:C").Select : myExcel.Selection.ColumnWidth = 15
  495. xlSheet.Columns("D:D").Select : myExcel.Selection.ColumnWidth = 20
  496. xlSheet.Columns("E:I").Select : myExcel.Selection.ColumnWidth = 10 : myExcel.Selection.NumberFormatLocal = "#,##0.00;[紅色]-#,##0.00"
  497. xlSheet.Rows("1:1").Select : myExcel.Selection.RowHeight = 25
  498. xlSheet.Rows("2:2").Select : myExcel.Selection.RowHeight = 25
  499. xlSheet.Rows("3:" & N1 + 2).Select : myExcel.Selection.RowHeight = 20
  500. xlSheet.Rows(N1 + 3 & ":" & N1 + 3).Select : myExcel.Selection.RowHeight = 40
  501. xlSheet.Rows("2:2").Select
  502. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  503. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  504. End With
  505. xlSheet.Range("A1").Select()
  506. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  507. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  508. End With
  509. xlSheet.Range("B1").Select()
  510. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  511. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  512. End With
  513. xlSheet.Rows("1:1").Select
  514. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 16 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  515. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  516. End With
  517. xlSheet.Range("A2:I" & N1 + 2).Select() : myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  518. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  519. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  520. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  521. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  522. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  523. With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  524. xlSheet.Range("A" & N1 + 2 & ":D" & N1 + 2).Select() : myExcel.Selection.Merge
  525. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  526. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True
  527. End With
  528. xlSheet.Columns("E:I").Select : myExcel.Selection.NumberFormatLocal = "#,##0.00;[紅色]-#,##0.00"
  529. myExcel.ActiveWindow.DisplayGridlines = False
  530. End Sub
  531. '----------------------滑鼠右鍵--------------------------------------------------------------------------------------------------------------------------------------------------------------------
  532. Private Sub 重新讀取ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 重新讀取ToolStripMenuItem.Click
  533. Set_清單1() : Set_清單2() : 彙總計算()
  534. End Sub
  535. End Class