Bez popisu
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 35KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405
  1. Option Strict Off
  2. Public Class 銷售分析表
  3. ReadOnly ds1 As New DataSet : ReadOnly ds2 As New DataSet : ReadOnly ds3 As New DataSet : ReadOnly ds4 As New DataSet : ReadOnly ds5 As New DataSet : ReadOnly ds6 As New DataSet
  4. Dim 首次開啟 As Boolean = False : Dim 比例 As Integer
  5. Private Sub Set_清單1()
  6. 廠商彙總_dgv.DataSource = Nothing : ds1.Clear()
  7. 廠商彙總_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  8. 廠商彙總_dgv.ColumnHeadersHeight = 25
  9. 廠商彙總_dgv.AllowUserToAddRows = False
  10. 廠商彙總_dgv.RowTemplate.Height = 26
  11. PA19 = 業務_cb.Text
  12. SQL_銷售分析表_廠商彙總()
  13. da.Fill(ds1) : 廠商彙總_dgv.DataSource = ds1.Tables(0) : conn.Close()
  14. 廠商彙總_dgv.Columns(0).FillWeight = 80 : 廠商彙總_dgv.Columns(1).FillWeight = 100 : 廠商彙總_dgv.Columns(2).FillWeight = 150
  15. 廠商彙總_dgv.Columns(3).FillWeight = 100 : 廠商彙總_dgv.Columns(4).FillWeight = 100
  16. For I As Integer = 0 To 3 : 廠商彙總_dgv.Columns(I).ReadOnly = True : Next
  17. 廠商彙總_dgv.Columns("成本預估").DefaultCellStyle.Format = "#,##0"
  18. 廠商彙總_dgv.Columns("成本預估").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  19. 廠商彙總_dgv.Columns("成本預估").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  20. 廠商彙總_dgv.Columns("編號").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  21. 廠商彙總_dgv.Columns("編號").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  22. 廠商彙總_dgv.Columns("項次").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  23. 廠商彙總_dgv.Columns("項次").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  24. For i As Integer = 0 To 廠商彙總_dgv.Rows.Count - 1
  25. 廠商彙總_dgv("項次", i).Value = i + 1
  26. Next
  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. 運費_dgv.RowTemplate.Height = 26
  34. PA19 = 業務_cb.Text
  35. SQL_銷售分析表_運費()
  36. da.Fill(ds2) : 運費_dgv.DataSource = ds2.Tables(0) : conn.Close()
  37. 運費_dgv.Columns(0).FillWeight = 100 : 運費_dgv.Columns(1).FillWeight = 100 : 運費_dgv.Columns(2).FillWeight = 100
  38. 運費_dgv.Columns(3).FillWeight = 100
  39. For I As Integer = 0 To 3 : 運費_dgv.Columns(I).ReadOnly = True : Next
  40. 運費_dgv.Columns("運費").DefaultCellStyle.Format = "#,##0"
  41. 運費_dgv.Columns("運費").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  42. 運費_dgv.Columns("運費").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  43. 運費_dgv.Columns("單號").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  44. 運費_dgv.Columns("單號").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  45. 運費_dgv.Columns("項次").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  46. 運費_dgv.Columns("項次").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  47. For i As Integer = 0 To 運費_dgv.Rows.Count - 1
  48. 運費_dgv("項次", i).Value = i + 1
  49. Next
  50. End Sub
  51. Private Sub Set_清單3()
  52. 銷售它項_dgv.DataSource = Nothing : ds3.Clear()
  53. 銷售它項_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  54. 銷售它項_dgv.ColumnHeadersHeight = 25
  55. 銷售它項_dgv.AllowUserToAddRows = False
  56. 銷售它項_dgv.RowTemplate.Height = 26
  57. PA19 = 業務_cb.Text
  58. SQL_銷售分析表_它項明細()
  59. da.Fill(ds3) : 銷售它項_dgv.DataSource = ds3.Tables(0) : conn.Close()
  60. 銷售它項_dgv.Columns(0).FillWeight = 80 : 銷售它項_dgv.Columns(1).FillWeight = 110 : 銷售它項_dgv.Columns(2).FillWeight = 110
  61. 銷售它項_dgv.Columns(3).FillWeight = 110 : 銷售它項_dgv.Columns(4).FillWeight = 200 : 銷售它項_dgv.Columns(5).Visible = False : 銷售它項_dgv.Columns(6).Visible = False
  62. 銷售它項_dgv.Columns(7).Visible = False : 銷售它項_dgv.Columns(8).FillWeight = 200 : 銷售它項_dgv.Columns(9).FillWeight = 80 : 銷售它項_dgv.Columns(10).FillWeight = 80
  63. 銷售它項_dgv.Columns(11).FillWeight = 80 : 銷售它項_dgv.Columns(12).Visible = False : 銷售它項_dgv.Columns(13).Visible = False : 銷售它項_dgv.Columns(14).Visible = False
  64. For I As Integer = 0 To 14 : 銷售它項_dgv.Columns(I).ReadOnly = True : Next
  65. 銷售它項_dgv.Columns("數量").DefaultCellStyle.Format = "#,##0" : 銷售它項_dgv.Columns("成本").DefaultCellStyle.Format = "#,##0"
  66. 銷售它項_dgv.Columns("單價").DefaultCellStyle.Format = "#,##0" : 銷售它項_dgv.Columns("售價").DefaultCellStyle.Format = "#,##0"
  67. 銷售它項_dgv.Columns("數量").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  68. 銷售它項_dgv.Columns("數量").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  69. 銷售它項_dgv.Columns("成本").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  70. 銷售它項_dgv.Columns("成本").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  71. 銷售它項_dgv.Columns("單價").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  72. 銷售它項_dgv.Columns("單價").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  73. 銷售它項_dgv.Columns("售價").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  74. 銷售它項_dgv.Columns("售價").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  75. 銷售它項_dgv.Columns("項次").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  76. 銷售它項_dgv.Columns("項次").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  77. 銷售它項_dgv.Columns("倉儲情況").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  78. 銷售它項_dgv.Columns("倉儲情況").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  79. 銷售它項_dgv.Columns("料號").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  80. 銷售它項_dgv.Columns("料號").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  81. 銷售它項_dgv.Columns("單號").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  82. 銷售它項_dgv.Columns("單號").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  83. For i As Integer = 0 To 銷售它項_dgv.Rows.Count - 1
  84. If 銷售它項_dgv("含稅", i).Value = False Then
  85. 銷售它項_dgv("售價", i).Value = 銷售它項_dgv("數量", i).Value * 銷售它項_dgv("單價", i).Value
  86. ElseIf 銷售它項_dgv("含稅", i).Value = True Then
  87. 銷售它項_dgv("售價", i).Value = 銷售它項_dgv("數量", i).Value * 銷售它項_dgv("單價", i).Value * 1.05
  88. End If
  89. 銷售它項_dgv("項次", i).Value = i + 1
  90. 'If 銷售它項_dgv("倉儲情況", i).Value.ToString = "已有貨" Then
  91. ' 銷售它項_dgv.Rows(i).DefaultCellStyle.BackColor = Color.White
  92. 'ElseIf 銷售它項_dgv("倉儲情況", I).Value.ToString = "未有貨" Then
  93. ' 銷售它項_dgv.Rows(i).DefaultCellStyle.BackColor = Color.LightPink
  94. 'End If
  95. Next
  96. End Sub
  97. Private Sub Set_清單4()
  98. 銷售明細_dgv.DataSource = Nothing : ds4.Clear()
  99. 銷售明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  100. 銷售明細_dgv.ColumnHeadersHeight = 25
  101. 銷售明細_dgv.AllowUserToAddRows = False
  102. 銷售明細_dgv.RowTemplate.Height = 90
  103. PA19 = 業務_cb.Text
  104. SQL_銷售分析表_物料明細()
  105. da.Fill(ds4) : 銷售明細_dgv.DataSource = ds4.Tables(0) : conn.Close()
  106. 銷售明細_dgv.Columns(0).FillWeight = 80 : 銷售明細_dgv.Columns(1).FillWeight = 110 : 銷售明細_dgv.Columns(2).FillWeight = 110
  107. 銷售明細_dgv.Columns(3).FillWeight = 110 : 銷售明細_dgv.Columns(4).FillWeight = 200 : 銷售明細_dgv.Columns(5).FillWeight = 120 : 銷售明細_dgv.Columns(6).FillWeight = 120
  108. 銷售明細_dgv.Columns(7).FillWeight = 120 : 銷售明細_dgv.Columns(8).FillWeight = 200 : 銷售明細_dgv.Columns(9).FillWeight = 80 : 銷售明細_dgv.Columns(10).FillWeight = 80
  109. 銷售明細_dgv.Columns(11).FillWeight = 80 : 銷售明細_dgv.Columns(12).FillWeight = 50 : 銷售明細_dgv.Columns(13).FillWeight = 80 : 銷售明細_dgv.Columns(14).FillWeight = 80
  110. For I As Integer = 0 To 14 : 銷售明細_dgv.Columns(I).ReadOnly = True : Next
  111. 銷售明細_dgv.Columns("數量").DefaultCellStyle.Format = "#,##0" : 銷售明細_dgv.Columns("成本").DefaultCellStyle.Format = "#,##0"
  112. 銷售明細_dgv.Columns("單價").DefaultCellStyle.Format = "#,##0.0" : 銷售明細_dgv.Columns("售價").DefaultCellStyle.Format = "#,##0"
  113. 銷售明細_dgv.Columns("數量").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  114. 銷售明細_dgv.Columns("數量").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  115. 銷售明細_dgv.Columns("成本").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  116. 銷售明細_dgv.Columns("成本").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  117. 銷售明細_dgv.Columns("單價").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  118. 銷售明細_dgv.Columns("單價").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  119. 銷售明細_dgv.Columns("售價").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  120. 銷售明細_dgv.Columns("售價").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  121. 銷售明細_dgv.Columns("項次").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  122. 銷售明細_dgv.Columns("項次").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  123. 銷售明細_dgv.Columns("倉儲情況").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  124. 銷售明細_dgv.Columns("倉儲情況").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  125. 銷售明細_dgv.Columns("料號").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  126. 銷售明細_dgv.Columns("料號").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  127. 銷售明細_dgv.Columns("單號").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  128. 銷售明細_dgv.Columns("單號").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  129. For i As Integer = 0 To 銷售明細_dgv.Rows.Count - 1
  130. If 銷售明細_dgv("含稅", i).Value = False Then
  131. 銷售明細_dgv("售價", i).Value = 銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value
  132. ElseIf 銷售明細_dgv("含稅", i).Value = True Then
  133. 銷售明細_dgv("售價", i).Value = 銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value * 1.05
  134. End If
  135. 銷售明細_dgv("項次", i).Value = i + 1
  136. 'If 銷售明細_dgv("倉儲情況", i).Value.ToString = "已有貨" Then
  137. ' 銷售明細_dgv.Rows(i).DefaultCellStyle.BackColor = Color.White
  138. 'ElseIf 銷售明細_dgv("倉儲情況", I).Value.ToString = "未有貨" Then
  139. ' 銷售明細_dgv.Rows(i).DefaultCellStyle.BackColor = Color.LightPink
  140. 'End If
  141. Next
  142. End Sub
  143. Private Sub Set_清單5()
  144. 銷售備註_dgv.DataSource = Nothing : ds5.Clear()
  145. 銷售備註_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  146. 銷售備註_dgv.ColumnHeadersHeight = 25
  147. 銷售備註_dgv.AllowUserToAddRows = False
  148. 銷售備註_dgv.RowTemplate.Height = 26
  149. PA19 = 業務_cb.Text
  150. SQL_銷售分析表_銷售備註()
  151. da.Fill(ds5) : 銷售備註_dgv.DataSource = ds5.Tables(0) : conn.Close()
  152. 銷售備註_dgv.Columns(0).FillWeight = 80 : 銷售備註_dgv.Columns(1).FillWeight = 120 : 銷售備註_dgv.Columns(2).FillWeight = 510
  153. 銷售備註_dgv.Columns(3).FillWeight = 120
  154. For I As Integer = 0 To 3 : 銷售備註_dgv.Columns(I).ReadOnly = True : Next
  155. 銷售備註_dgv.Columns("收入").DefaultCellStyle.Format = "#,##0" : 銷售備註_dgv.Columns("支出").DefaultCellStyle.Format = "#,##0"
  156. 銷售備註_dgv.Columns("收入").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  157. 銷售備註_dgv.Columns("收入").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  158. 銷售備註_dgv.Columns("支出").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  159. 銷售備註_dgv.Columns("支出").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  160. 銷售備註_dgv.Columns("項次").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  161. 銷售備註_dgv.Columns("項次").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  162. 銷售備註_dgv.Columns("單號").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  163. 銷售備註_dgv.Columns("單號").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  164. For i As Integer = 0 To 銷售備註_dgv.Rows.Count - 1
  165. 銷售備註_dgv("項次", i).Value = i + 1
  166. Next
  167. End Sub
  168. Private Sub Set_清單6()
  169. 稅金_dgv.DataSource = Nothing : ds6.Clear()
  170. 稅金_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  171. 稅金_dgv.ColumnHeadersHeight = 25
  172. 稅金_dgv.AllowUserToAddRows = False
  173. 稅金_dgv.RowTemplate.Height = 26
  174. PA19 = 業務_cb.Text
  175. SQL_銷售分析表_稅金()
  176. da.Fill(ds6) : 稅金_dgv.DataSource = ds6.Tables(0) : conn.Close()
  177. 稅金_dgv.Columns(0).FillWeight = 80 : 稅金_dgv.Columns(1).FillWeight = 120 : 稅金_dgv.Columns(2).FillWeight = 100
  178. For I As Integer = 0 To 2 : 稅金_dgv.Columns(I).ReadOnly = True : Next
  179. 稅金_dgv.Columns("稅金").DefaultCellStyle.Format = "#,##0"
  180. 稅金_dgv.Columns("稅金").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  181. 稅金_dgv.Columns("稅金").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  182. 稅金_dgv.Columns("項次").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  183. 稅金_dgv.Columns("項次").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  184. 稅金_dgv.Columns("單號").DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  185. 稅金_dgv.Columns("單號").HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  186. For i As Integer = 0 To 稅金_dgv.Rows.Count - 1
  187. 稅金_dgv("項次", i).Value = i + 1
  188. Next
  189. End Sub
  190. Private Sub Set_合記計算()
  191. 售價小計_tb.Text = "0" : 稅金_tb.Text = "0" : 銷售合計_tb.Text = "0" : 收入小計_tb.Text = "0" : 支出小計_tb.Text = "0" : 額外收支_tb.Text = "0" : 物料成本_tb.Text = "0"
  192. 司機運費_tb.Text = "0" : 管銷費用_tb.Text = "0" : 其他成本_tb.Text = "0"
  193. For i As Integer = 0 To 銷售明細_dgv.Rows.Count - 1
  194. 售價小計_tb.Text = Val(售價小計_tb.Text) + (銷售明細_dgv("數量", i).Value * 銷售明細_dgv("單價", i).Value)
  195. If Strings.Left(銷售明細_dgv("料號", i).Value.ToString, 1) <> 1 Then
  196. 物料成本_tb.Text = Val(物料成本_tb.Text) + (銷售明細_dgv("數量", i).Value * 銷售明細_dgv("成本", i).Value)
  197. End If
  198. If Strings.Left(銷售明細_dgv("料號", i).Value.ToString, 1) = 1 Then
  199. 其他成本_tb.Text = Val(其他成本_tb.Text) + (銷售明細_dgv("數量", i).Value * 銷售明細_dgv("成本", i).Value)
  200. End If
  201. Next
  202. For i As Integer = 0 To 稅金_dgv.Rows.Count - 1
  203. 稅金_tb.Text = Val(稅金_tb.Text) + 稅金_dgv("稅金", i).Value
  204. Next
  205. 管銷費用_tb.Text = Val(物料成本_tb.Text) * 1.06 - Val(物料成本_tb.Text)
  206. 銷售合計_tb.Text = Val(售價小計_tb.Text) + Val(稅金_tb.Text)
  207. For i As Integer = 0 To 銷售備註_dgv.Rows.Count - 1
  208. 收入小計_tb.Text = Val(收入小計_tb.Text) + 銷售備註_dgv("收入", i).Value
  209. 支出小計_tb.Text = Val(支出小計_tb.Text) + 銷售備註_dgv("支出", i).Value
  210. Next
  211. 額外收支_tb.Text = Val(收入小計_tb.Text) - Val(支出小計_tb.Text)
  212. For i As Integer = 0 To 運費_dgv.Rows.Count - 1
  213. 司機運費_tb.Text = Val(司機運費_tb.Text) + 運費_dgv("運費", i).Value
  214. Next
  215. For i As Integer = 0 To 銷售它項_dgv.Rows.Count - 1
  216. 其他成本_tb.Text = Val(其他成本_tb.Text) + (銷售它項_dgv("數量", i).Value * 銷售它項_dgv("成本", i).Value) - (銷售它項_dgv("數量", i).Value * 銷售它項_dgv("單價", i).Value)
  217. Next
  218. 預估利潤_tb.Text = Val(售價小計_tb.Text) + Val(額外收支_tb.Text) - Val(其他成本_tb.Text) - Val(物料成本_tb.Text) - Val(司機運費_tb.Text) - Val(管銷費用_tb.Text)
  219. For i As Integer = 0 To 廠商彙總_dgv.Rows.Count - 1
  220. 比例 = 廠商彙總_dgv("成本預估", i).Value / Val(物料成本_tb.Text) * 100
  221. If 比例 > 100 Then : 比例 = 100 : End If
  222. If 比例 = 0 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._000 : ElseIf 比例 = 1 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._001
  223. ElseIf 比例 = 2 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._002 : ElseIf 比例 = 3 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._003
  224. ElseIf 比例 = 4 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._004 : ElseIf 比例 = 5 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._005
  225. ElseIf 比例 = 6 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._006 : ElseIf 比例 = 7 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._007
  226. ElseIf 比例 = 8 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._008 : ElseIf 比例 = 9 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._009
  227. ElseIf 比例 = 10 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._010 : ElseIf 比例 = 11 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._011
  228. ElseIf 比例 = 12 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._012 : ElseIf 比例 = 13 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._013
  229. ElseIf 比例 = 14 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._014 : ElseIf 比例 = 15 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._015
  230. ElseIf 比例 = 16 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._016 : ElseIf 比例 = 17 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._017
  231. ElseIf 比例 = 18 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._018 : ElseIf 比例 = 19 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._019
  232. ElseIf 比例 = 20 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._020 : ElseIf 比例 = 21 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._021
  233. ElseIf 比例 = 22 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._022 : ElseIf 比例 = 23 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._023
  234. ElseIf 比例 = 24 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._024 : ElseIf 比例 = 25 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._025
  235. ElseIf 比例 = 26 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._026 : ElseIf 比例 = 27 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._027
  236. ElseIf 比例 = 28 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._028 : ElseIf 比例 = 29 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._029
  237. ElseIf 比例 = 30 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._030 : ElseIf 比例 = 31 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._031
  238. ElseIf 比例 = 32 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._032 : ElseIf 比例 = 33 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._033
  239. ElseIf 比例 = 34 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._034 : ElseIf 比例 = 35 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._035
  240. ElseIf 比例 = 36 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._036 : ElseIf 比例 = 37 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._037
  241. ElseIf 比例 = 38 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._038 : ElseIf 比例 = 39 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._039
  242. ElseIf 比例 = 40 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._040 : ElseIf 比例 = 41 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._041
  243. ElseIf 比例 = 42 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._042 : ElseIf 比例 = 43 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._043
  244. ElseIf 比例 = 44 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._044 : ElseIf 比例 = 45 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._045
  245. ElseIf 比例 = 46 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._046 : ElseIf 比例 = 47 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._047
  246. ElseIf 比例 = 48 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._048 : ElseIf 比例 = 49 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._049
  247. ElseIf 比例 = 50 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._050 : ElseIf 比例 = 51 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._051
  248. ElseIf 比例 = 52 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._052 : ElseIf 比例 = 53 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._053
  249. ElseIf 比例 = 54 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._054 : ElseIf 比例 = 55 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._055
  250. ElseIf 比例 = 56 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._056 : ElseIf 比例 = 57 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._057
  251. ElseIf 比例 = 58 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._058 : ElseIf 比例 = 59 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._059
  252. ElseIf 比例 = 60 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._060 : ElseIf 比例 = 61 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._061
  253. ElseIf 比例 = 62 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._062 : ElseIf 比例 = 63 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._063
  254. ElseIf 比例 = 64 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._064 : ElseIf 比例 = 65 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._065
  255. ElseIf 比例 = 66 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._066 : ElseIf 比例 = 67 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._067
  256. ElseIf 比例 = 68 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._068 : ElseIf 比例 = 69 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._069
  257. ElseIf 比例 = 70 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._070 : ElseIf 比例 = 71 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._071
  258. ElseIf 比例 = 72 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._072 : ElseIf 比例 = 73 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._073
  259. ElseIf 比例 = 74 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._074 : ElseIf 比例 = 75 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._075
  260. ElseIf 比例 = 76 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._076 : ElseIf 比例 = 77 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._077
  261. ElseIf 比例 = 78 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._078 : ElseIf 比例 = 79 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._079
  262. ElseIf 比例 = 80 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._080 : ElseIf 比例 = 81 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._081
  263. ElseIf 比例 = 82 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._082 : ElseIf 比例 = 83 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._083
  264. ElseIf 比例 = 84 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._084 : ElseIf 比例 = 85 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._085
  265. ElseIf 比例 = 86 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._086 : ElseIf 比例 = 87 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._087
  266. ElseIf 比例 = 88 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._088 : ElseIf 比例 = 89 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._089
  267. ElseIf 比例 = 90 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._090 : ElseIf 比例 = 91 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._091
  268. ElseIf 比例 = 92 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._092 : ElseIf 比例 = 93 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._093
  269. ElseIf 比例 = 94 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._094 : ElseIf 比例 = 95 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._095
  270. ElseIf 比例 = 96 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._096 : ElseIf 比例 = 97 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._097
  271. ElseIf 比例 = 98 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._098 : ElseIf 比例 = 99 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._099
  272. ElseIf 比例 >= 100 Then : 廠商彙總_dgv.Rows(i).Cells("成本佔比").Value = My.Resources._100 : End If
  273. Next
  274. 售價小計_tb.Text = Format(Val(售價小計_tb.Text), "#,##0") : 稅金_tb.Text = Format(Val(稅金_tb.Text), "#,##0") : 銷售合計_tb.Text = Format(Val(銷售合計_tb.Text), "#,##0")
  275. 收入小計_tb.Text = Format(Val(收入小計_tb.Text), "#,##0") : 支出小計_tb.Text = Format(Val(支出小計_tb.Text), "#,##0") : 額外收支_tb.Text = Format(Val(額外收支_tb.Text), "#,##0")
  276. 司機運費_tb.Text = Format(Val(司機運費_tb.Text), "#,##0") : 管銷費用_tb.Text = Format(Val(管銷費用_tb.Text), "#,##0") : 預估利潤_tb.Text = Format(Val(預估利潤_tb.Text), "#,##0")
  277. 物料成本_tb.Text = Format(Val(物料成本_tb.Text), "#,##0") : 其他成本_tb.Text = Format(Val(其他成本_tb.Text), "#,##0")
  278. End Sub
  279. Private Sub 銷售分析表_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  280. Me.MdiParent = YD_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  281. 業務_cb.Text = 業務號碼
  282. 開始日期_dtp.Value = Today() : 結束日期_dtp.Value = Today()
  283. 日期格式()
  284. 首次開啟 = True
  285. End Sub
  286. Private Sub 銷售分析表_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged
  287. If 首次開啟 = True Then
  288. Set_清單1() : Set_清單2() : Set_清單3() : Set_清單4() : Set_清單5() : Set_清單6() : Set_合記計算()
  289. End If
  290. End Sub
  291. Private Sub 日期格式()
  292. If 會計月_ch.Checked = True Then
  293. '-------------日期一----------------------------------------------------------------------------------------
  294. DTP = Strings.Left(Format(開始日期_dtp.Value, "yyyy/MM/dd"), 8) & "01" : 開始日期_dtp.Value = DTP
  295. 開始日期_dtp.Value = 開始日期_dtp.Value.AddMonths(-1)
  296. DTP = Strings.Left(Format(開始日期_dtp.Value, "yyyy/MM/dd"), 8) & "26" : 開始日期_dtp.Value = DTP
  297. '-------------日期二----------------------------------------------------------------------------------------
  298. DTP = Strings.Left(Format(結束日期_dtp.Value, "yyyy/MM/dd"), 8) & "25" : 結束日期_dtp.Value = DTP
  299. Else
  300. '-------------日期一----------------------------------------------------------------------------------------
  301. 開始日期_dtp.Value = 開始日期_dtp.Value.AddMonths(1)
  302. DTP = Strings.Left(Format(開始日期_dtp.Value, "yyyy/MM/dd"), 8) & "01" : 開始日期_dtp.Value = DTP
  303. '-------------日期二----------------------------------------------------------------------------------------
  304. DTP = Strings.Left(Strings.Format(結束日期_dtp.Value, "yyyy/MM/dd"), 8) & "01" : 結束日期_dtp.Value = DTP
  305. 結束日期_dtp.Value = 結束日期_dtp.Value.AddMonths(1) : 結束日期_dtp.Value = 結束日期_dtp.Value.AddDays(-1)
  306. End If
  307. End Sub
  308. Private Sub 上個月_bt_Click(sender As Object, e As EventArgs) Handles 上個月_bt.Click
  309. If 會計月_ch.Checked = True Then
  310. 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
  311. 開始日期_dtp.Value = 中間日期_dtp.Value
  312. 結束日期_dtp.Value = 中間日期_dtp.Value
  313. Else
  314. 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
  315. 開始日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
  316. 結束日期_dtp.Value = 中間日期_dtp.Value
  317. End If
  318. 日期格式()
  319. End Sub
  320. Private Sub 下個月_bt_Click(sender As Object, e As EventArgs) Handles 下個月_bt.Click
  321. If 會計月_ch.Checked = True Then
  322. 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(1)
  323. 開始日期_dtp.Value = 中間日期_dtp.Value
  324. 結束日期_dtp.Value = 中間日期_dtp.Value
  325. Else
  326. 中間日期_dtp.Value = 中間日期_dtp.Value.AddMonths(1)
  327. 開始日期_dtp.Value = 中間日期_dtp.Value.AddMonths(-1)
  328. 結束日期_dtp.Value = 中間日期_dtp.Value
  329. End If
  330. 日期格式()
  331. End Sub
  332. Private Sub 會計月_CheckedChanged(sender As Object, e As EventArgs) Handles 會計月_ch.Click
  333. 會計月_ch.Checked = True : 一般月_ch.Checked = False : 日期格式()
  334. End Sub
  335. Private Sub 一般月_CheckedChanged(sender As Object, e As EventArgs) Handles 一般月_ch.Click
  336. 會計月_ch.Checked = False : 一般月_ch.Checked = True : 日期格式()
  337. End Sub
  338. Private Sub 開始日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 開始日期_dtp.ValueChanged
  339. Set_清單1() : Set_清單2() : Set_清單3() : Set_清單4() : Set_清單5() : Set_清單6() : Set_合記計算()
  340. End Sub
  341. Private Sub 結束日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 結束日期_dtp.ValueChanged
  342. Set_清單1() : Set_清單2() : Set_清單3() : Set_清單4() : Set_清單5() : Set_清單6() : Set_合記計算()
  343. End Sub
  344. Private Sub 業務_cb_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 業務_cb.SelectedIndexChanged
  345. Set_清單1() : Set_清單2() : Set_清單3() : Set_清單4() : Set_清單5() : Set_清單6() : Set_合記計算()
  346. End Sub
  347. Private Sub 銷售明細_dgv_RowPostPaint(ByVal sender As Object, ByVal e As DataGridViewRowPostPaintEventArgs) Handles 銷售明細_dgv.RowPostPaint
  348. Dim linePen As New Pen(Color.Blue, 2)
  349. If e.RowIndex = 銷售明細_dgv.Rows.Count - 1 Then : Exit Sub : Else
  350. If 銷售明細_dgv("單號", e.RowIndex).Value.ToString <> 銷售明細_dgv("單號", e.RowIndex + 1).Value.ToString Then
  351. Dim startX As Integer = IIf(銷售明細_dgv.RowHeadersVisible, 銷售明細_dgv.RowHeadersWidth, 0) : Dim startY As Integer = e.RowBounds.Top + e.RowBounds.Height - 1
  352. Dim endX As Integer = startX + 銷售明細_dgv.Columns.GetColumnsWidth(DataGridViewElementStates.Visible) - 銷售明細_dgv.HorizontalScrollingOffset
  353. e.Graphics.DrawLine(linePen, startX, startY, endX, startY) : Exit Sub
  354. End If
  355. End If
  356. End Sub
  357. Private Sub 依開單日期_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 依開單日期_ch.Click
  358. 依開單日期_ch.Checked = True : 依交貨日期_ch.Checked = False : Set_清單1() : Set_清單2() : Set_清單3() : Set_清單4() : Set_清單5() : Set_清單6() : Set_合記計算()
  359. End Sub
  360. Private Sub 依交貨日期_ch_CheckedChanged(sender As Object, e As EventArgs) Handles 依交貨日期_ch.Click
  361. 依開單日期_ch.Checked = False : 依交貨日期_ch.Checked = True : Set_清單1() : Set_清單2() : Set_清單3() : Set_清單4() : Set_清單5() : Set_清單6() : Set_合記計算()
  362. End Sub
  363. End Class