Brak opisu
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

業績獎金計算表_新.vb 63KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634
  1. Imports System.IO
  2. Imports Microsoft.Office.Interop.Excel.XlUnderlineStyle
  3. Imports Microsoft.Office.Interop.Excel.Constants
  4. Imports Microsoft.Office.Interop.Excel.XlBordersIndex
  5. Imports Microsoft.Office.Interop.Excel.XlLineStyle
  6. Imports Microsoft.Office.Interop.Excel.XlBorderWeight
  7. Imports Microsoft.Office.Interop.Excel.XlThemeFont
  8. Imports Microsoft.Office.Interop.Excel.XlThemeColor
  9. Imports Microsoft.Office.Interop.Excel.XlWindowState
  10. Imports Microsoft.Office.Interop.Excel.XlPageOrientation
  11. Imports Microsoft.Office.Interop.Excel
  12. Public Class 業績獎金計算表_新
  13. Dim 位置1 As Integer
  14. Dim xlApp As Application : Dim xlBook As Workbook : Dim xlSheet As Worksheet
  15. Private Function IsVerticalScrollBarVisible(dgv As DataGridView) As Boolean
  16. Return dgv.FirstDisplayedScrollingRowIndex > 0 OrElse dgv.DisplayedRowCount(False) < dgv.Rows.Count
  17. End Function
  18. Private Sub SET_客戶交易明細表()
  19. Dim ds As New DataSet
  20. 交易明細_dgv.DataSource = Nothing : ds.Clear()
  21. 交易明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  22. 交易明細_dgv.ColumnHeadersHeight = 40 : 交易明細_dgv.AllowUserToAddRows = False
  23. SQL_客戶交易明細表_清單新(月份_cb.Text)
  24. da.Fill(ds) : 交易明細_dgv.DataSource = ds.Tables(0) : conn.Close()
  25. 交易明細_dgv.Columns(0).Visible = False : 交易明細_dgv.Columns(2).Visible = False : 交易明細_dgv.Columns(4).Visible = False : 交易明細_dgv.Columns(5).Visible = False
  26. 交易明細_dgv.Columns(19).Visible = False
  27. 交易明細_dgv.Columns(20).FillWeight = 70 : 交易明細_dgv.Columns(6).FillWeight = 300 : 交易明細_dgv.Columns(12).FillWeight = 100
  28. For i As Integer = 0 To 交易明細_dgv.Columns.Count - 1 : 交易明細_dgv.Columns(i).ReadOnly = True : Next
  29. 交易明細_dgv.Columns(7).DefaultCellStyle.Format = "#,##0" : 交易明細_dgv.Columns(8).DefaultCellStyle.Format = "#,##0"
  30. 交易明細_dgv.Columns(9).DefaultCellStyle.Format = "#,##0" : 交易明細_dgv.Columns(10).DefaultCellStyle.Format = "#,##0.0"
  31. 交易明細_dgv.Columns(11).DefaultCellStyle.Format = "#,##0" : 交易明細_dgv.Columns(12).DefaultCellStyle.Format = "#,##0"
  32. 交易明細_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  33. 交易明細_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  34. 交易明細_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  35. 交易明細_dgv.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  36. 交易明細_dgv.Columns(11).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  37. 交易明細_dgv.Columns(12).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  38. 交易明細_dgv.Columns(13).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  39. 交易明細_dgv.Columns("折比").Visible = False : 交易明細_dgv.Columns("折讓").Visible = False
  40. Dim ds2 As New DataSet
  41. 人員_dgv.DataSource = Nothing : ds2.Clear()
  42. 人員_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  43. 人員_dgv.ColumnHeadersHeight = 40 : 人員_dgv.AllowUserToAddRows = False
  44. SQL_獎金計算_人員()
  45. da.Fill(ds2) : 人員_dgv.DataSource = ds2.Tables(0) : conn.Close()
  46. Dim ds1 As New DataSet
  47. 獎金計算_dgv.DataSource = Nothing : ds1.Clear()
  48. 獎金計算_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  49. 獎金計算_dgv.ColumnHeadersHeight = 40 : 獎金計算_dgv.AllowUserToAddRows = False
  50. SQL_獎金計算_清單新(月份_cb.Text)
  51. da.Fill(ds1) : 獎金計算_dgv.DataSource = ds1.Tables(0) : conn.Close()
  52. For I As Integer = 1 To 獎金計算_dgv.Columns.Count - 1
  53. 獎金計算_dgv.Columns(I).DefaultCellStyle.Format = "#,##0" : 獎金計算_dgv.Columns(I).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  54. Next
  55. Dim ds3 As New DataSet
  56. 合計_dgv.DataSource = Nothing : ds3.Clear()
  57. 合計_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  58. 合計_dgv.ColumnHeadersHeight = 50 : 合計_dgv.AllowUserToAddRows = False : 合計_dgv.RowTemplate.Height = 25
  59. 合計_dgv.ScrollBars = System.Windows.Forms.ScrollBars.None : 合計_dgv.ColumnHeadersVisible = False
  60. SQL_獎金計算_清單新_和(月份_cb.Text)
  61. da.Fill(ds3) : 合計_dgv.DataSource = ds3.Tables(0) : conn.Close()
  62. For I As Integer = 1 To 合計_dgv.Columns.Count - 1
  63. 合計_dgv.Columns(I).DefaultCellStyle.Format = "#,##0" : 合計_dgv.Columns(I).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  64. Next
  65. 合計_dgv("產品業績", 0).Value = 0 : 合計_dgv("藥品業績", 0).Value = 0 : 合計_dgv("雷射銷售", 0).Value = 0
  66. 合計_dgv("雷射排程", 0).Value = 0 : 合計_dgv("雷射操作", 0).Value = 0 : 合計_dgv("植髮排程", 0).Value = 0
  67. 合計_dgv("手術排程", 0).Value = 0 : 合計_dgv("手術操作", 0).Value = 0 : 合計_dgv("美療業績", 0).Value = 0
  68. 合計_dgv("海菲秀業績", 0).Value = 0
  69. 合計_dgv("產品獎金", 0).Value = 0 : 合計_dgv("藥品獎金", 0).Value = 0 : 合計_dgv("雷銷獎金", 0).Value = 0
  70. 合計_dgv("雷排獎金", 0).Value = 0 : 合計_dgv("雷操獎金", 0).Value = 0 : 合計_dgv("植排獎金", 0).Value = 0
  71. 合計_dgv("手排獎金", 0).Value = 0 : 合計_dgv("手操獎金", 0).Value = 0 : 合計_dgv("美療獎金", 0).Value = 0
  72. 合計_dgv("海菲秀獎金", 0).Value = 0 : 合計_dgv("總獎金", 0).Value = 0 : 合計_dgv("人員", 0).Value = "合計"
  73. '-------剃除員購-------------------------------------------------------------------------------------------------------------------------------
  74. For i As Integer = 0 To 交易明細_dgv.Rows.Count - 1
  75. For J As Integer = 0 To 人員_dgv.Rows.Count - 1
  76. If Strings.Left(交易明細_dgv("客戶名稱", i).Value.ToString, 3) = Strings.Left(人員_dgv("員工", J).Value.ToString, 3) Then
  77. 交易明細_dgv("備註", i).Value = "員購"
  78. 交易明細_dgv("小記", i).Value = 0 : 交易明細_dgv("業績", i).Value = 0
  79. End If
  80. Next
  81. If 交易明細_dgv("使用狀態", i).Value.ToString = "" Then : 交易明細_dgv("預售業績", i).Value = "0" : Else
  82. If (交易明細_dgv("新類別", i).Value.ToString = "雷射" Or 交易明細_dgv("新類別", i).Value.ToString = "治療") Then
  83. Dim input As String = 交易明細_dgv("使用狀態", i).Value.ToString ' 測試字串 使用狀態
  84. Dim parts() As String = input.Split("/"c)
  85. If parts.Length = 2 AndAlso parts(0) <> parts(1) Then
  86. Dim 數字A As Integer = 交易明細_dgv("業績", i).Value.ToString
  87. Dim 字串A As String = 交易明細_dgv("使用狀態", i).Value.ToString
  88. Dim parts1() As String = 字串A.Split("/"c)
  89. Dim 分子 As Integer : Dim 分母 As Integer
  90. If Integer.TryParse(parts1(0), 分子) AndAlso Integer.TryParse(parts1(1), 分母) Then ' 嘗試轉換為數字
  91. If 分母 <> 0 Then : Dim 答案A As Double = 數字A * (分子 / 分母)
  92. 交易明細_dgv("預售業績", i).Value = Strings.Format(交易明細_dgv("業績", i).Value - 答案A, "#,##0")
  93. Else : MsgBox("錯誤:分母不能為零") : End If
  94. Else : MsgBox("錯誤:字串格式不正確") : End If
  95. 交易明細_dgv("備註", i).Value = "預購療程"
  96. Else : 交易明細_dgv("預售業績", i).Value = "0" : End If
  97. Else : 交易明細_dgv("預售業績", i).Value = "0" : End If
  98. End If
  99. If (交易明細_dgv("新類別", i).Value.ToString = "雷射" Or 交易明細_dgv("新類別", i).Value.ToString = "治療") Then
  100. 交易明細_dgv("操作人員", i).Value = 交易明細_dgv("產品銷售", i).Value.ToString
  101. If 交易明細_dgv("使用狀態", i).Value.ToString = "" Then
  102. 交易明細_dgv("產品銷售", i).Value = ""
  103. Else
  104. Dim 字串A As String = 交易明細_dgv("使用狀態", i).Value.ToString
  105. Dim parts1() As String = 字串A.Split("/"c)
  106. Dim 分子 As Integer : Dim 分母 As Integer
  107. If Integer.TryParse(parts1(0), 分子) AndAlso Integer.TryParse(parts1(1), 分母) Then
  108. If 分子 = 分母 Then : 交易明細_dgv("產品銷售", i).Value = "" : Else
  109. Dim AA As String = 交易明細_dgv("產品銷售", i).Value
  110. End If
  111. Else : MsgBox("錯誤:分母不能為零") : End If
  112. End If
  113. End If
  114. Next
  115. Dim inputStr As String = 月份_cb.Text ' 例如輸入的字串
  116. Dim threshold As Integer = 11212 ' 目標:113 年 07 月
  117. Dim 產品銷售 As String : Dim 排程人員 As String : Dim 操作人員 As String
  118. For i As Integer = 0 To 獎金計算_dgv.Rows.Count - 1
  119. 獎金計算_dgv("產品業績", i).Value = 0 : 獎金計算_dgv("藥品業績", i).Value = 0 : 獎金計算_dgv("雷射銷售", i).Value = 0
  120. 獎金計算_dgv("雷射排程", i).Value = 0 : 獎金計算_dgv("雷射操作", i).Value = 0 : 獎金計算_dgv("植髮排程", i).Value = 0
  121. 獎金計算_dgv("手術排程", i).Value = 0 : 獎金計算_dgv("手術操作", i).Value = 0 : 獎金計算_dgv("美療業績", i).Value = 0
  122. 獎金計算_dgv("海菲秀業績", i).Value = 0
  123. 獎金計算_dgv("產品獎金", i).Value = 0 : 獎金計算_dgv("藥品獎金", i).Value = 0 : 獎金計算_dgv("雷銷獎金", i).Value = 0
  124. 獎金計算_dgv("雷排獎金", i).Value = 0 : 獎金計算_dgv("雷操獎金", i).Value = 0 : 獎金計算_dgv("植排獎金", i).Value = 0
  125. 獎金計算_dgv("手排獎金", i).Value = 0 : 獎金計算_dgv("手操獎金", i).Value = 0 : 獎金計算_dgv("美療獎金", i).Value = 0
  126. 獎金計算_dgv("海菲秀獎金", i).Value = 0 : 獎金計算_dgv("總獎金", i).Value = 0
  127. For ii As Integer = 0 To 交易明細_dgv.Rows.Count - 1
  128. If CInt(inputStr) > threshold Then
  129. 產品銷售 = 交易明細_dgv("產品銷售", ii).Value.ToString.Replace(" ", "")
  130. 排程人員 = 交易明細_dgv("排程人員", ii).Value.ToString.Replace(" ", "")
  131. 操作人員 = 交易明細_dgv("操作人員", ii).Value.ToString.Replace(" ", "")
  132. Else
  133. 產品銷售 = Strings.Mid(交易明細_dgv("產品銷售", ii).Value.ToString, 4, 5)
  134. 排程人員 = Strings.Mid(交易明細_dgv("排程人員", ii).Value.ToString, 4, 5)
  135. 操作人員 = Strings.Mid(交易明細_dgv("操作人員", ii).Value.ToString, 4, 5)
  136. End If
  137. '------一般產品,人工皮-------------------------------------------------------------------------------------------
  138. If 獎金計算_dgv("人員", i).Value.ToString = 產品銷售 And
  139. (交易明細_dgv("新類別", ii).Value.ToString = "一般產品" Or 交易明細_dgv("新類別", ii).Value.ToString = "人工皮") Then
  140. 獎金計算_dgv("產品業績", i).Value = 獎金計算_dgv("產品業績", i).Value + 交易明細_dgv("小記", ii).Value
  141. '---------------獎金計算---------------
  142. If 獎金計算_dgv("產品業績", i).Value > 產品標準_nud.Value Then
  143. 獎金計算_dgv("產品獎金", i).Value = 獎金計算_dgv("產品業績", i).Value / 100 * 產品標後_nud.Value
  144. Else
  145. 獎金計算_dgv("產品獎金", i).Value = 獎金計算_dgv("產品業績", i).Value / 100 * 產品標前_nud.Value
  146. End If
  147. End If
  148. '------藥品-------------------------------------------------------------------------------------------
  149. If 獎金計算_dgv("人員", i).Value.ToString = 產品銷售 And 交易明細_dgv("新類別", ii).Value.ToString = "藥品" Then
  150. 獎金計算_dgv("藥品業績", i).Value = 獎金計算_dgv("藥品業績", i).Value + 交易明細_dgv("小記", ii).Value
  151. '---------------獎金計算---------------
  152. 獎金計算_dgv("藥品獎金", i).Value = 獎金計算_dgv("藥品業績", i).Value / 100 * 藥品標準_nud.Value
  153. End If
  154. '------雷射、治療-------------------------------------------------------------------------------------------
  155. If 獎金計算_dgv("人員", i).Value.ToString = 產品銷售 Then
  156. If (交易明細_dgv("新類別", ii).Value.ToString = "雷射" Or 交易明細_dgv("新類別", ii).Value.ToString = "治療") Then
  157. If 交易明細_dgv("備註", ii).Value.ToString = "預購療程" Then
  158. 獎金計算_dgv("雷射銷售", i).Value = 獎金計算_dgv("雷射銷售", i).Value + CInt(交易明細_dgv("預售業績", ii).Value.ToString)
  159. '---------------獎金計算---------------
  160. If 獎金計算_dgv("雷射銷售", i).Value > 雷售標準_nud.Value Then
  161. 獎金計算_dgv("雷銷獎金", i).Value = 獎金計算_dgv("雷射銷售", i).Value / 100 * 雷售標後_nud.Value
  162. Else
  163. 獎金計算_dgv("雷銷獎金", i).Value = 獎金計算_dgv("雷射銷售", i).Value / 100 * 雷售標前_nud.Value
  164. End If
  165. End If
  166. End If
  167. End If
  168. If 獎金計算_dgv("人員", i).Value.ToString = 排程人員 And
  169. (交易明細_dgv("新類別", ii).Value.ToString = "雷射" Or 交易明細_dgv("新類別", ii).Value.ToString = "治療") Then
  170. 獎金計算_dgv("雷射排程", i).Value = 獎金計算_dgv("雷射排程", i).Value + 交易明細_dgv("業績", ii).Value
  171. '---------------獎金計算---------------
  172. If 獎金計算_dgv("雷射排程", i).Value > 雷排標準_nud.Value Then
  173. 獎金計算_dgv("雷排獎金", i).Value = 獎金計算_dgv("雷射排程", i).Value / 100 * 雷排標後_nud.Value
  174. Else
  175. 獎金計算_dgv("雷排獎金", i).Value = 獎金計算_dgv("雷射排程", i).Value / 100 * 雷排標前_nud.Value
  176. End If
  177. End If
  178. If 獎金計算_dgv("人員", i).Value.ToString = 操作人員 And
  179. (交易明細_dgv("新類別", ii).Value.ToString = "雷射" Or 交易明細_dgv("新類別", ii).Value.ToString = "治療") Then
  180. 獎金計算_dgv("雷射操作", i).Value = 獎金計算_dgv("雷射操作", i).Value + 交易明細_dgv("業績", ii).Value
  181. '---------------獎金計算---------------
  182. 獎金計算_dgv("雷操獎金", i).Value = 獎金計算_dgv("雷射操作", i).Value / 100 * 雷操標準_nud.Value
  183. End If
  184. '------植髮/電波-------------------------------------------------------------------------------------------
  185. If 獎金計算_dgv("人員", i).Value.ToString = 排程人員 And
  186. (交易明細_dgv("新類別", ii).Value.ToString = "植髮" Or 交易明細_dgv("新類別", ii).Value.ToString = "電波") And
  187. 交易明細_dgv("備註", ii).Value.ToString <> "預購療程" Then
  188. 獎金計算_dgv("植髮排程", i).Value = 獎金計算_dgv("植髮排程", i).Value + 交易明細_dgv("業績", ii).Value
  189. '---------------獎金計算---------------
  190. 獎金計算_dgv("植排獎金", i).Value = 獎金計算_dgv("植髮排程", i).Value / 100 * 植髮標準_nud.Value
  191. End If
  192. '------手術-------------------------------------------------------------------------------------------
  193. If 獎金計算_dgv("人員", i).Value.ToString = 排程人員 And
  194. 交易明細_dgv("新類別", ii).Value.ToString = "手術" Then
  195. 獎金計算_dgv("手術排程", i).Value = 獎金計算_dgv("手術排程", i).Value + 交易明細_dgv("業績", ii).Value
  196. '---------------獎金計算---------------
  197. 獎金計算_dgv("手排獎金", i).Value = 獎金計算_dgv("手術排程", i).Value / 100 * 手排標準_nud.Value
  198. End If
  199. If 獎金計算_dgv("人員", i).Value.ToString = 操作人員 And
  200. 交易明細_dgv("新類別", ii).Value.ToString = "手術" Then
  201. 獎金計算_dgv("手術操作", i).Value = 獎金計算_dgv("手術操作", i).Value + 交易明細_dgv("業績", ii).Value
  202. '---------------獎金計算---------------
  203. 獎金計算_dgv("手操獎金", i).Value = 獎金計算_dgv("手術操作", i).Value / 100 * 手操標準_nud.Value
  204. End If
  205. '------美療業績-------------------------------------------------------------------------------------------
  206. If 獎金計算_dgv("人員", i).Value.ToString = 操作人員 And
  207. 交易明細_dgv("新類別", ii).Value.ToString = "美療" Then
  208. 獎金計算_dgv("美療業績", i).Value = 獎金計算_dgv("美療業績", i).Value + 交易明細_dgv("業績", ii).Value
  209. '---------------獎金計算---------------
  210. 獎金計算_dgv("美療獎金", i).Value = 獎金計算_dgv("美療業績", i).Value / 100 * 美療標準_nud.Value
  211. End If
  212. '------海菲秀業績-------------------------------------------------------------------------------------------
  213. If 獎金計算_dgv("人員", i).Value.ToString = 操作人員 And
  214. 交易明細_dgv("新類別", ii).Value.ToString = "海菲秀" Then
  215. 獎金計算_dgv("海菲秀業績", i).Value = 獎金計算_dgv("海菲秀業績", i).Value + 交易明細_dgv("業績", ii).Value
  216. '---------------獎金計算---------------
  217. 獎金計算_dgv("海菲秀獎金", i).Value = 獎金計算_dgv("海菲秀業績", i).Value / 100 * 海菲標準_nud.Value
  218. End If
  219. Next
  220. 獎金計算_dgv("總獎金", i).Value = 獎金計算_dgv("產品獎金", i).Value + 獎金計算_dgv("藥品獎金", i).Value + 獎金計算_dgv("雷銷獎金", i).Value +
  221. 獎金計算_dgv("雷排獎金", i).Value + 獎金計算_dgv("雷操獎金", i).Value + 獎金計算_dgv("植排獎金", i).Value +
  222. 獎金計算_dgv("手排獎金", i).Value + 獎金計算_dgv("手操獎金", i).Value + 獎金計算_dgv("美療獎金", i).Value +
  223. 獎金計算_dgv("海菲秀獎金", i).Value
  224. 合計_dgv("產品業績", 0).Value += 獎金計算_dgv("產品業績", i).Value : 合計_dgv("藥品業績", 0).Value += 獎金計算_dgv("藥品業績", i).Value
  225. 合計_dgv("雷射銷售", 0).Value += 獎金計算_dgv("雷射銷售", i).Value : 合計_dgv("雷射排程", 0).Value += 獎金計算_dgv("雷射排程", i).Value
  226. 合計_dgv("雷射操作", 0).Value += 獎金計算_dgv("雷射操作", i).Value : 合計_dgv("植髮排程", 0).Value += 獎金計算_dgv("植髮排程", i).Value
  227. 合計_dgv("手術排程", 0).Value += 獎金計算_dgv("手術排程", i).Value : 合計_dgv("手術操作", 0).Value += 獎金計算_dgv("手術操作", i).Value
  228. 合計_dgv("美療業績", 0).Value += 獎金計算_dgv("美療業績", i).Value : 合計_dgv("海菲秀業績", 0).Value += 獎金計算_dgv("海菲秀業績", i).Value
  229. 合計_dgv("產品獎金", 0).Value += 獎金計算_dgv("產品獎金", i).Value : 合計_dgv("藥品獎金", 0).Value += 獎金計算_dgv("藥品獎金", i).Value
  230. 合計_dgv("雷銷獎金", 0).Value += 獎金計算_dgv("雷銷獎金", i).Value : 合計_dgv("雷排獎金", 0).Value += 獎金計算_dgv("雷排獎金", i).Value
  231. 合計_dgv("雷操獎金", 0).Value += 獎金計算_dgv("雷操獎金", i).Value : 合計_dgv("植排獎金", 0).Value += 獎金計算_dgv("植排獎金", i).Value
  232. 合計_dgv("手排獎金", 0).Value += 獎金計算_dgv("手排獎金", i).Value : 合計_dgv("手操獎金", 0).Value += 獎金計算_dgv("手操獎金", i).Value
  233. 合計_dgv("美療獎金", 0).Value += 獎金計算_dgv("美療獎金", i).Value : 合計_dgv("海菲秀獎金", 0).Value += 獎金計算_dgv("海菲秀獎金", i).Value
  234. 合計_dgv("總獎金", 0).Value += 獎金計算_dgv("總獎金", i).Value
  235. Next
  236. 獎金計算_dgv.Columns(1).DefaultCellStyle.BackColor = Color.LightGreen : 獎金計算_dgv.Columns(2).DefaultCellStyle.BackColor = Color.LightGreen
  237. 獎金計算_dgv.Columns(3).DefaultCellStyle.BackColor = Color.LightGreen : 獎金計算_dgv.Columns(4).DefaultCellStyle.BackColor = Color.LightGreen
  238. 獎金計算_dgv.Columns(5).DefaultCellStyle.BackColor = Color.LightGreen : 獎金計算_dgv.Columns(6).DefaultCellStyle.BackColor = Color.LightGreen
  239. 獎金計算_dgv.Columns(7).DefaultCellStyle.BackColor = Color.LightGreen : 獎金計算_dgv.Columns(8).DefaultCellStyle.BackColor = Color.LightGreen
  240. 獎金計算_dgv.Columns(9).DefaultCellStyle.BackColor = Color.LightGreen : 獎金計算_dgv.Columns(10).DefaultCellStyle.BackColor = Color.LightGreen
  241. 獎金計算_dgv.Columns(11).DefaultCellStyle.BackColor = Color.LightBlue : 獎金計算_dgv.Columns(12).DefaultCellStyle.BackColor = Color.LightBlue
  242. 獎金計算_dgv.Columns(13).DefaultCellStyle.BackColor = Color.LightBlue : 獎金計算_dgv.Columns(14).DefaultCellStyle.BackColor = Color.LightBlue
  243. 獎金計算_dgv.Columns(15).DefaultCellStyle.BackColor = Color.LightBlue : 獎金計算_dgv.Columns(16).DefaultCellStyle.BackColor = Color.LightBlue
  244. 獎金計算_dgv.Columns(17).DefaultCellStyle.BackColor = Color.LightBlue : 獎金計算_dgv.Columns(18).DefaultCellStyle.BackColor = Color.LightBlue
  245. 獎金計算_dgv.Columns(19).DefaultCellStyle.BackColor = Color.LightBlue : 獎金計算_dgv.Columns(20).DefaultCellStyle.BackColor = Color.LightBlue
  246. 銷售額_lb.Text = "0"
  247. For i As Integer = 0 To 交易明細_dgv.Rows.Count - 1
  248. If 交易明細_dgv("數量", i).Value = 0 Then
  249. 交易明細_dgv("單價", i).Value = 0
  250. Else
  251. 交易明細_dgv("單價", i).Value = 交易明細_dgv("小記", i).Value / 交易明細_dgv("數量", i).Value
  252. End If
  253. 銷售額_lb.Text = CInt(銷售額_lb.Text) + 交易明細_dgv("小記", i).Value
  254. Next : 銷售額_lb.Text = Strings.Format(CInt(銷售額_lb.Text), "#,##0")
  255. For i As Integer = 0 To 獎金計算_dgv.Rows.Count - 1
  256. If 獎金計算_dgv("人員", i).Value.ToString = "" Then : 獎金計算_dgv("人員", i).Value = "無指定" : End If
  257. Next
  258. '-------------------------合計DGV變形----------------------------------------------------------------------------------------------------------------------
  259. If IsVerticalScrollBarVisible(獎金計算_dgv) Then : 合計_dgv.Size = New Size(獎金計算_dgv.Size.Width - 17, 合計_dgv.Size.Height)
  260. Else : 合計_dgv.Size = New Size(獎金計算_dgv.Size.Width, 合計_dgv.Size.Height) : End If
  261. End Sub
  262. Private Sub SET_使用者下拉清單載入()
  263. SQL2 = " WHERE (銷售日期 BETWEEN '11212' AND '15001') "
  264. SQL_客戶交易明細表_月份() : 月份_cb.Items.Clear()
  265. While (dr.Read()) : 月份_cb.Items.Add(dr("月份")) : End While : conn.Close()
  266. End Sub
  267. Private Sub 業績獎金計算表_新_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  268. Me.MdiParent = GRAMS_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  269. 交易明細_dgv.BringToFront()
  270. End Sub
  271. Private Sub 業績獎金計算表_新_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
  272. SET_使用者下拉清單載入() : 月份_cb.SelectedIndex = 月份_cb.Items.Count - 1
  273. SET_客戶交易明細表()
  274. End Sub
  275. Private Sub 交易明細_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 交易明細_dgv.RowPostPaint
  276. Dim linePen As New Pen(Color.Red, 2)
  277. If e.RowIndex = 交易明細_dgv.Rows.Count - 1 Then : Exit Sub : Else
  278. If 交易明細_dgv("客戶編號", e.RowIndex).Value.ToString <> 交易明細_dgv("客戶編號", e.RowIndex + 1).Value.ToString Then
  279. Dim startX As Integer = IIf(交易明細_dgv.RowHeadersVisible, 交易明細_dgv.RowHeadersWidth, 0) : Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  280. Dim endX As Integer = startX + 交易明細_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 交易明細_dgv.HorizontalScrollingOffset
  281. e.Graphics.DrawLine(linePen, startX, startY, endX, startY) : Exit Sub
  282. End If
  283. End If
  284. End Sub
  285. Private Sub 交易明細_dgv_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles 交易明細_dgv.MouseUp
  286. If 交易明細_dgv.Rows.Count = 0 Then : Else
  287. Dim 位置1 As Integer = 交易明細_dgv.SelectedCells(0).ColumnIndex : Dim 位置2 As Integer = 交易明細_dgv.SelectedCells(0).RowIndex
  288. If 位置1 = 14 Then
  289. Dim result As DialogResult = MessageBox.Show("請確定選中的資料行是否要加入 [預購療程] 的備註?" &
  290. vbCrLf & "請注意 [預購療程] 會引響該筆資料的計算!!" &
  291. vbCrLf & "全部操作完後要記得存檔!!", "請選擇", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
  292. If result = DialogResult.Yes Then
  293. 交易明細_dgv.Rows(位置2).Cells(位置1).Value = "預購療程"
  294. Else
  295. 交易明細_dgv.Rows(位置2).Cells(位置1).Value = ""
  296. End If
  297. End If
  298. End If
  299. End Sub
  300. Private Sub 月份_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 月份_cb.SelectedIndexChanged
  301. SET_客戶交易明細表()
  302. End Sub
  303. Private Sub 重新計算_bt_Click(sender As Object, e As EventArgs) Handles 重新計算_bt.Click
  304. SET_客戶交易明細表()
  305. End Sub
  306. Private Sub 列印明細_bt_Click(sender As Object, e As EventArgs) Handles 列印明細_bt.Click
  307. xlApp = CType(CreateObject("Excel.Application"), Application)
  308. xlBook = xlApp.Workbooks.Add
  309. xlApp.DisplayAlerts = True
  310. xlApp.Visible = True
  311. xlApp.Application.WindowState = xlMaximized
  312. xlSheet = NewMethod(xlBook) : xlApp.Sheets(1).Select
  313. xlApp.Sheets(1).Name = "業績明細" : xlBook.Activate() : xlSheet.Activate()
  314. xlSheet.Cells(1, 1) = "黃柏翰皮膚科診所業績資料明細" : xlSheet.Cells(2, 1) = 月份_cb.Text & " - 全月"
  315. xlSheet.Cells(3, 1) = "流水號" : xlSheet.Cells(3, 2) = "銷售日期" : xlSheet.Cells(3, 3) = "客戶編號" : xlSheet.Cells(3, 4) = "客戶名稱" : xlSheet.Cells(3, 5) = "生日"
  316. xlSheet.Cells(3, 6) = "品項" : xlSheet.Cells(3, 7) = "品名" : xlSheet.Cells(3, 8) = "單價" : xlSheet.Cells(3, 9) = "數量"
  317. xlSheet.Cells(3, 10) = "小記" : xlSheet.Cells(3, 11) = "業績" : xlSheet.Cells(3, 12) = "預售業績" : xlSheet.Cells(3, 13) = "備註" : xlSheet.Cells(3, 14) = "醫師"
  318. xlSheet.Cells(3, 15) = "排程人員" : xlSheet.Cells(3, 16) = "操作人員" : xlSheet.Cells(3, 17) = "產品銷售" : xlSheet.Cells(3, 18) = "收款人員" : xlSheet.Cells(3, 19) = "使用狀態"
  319. xlSheet.Cells(3, 20) = "新類別"
  320. For i As Integer = 0 To 交易明細_dgv.Rows.Count - 1
  321. xlSheet.Cells(4 + i, 1) = 交易明細_dgv("流水號", i).Value.ToString : xlSheet.Cells(4 + i, 2) = 交易明細_dgv("銷售日期", i).Value.ToString
  322. xlSheet.Cells(4 + i, 3) = 交易明細_dgv("客戶編號", i).Value.ToString : xlSheet.Cells(4 + i, 4) = 交易明細_dgv("客戶名稱", i).Value.ToString
  323. xlSheet.Cells(4 + i, 5) = 交易明細_dgv("生日", i).Value.ToString : xlSheet.Cells(4 + i, 6) = 交易明細_dgv("品項", i).Value.ToString
  324. xlSheet.Cells(4 + i, 7) = 交易明細_dgv("品名", i).Value.ToString : xlSheet.Cells(4 + i, 8) = 交易明細_dgv("單價", i).Value.ToString
  325. xlSheet.Cells(4 + i, 9) = 交易明細_dgv("數量", i).Value.ToString : xlSheet.Cells(4 + i, 10) = 交易明細_dgv("小記", i).Value.ToString
  326. xlSheet.Cells(4 + i, 11) = 交易明細_dgv("業績", i).Value.ToString : xlSheet.Cells(4 + i, 12) = 交易明細_dgv("預售業績", i).Value.ToString
  327. xlSheet.Cells(4 + i, 13) = 交易明細_dgv("備註", i).Value.ToString : xlSheet.Cells(4 + i, 14) = 交易明細_dgv("醫師", i).Value.ToString
  328. xlSheet.Cells(4 + i, 15) = 交易明細_dgv("排程人員", i).Value.ToString : xlSheet.Cells(4 + i, 16) = 交易明細_dgv("操作人員", i).Value.ToString
  329. xlSheet.Cells(4 + i, 17) = 交易明細_dgv("產品銷售", i).Value.ToString : xlSheet.Cells(4 + i, 18) = 交易明細_dgv("收款人員", i).Value.ToString
  330. xlSheet.Cells(4 + i, 19) = "'" & 交易明細_dgv("使用狀態", i).Value.ToString : xlSheet.Cells(4 + i, 20) = 交易明細_dgv("新類別", i).Value.ToString
  331. Next : 位置1 = 4 + 交易明細_dgv.Rows.Count - 1 : AA(xlApp, xlSheet)
  332. xlSheet.PageSetup.PrintArea = "" : xlApp.Cells.Select() : xlSheet.Range("B1").Select() : xlApp.Application.WindowState = xlMinimized : MsgBox("列印完成")
  333. End Sub
  334. Private Shared Function NewMethod(xlBook As Workbook) As Worksheet
  335. Return CType(xlBook.Worksheets.Add, Worksheet)
  336. End Function
  337. Private Sub AA(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Microsoft.Office.Interop.Excel.Worksheet)
  338. xlSheet.Cells.Select()
  339. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 12 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  340. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  341. End With
  342. xlSheet.Columns("A:A").Select : myExcel.Selection.ColumnWidth = 13 : xlSheet.Columns("C:C").Select : myExcel.Selection.ColumnWidth = 13
  343. xlSheet.Columns("D:D").Select : xlSheet.Columns("D:D").EntireColumn.AutoFit : xlSheet.Columns("E:E").Select : xlSheet.Columns("E:E").EntireColumn.AutoFit
  344. xlSheet.Columns("F:F").Select : xlSheet.Columns("F:F").EntireColumn.AutoFit : xlSheet.Columns("G:G").Select : xlSheet.Columns("G:G").EntireColumn.AutoFit
  345. xlSheet.Columns("H:H").Select : myExcel.Selection.Style = "Comma"
  346. myExcel.Selection.NumberFormatLocal = "_-* #,##0_-;-* #,##0_-;_-* ""-""??_-;_-@_-" : xlSheet.Columns("H:H").EntireColumn.AutoFit
  347. xlSheet.Columns("I:I").Select : myExcel.Selection.Style = "Comma"
  348. myExcel.Selection.NumberFormatLocal = "_-* #,##0_-;-* #,##0_-;_-* ""-""??_-;_-@_-" : xlSheet.Columns("I:I").EntireColumn.AutoFit
  349. xlSheet.Columns("J:J").Select : myExcel.Selection.Style = "Comma"
  350. myExcel.Selection.NumberFormatLocal = "_-* #,##0_-;-* #,##0_-;_-* ""-""??_-;_-@_-" : xlSheet.Columns("J:J").EntireColumn.AutoFit
  351. xlSheet.Columns("K:K").Select : myExcel.Selection.Style = "Comma"
  352. myExcel.Selection.NumberFormatLocal = "_-* #,##0_-;-* #,##0_-;_-* ""-""??_-;_-@_-" : xlSheet.Columns("K:K").EntireColumn.AutoFit
  353. xlSheet.Columns("L:L").Select : myExcel.Selection.Style = "Comma"
  354. myExcel.Selection.NumberFormatLocal = "_-* #,##0_-;-* #,##0_-;_-* ""-""??_-;_-@_-" : xlSheet.Columns("L:L").EntireColumn.AutoFit
  355. xlSheet.Columns("M:M").EntireColumn.AutoFit : xlSheet.Columns("N:N").EntireColumn.AutoFit : xlSheet.Columns("O:O").EntireColumn.AutoFit
  356. xlSheet.Columns("P:P").EntireColumn.AutoFit : xlSheet.Columns("Q:Q").EntireColumn.AutoFit : xlSheet.Columns("R:R").Select : myExcel.Selection.EntireColumn.Hidden = True
  357. xlSheet.Columns("S:S").EntireColumn.AutoFit : xlSheet.Columns("T:T").Select : xlSheet.Columns("T:T").EntireColumn.AutoFit
  358. xlSheet.Range("A1:T1").Select()
  359. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  360. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  361. End With : myExcel.Selection.Merge
  362. xlSheet.Range("A2:T2").Select()
  363. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  364. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  365. End With : myExcel.Selection.Merge
  366. xlSheet.Rows("3:3").Select : myExcel.Selection.RowHeight = 35
  367. With myExcel.Selection : .HorizontalAlignment = xlGeneral : .VerticalAlignment = xlTop : .WrapText = False : .Orientation = 0 : .AddIndent = False
  368. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  369. End With : myExcel.Selection.AutoFilter
  370. xlSheet.Rows("4:4").Select : myExcel.ActiveWindow.FreezePanes = True
  371. xlSheet.Range("A3:T3").Select()
  372. With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .ThemeColor = xlThemeColorLight2 : .TintAndShade = 0.899990844447157
  373. .PatternTintAndShade = 0
  374. End With
  375. xlSheet.Range("A3:T520").Select()
  376. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  377. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  378. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  379. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  380. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  381. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  382. With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  383. xlSheet.Range("B4").Select()
  384. End Sub
  385. Private Sub 列印簽收_bt_Click(sender As Object, e As EventArgs) Handles 列印簽收_bt.Click
  386. xlApp = CType(CreateObject("Excel.Application"), Application)
  387. xlBook = xlApp.Workbooks.Add
  388. xlApp.DisplayAlerts = True
  389. xlApp.Visible = True
  390. xlApp.Application.WindowState = xlMaximized
  391. xlSheet = NewMethod(xlBook) : xlApp.Sheets(1).Select
  392. xlApp.Sheets(1).Name = "獎金簽收單" : xlBook.Activate() : xlSheet.Activate()
  393. Dim 位置 As Integer = 0
  394. For i As Integer = 0 To 獎金計算_dgv.Rows.Count - 1
  395. If 獎金計算_dgv("人員", i).Value.ToString = "黃柏翰" Or 獎金計算_dgv("人員", i).Value.ToString = "無指定" Then : Else
  396. xlSheet.Cells(2 + 位置, 2) = "獎金月份" : xlSheet.Cells(2 + 位置, 3) = Strings.Left(月份_cb.Text, 3) & "年" & Strings.Right(月份_cb.Text, 2) & "月"
  397. xlSheet.Cells(4 + 位置, 2) = "姓名" : xlSheet.Cells(4 + 位置, 3) = 獎金計算_dgv("人員", i).Value.ToString
  398. xlSheet.Cells(6 + 位置, 2) = "個人應發總獎金 " & vbCrLf & "(含預購獎金)" : xlSheet.Cells(6 + 位置, 3) = 獎金計算_dgv("總獎金", i).Value.ToString
  399. xlSheet.Cells(8 + 位置, 2) = "備註" : xlSheet.Cells(10 + 位置, 2) = "領款人簽收" : xlSheet.Cells(12 + 位置, 2) = "診所留存"
  400. xlSheet.Cells(2 + 位置, 4) = "獎金明細如下:"
  401. xlSheet.Cells(3 + 位置, 4) = "產品銷售" : xlSheet.Cells(3 + 位置, 5) = 獎金計算_dgv("產品獎金", i).Value.ToString
  402. xlSheet.Cells(4 + 位置, 4) = "藥品銷售" : xlSheet.Cells(4 + 位置, 5) = 獎金計算_dgv("藥品獎金", i).Value.ToString
  403. xlSheet.Cells(5 + 位置, 4) = "一般雷射排程" : xlSheet.Cells(5 + 位置, 5) = 獎金計算_dgv("雷排獎金", i).Value.ToString
  404. xlSheet.Cells(6 + 位置, 4) = "手術排程" : xlSheet.Cells(6 + 位置, 5) = 獎金計算_dgv("手排獎金", i).Value.ToString
  405. xlSheet.Cells(7 + 位置, 4) = "美療" : xlSheet.Cells(7 + 位置, 5) = 獎金計算_dgv("美療獎金", i).Value.ToString
  406. xlSheet.Cells(8 + 位置, 4) = "海菲秀" : xlSheet.Cells(8 + 位置, 5) = 獎金計算_dgv("海菲秀獎金", i).Value.ToString
  407. xlSheet.Cells(9 + 位置, 4) = "一般雷射操作" : xlSheet.Cells(9 + 位置, 5) = 獎金計算_dgv("雷操獎金", i).Value.ToString
  408. xlSheet.Cells(10 + 位置, 4) = "手術操作" : xlSheet.Cells(10 + 位置, 5) = 獎金計算_dgv("手操獎金", i).Value.ToString
  409. xlSheet.Cells(11 + 位置, 4) = "預售一般雷射" : xlSheet.Cells(11 + 位置, 5) = 獎金計算_dgv("雷銷獎金", i).Value.ToString
  410. xlSheet.Cells(2 + 位置, 8) = "獎金月份" : xlSheet.Cells(2 + 位置, 9) = Strings.Left(月份_cb.Text, 3) & "年" & Strings.Right(月份_cb.Text, 2) & "月"
  411. xlSheet.Cells(4 + 位置, 8) = "姓名" : xlSheet.Cells(4 + 位置, 9) = 獎金計算_dgv("人員", i).Value.ToString
  412. xlSheet.Cells(6 + 位置, 8) = "個人應發總獎金 " & vbCrLf & "(含預購獎金)" : xlSheet.Cells(6 + 位置, 9) = 獎金計算_dgv("總獎金", i).Value.ToString
  413. xlSheet.Cells(8 + 位置, 8) = "備註" : xlSheet.Cells(12 + 位置, 8) = "個人留存"
  414. xlSheet.Cells(2 + 位置, 10) = "獎金明細如下:"
  415. xlSheet.Cells(3 + 位置, 10) = "產品銷售" : xlSheet.Cells(3 + 位置, 11) = 獎金計算_dgv("產品獎金", i).Value.ToString
  416. xlSheet.Cells(4 + 位置, 10) = "藥品銷售" : xlSheet.Cells(4 + 位置, 11) = 獎金計算_dgv("藥品獎金", i).Value.ToString
  417. xlSheet.Cells(5 + 位置, 10) = "一般雷射排程" : xlSheet.Cells(5 + 位置, 11) = 獎金計算_dgv("雷排獎金", i).Value.ToString
  418. xlSheet.Cells(6 + 位置, 10) = "手術排程" : xlSheet.Cells(6 + 位置, 11) = 獎金計算_dgv("手排獎金", i).Value.ToString
  419. xlSheet.Cells(7 + 位置, 10) = "美療" : xlSheet.Cells(7 + 位置, 11) = 獎金計算_dgv("美療獎金", i).Value.ToString
  420. xlSheet.Cells(8 + 位置, 10) = "海菲秀" : xlSheet.Cells(8 + 位置, 11) = 獎金計算_dgv("海菲秀獎金", i).Value.ToString
  421. xlSheet.Cells(9 + 位置, 10) = "一般雷射操作" : xlSheet.Cells(9 + 位置, 11) = 獎金計算_dgv("雷操獎金", i).Value.ToString
  422. xlSheet.Cells(10 + 位置, 10) = "手術操作" : xlSheet.Cells(10 + 位置, 11) = 獎金計算_dgv("手操獎金", i).Value.ToString
  423. xlSheet.Cells(11 + 位置, 10) = "預售一般雷射" : xlSheet.Cells(11 + 位置, 11) = 獎金計算_dgv("雷銷獎金", i).Value.ToString
  424. 位置 += 12
  425. End If
  426. Next : BB(xlApp, xlSheet)
  427. xlSheet.PageSetup.PrintArea = "" : xlApp.Cells.Select() : xlSheet.Range("B1").Select() : xlApp.Application.WindowState = xlMinimized : MsgBox("列印完成")
  428. End Sub
  429. Private Sub BB(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Microsoft.Office.Interop.Excel.Worksheet)
  430. xlSheet.Cells.Select()
  431. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 12 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  432. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  433. End With
  434. xlSheet.Columns("A:A").Select : myExcel.Selection.ColumnWidth = 3 : xlSheet.Columns("B:B").Select : myExcel.Selection.ColumnWidth = 35
  435. xlSheet.Columns("C:C").Select : myExcel.Selection.ColumnWidth = 22.75 : xlSheet.Columns("D:D").Select : myExcel.Selection.ColumnWidth = 28.38
  436. xlSheet.Columns("E:E").Select : myExcel.Selection.ColumnWidth = 18.75 : xlSheet.Columns("F:G").Select : myExcel.Selection.ColumnWidth = 3
  437. xlSheet.Columns("H:H").Select : myExcel.Selection.ColumnWidth = 35 : xlSheet.Columns("I:I").Select : myExcel.Selection.ColumnWidth = 22.75
  438. xlSheet.Columns("J:J").Select : myExcel.Selection.ColumnWidth = 28.38 : xlSheet.Columns("K:K").Select : myExcel.Selection.ColumnWidth = 18.75
  439. xlSheet.Columns("L:L").Select : myExcel.Selection.ColumnWidth = 3
  440. xlSheet.Columns("B:B").Select : myExcel.Selection.Font.Bold = True
  441. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 24 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  442. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  443. End With
  444. xlSheet.Columns("C:C").Select
  445. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  446. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  447. End With
  448. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 24 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  449. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  450. End With
  451. xlSheet.Columns("D:D").Select
  452. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 24 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  453. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  454. End With : myExcel.Selection.Font.Bold = True
  455. xlSheet.Columns("E:E").Select
  456. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 24 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  457. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  458. End With
  459. xlSheet.Columns("H:H").Select
  460. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 24 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  461. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  462. End With : myExcel.Selection.Font.Bold = True
  463. xlSheet.Columns("I:I").Select
  464. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 24 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  465. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  466. End With
  467. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  468. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False
  469. End With
  470. xlSheet.Columns("J:J").Select : myExcel.Selection.Font.Bold = True
  471. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 24 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  472. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  473. End With
  474. xlSheet.Columns("K:K").Select
  475. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 24 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  476. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone
  477. End With
  478. Dim 位置 As Integer = 0 : Dim 人數 As Integer
  479. For i As Integer = 0 To 獎金計算_dgv.Rows.Count - 1
  480. If 獎金計算_dgv("人員", i).Value.ToString = "黃柏翰" Or 獎金計算_dgv("人員", i).Value.ToString = "無指定" Then : Else
  481. xlSheet.Rows(1 + 位置 & ":" & 1 + 位置).Select : myExcel.Selection.RowHeight = 30 : xlSheet.Rows(2 + 位置 & ":" & 10 + 位置).Select : myExcel.Selection.RowHeight = 30.75
  482. xlSheet.Rows(11 + 位置 & ":" & 11 + 位置).Select : myExcel.Selection.RowHeight = 31.5 : xlSheet.Rows(12 + 位置 & ":" & 12 + 位置).Select : myExcel.Selection.RowHeight = 30.75
  483. xlSheet.Range("B" & 2 + 位置 & ":B" & 3 + 位置).Select()
  484. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  485. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  486. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  487. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  488. xlSheet.Range("B" & 4 + 位置 & ":B" & 5 + 位置).Select()
  489. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  490. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  491. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  492. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  493. xlSheet.Range("B" & 6 + 位置 & ":B" & 7 + 位置).Select()
  494. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  495. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  496. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False
  497. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  498. xlSheet.Range("B" & 8 + 位置 & ":B" & 9 + 位置).Select()
  499. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  500. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  501. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  502. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  503. xlSheet.Range("B" & 10 + 位置 & ":B" & 11 + 位置).Select()
  504. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  505. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  506. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  507. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  508. xlSheet.Range("C" & 2 + 位置 & ":C" & 3 + 位置).Select()
  509. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  510. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  511. xlSheet.Range("C" & 4 + 位置 & ":C" & 5 + 位置).Select()
  512. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  513. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  514. xlSheet.Range("C" & 6 + 位置 & ":C" & 7 + 位置).Select()
  515. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  516. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  517. xlSheet.Range("C" & 8 + 位置 & ":C" & 9 + 位置).Select()
  518. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  519. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  520. xlSheet.Range("C" & 10 + 位置 & ":C" & 11 + 位置).Select()
  521. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  522. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  523. xlSheet.Range("E" & 2 + 位置 & ":E" & 11 + 位置).Select()
  524. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 24 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  525. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  526. xlSheet.Range("H" & 2 + 位置 & ":H" & 3 + 位置).Select()
  527. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .IndentLevel = 0
  528. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  529. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  530. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  531. xlSheet.Range("H" & 4 + 位置 & ":H" & 5 + 位置).Select()
  532. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  533. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  534. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  535. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  536. xlSheet.Range("H" & 6 + 位置 & ":H" & 7 + 位置).Select()
  537. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  538. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  539. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = True : .Orientation = 0 : .AddIndent = False
  540. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  541. xlSheet.Range("H" & 8 + 位置 & ":H" & 11 + 位置).Select()
  542. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  543. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  544. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  545. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  546. xlSheet.Range("I" & 2 + 位置 & ":I" & 3 + 位置).Select()
  547. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  548. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  549. xlSheet.Range("I" & 4 + 位置 & ":I" & 5 + 位置).Select()
  550. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  551. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  552. xlSheet.Range("I" & 6 + 位置 & ":I" & 7 + 位置).Select()
  553. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  554. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  555. xlSheet.Range("I" & 8 + 位置 & ":I" & 11 + 位置).Select()
  556. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  557. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  558. xlSheet.Range("B" & 2 + 位置 & ":E" & 11 + 位置).Select()
  559. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  560. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  561. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  562. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  563. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  564. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  565. With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  566. xlSheet.Range("H" & 2 + 位置 & ":K" & 11 + 位置).Select()
  567. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  568. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  569. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  570. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  571. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  572. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  573. With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  574. xlSheet.Range("A" & 1 + 位置 & ":F" & 12 + 位置).Select()
  575. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  576. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  577. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  578. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  579. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  580. xlSheet.Range("G" & 1 + 位置 & ":L" & 12 + 位置).Select()
  581. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  582. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  583. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  584. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  585. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  586. xlSheet.Range("C" & 6 + 位置 & " :C" & 7 + 位置).Select() : myExcel.Selection.NumberFormatLocal = "#,##0"
  587. xlSheet.Range("E" & 3 + 位置 & ":E" & 11 + 位置).Select() : myExcel.Selection.NumberFormatLocal = "#,##0"
  588. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  589. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  590. xlSheet.Range("I" & 6 + 位置 & ":I" & 7 + 位置).Select() : myExcel.Selection.NumberFormatLocal = "#,##0"
  591. xlSheet.Range("K" & 3 + 位置 & ":K" & 11 + 位置).Select() : myExcel.Selection.NumberFormatLocal = "#,##0"
  592. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  593. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  594. 位置 += 12 : 人數 += 1
  595. End If
  596. Next
  597. Dim rowNumber As Integer
  598. If 人數 > 4 Then : rowNumber = 49 : Dim rng As Microsoft.Office.Interop.Excel.Range = xlSheet.Rows(rowNumber) : xlSheet.HPageBreaks.Add(rng) : End If
  599. If 人數 > 8 Then : rowNumber = 97 : Dim rng As Microsoft.Office.Interop.Excel.Range = xlSheet.Rows(rowNumber) : xlSheet.HPageBreaks.Add(rng) : End If
  600. If 人數 > 12 Then : rowNumber = 145 : Dim rng As Microsoft.Office.Interop.Excel.Range = xlSheet.Rows(rowNumber) : xlSheet.HPageBreaks.Add(rng) : End If
  601. myExcel.Application.PrintCommunication = False
  602. With myExcel.ActiveSheet.PageSetup : .PrintTitleRows = "" : .PrintTitleColumns = "" : End With
  603. myExcel.Application.PrintCommunication = True : myExcel.ActiveSheet.PageSetup.PrintArea = "" : myExcel.Application.PrintCommunication = False
  604. With myExcel.ActiveSheet.PageSetup
  605. .LeftHeader = "" : .CenterHeader = "" : .RightHeader = "" : .LeftFooter = "" : .CenterFooter = "" : .RightFooter = ""
  606. .LeftMargin = myExcel.Application.InchesToPoints(0.25) : .RightMargin = myExcel.Application.InchesToPoints(0.25) : .TopMargin = myExcel.Application.InchesToPoints(0.75)
  607. .BottomMargin = myExcel.Application.InchesToPoints(0.75) : .HeaderMargin = myExcel.Application.InchesToPoints(0.3) : .FooterMargin = myExcel.Application.InchesToPoints(0.3)
  608. .PrintHeadings = False : .PrintGridlines = False : .PrintQuality = 1200 : .CenterHorizontally = False : .CenterVertically = False : .Orientation = xlPortrait
  609. .Draft = False : .FirstPageNumber = xlAutomatic : .BlackAndWhite = False : .Zoom = False : .FitToPagesWide = 1 : .FitToPagesTall = 0
  610. .OddAndEvenPagesHeaderFooter = False : .DifferentFirstPageHeaderFooter = False : .ScaleWithDocHeaderFooter = True : .AlignMarginsHeaderFooter = True
  611. .EvenPage.LeftHeader.Text = "" : .EvenPage.CenterHeader.Text = "" : .EvenPage.RightHeader.Text = "" : .EvenPage.LeftFooter.Text = "" : .EvenPage.CenterFooter.Text = ""
  612. .EvenPage.RightFooter.Text = "" : .FirstPage.LeftHeader.Text = "" : .FirstPage.CenterHeader.Text = "" : .FirstPage.RightHeader.Text = "" : .FirstPage.LeftFooter.Text = ""
  613. .FirstPage.CenterFooter.Text = "" : .FirstPage.RightFooter.Text = ""
  614. End With : myExcel.Application.PrintCommunication = True
  615. End Sub
  616. End Class