Нема описа
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 46KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560
  1. Option Strict Off
  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
  11. Public Class 採購單申請
  12. ReadOnly ds As New DataSet : ReadOnly ds1 As New DataSet : ReadOnly ds2 As New DataSet
  13. Dim EDR As Integer = 0 : Dim ESTR As String : Dim N1 As Integer
  14. Dim xlApp As Application : Dim xlBook As Workbook : Dim xlSheet As Worksheet
  15. Private Sub Set_物料清單()
  16. 物料檔案_dgv.DataSource = Nothing : ds.Clear()
  17. 物料檔案_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  18. 物料檔案_dgv.ColumnHeadersHeight = 25
  19. 物料檔案_dgv.AllowUserToAddRows = False
  20. 物料檔案_dgv.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithoutHeaderText
  21. 物料檔案_dgv.MultiSelect = True
  22. SQL_採購單申請_物料清單()
  23. da.Fill(ds) : 物料檔案_dgv.DataSource = ds.Tables(0) : conn.Close()
  24. 物料檔案_dgv.Columns(0).FillWeight = 10 : 物料檔案_dgv.Columns(1).Visible = False : 物料檔案_dgv.Columns(2).FillWeight = 20 : 物料檔案_dgv.Columns(3).FillWeight = 5
  25. 物料檔案_dgv.Columns(4).Visible = False : 物料檔案_dgv.Columns(5).Visible = False : 物料檔案_dgv.Columns(6).Visible = False : 物料檔案_dgv.Columns(7).Visible = False
  26. 物料檔案_dgv.Columns(8).Visible = False : 物料檔案_dgv.Columns(9).Visible = False : 物料檔案_dgv.Columns(10).Visible = False
  27. 物料檔案_dgv.Columns(3).DefaultCellStyle.Format = "#,##0" : 物料檔案_dgv.Columns(4).DefaultCellStyle.Format = "#,##0"
  28. 物料檔案_dgv.Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 物料檔案_dgv.Columns(3).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  29. 物料檔案_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 物料檔案_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  30. 物料檔案_dgv.Columns(1).ReadOnly = True : 物料檔案_dgv.Columns(2).ReadOnly = True : 物料檔案_dgv.Columns(3).ReadOnly = True : 物料檔案_dgv.Columns(4).ReadOnly = True
  31. 物料檔案_dgv.Columns(5).ReadOnly = True : 物料檔案_dgv.Columns(6).ReadOnly = True : 物料檔案_dgv.Columns(7).ReadOnly = True : 物料檔案_dgv.Columns(8).ReadOnly = True
  32. 物料檔案_dgv.Columns(9).ReadOnly = True : 物料檔案_dgv.Columns(10).ReadOnly = True : 物料檔案_dgv.Columns(0).ReadOnly = True
  33. End Sub
  34. Private Sub Set_採購清單()
  35. 彙總_dgv.DataSource = Nothing : ds1.Clear()
  36. 彙總_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  37. 彙總_dgv.ColumnHeadersHeight = 25
  38. 彙總_dgv.AllowUserToAddRows = False
  39. 彙總_dgv.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithoutHeaderText
  40. 彙總_dgv.MultiSelect = True
  41. SQL_採購單申請_單號彙總()
  42. da.Fill(ds1) : 彙總_dgv.DataSource = ds1.Tables(0) : conn.Close()
  43. 彙總_dgv.Columns(0).FillWeight = 135 : 彙總_dgv.Columns(1).FillWeight = 90 : 彙總_dgv.Columns(2).Visible = False : 彙總_dgv.Columns(3).FillWeight = 100
  44. 彙總_dgv.Columns(4).FillWeight = 90
  45. End Sub
  46. Private Sub Set_單據明細()
  47. 明細_dgv.DataSource = Nothing : ds2.Clear()
  48. 明細_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  49. 明細_dgv.ColumnHeadersHeight = 25
  50. 明細_dgv.AllowUserToAddRows = False
  51. 明細_dgv.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithoutHeaderText
  52. 明細_dgv.MultiSelect = True
  53. SQL_採購單申請明細()
  54. da.Fill(ds2) : 明細_dgv.DataSource = ds2.Tables(0) : conn.Close()
  55. 總金額_tb.Text = "0"
  56. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  57. 明細_dgv(1, i).Value = i + 1 : 總金額_tb.Text = Val(總金額_tb.Text) + 明細_dgv.Rows(i).Cells("進貨成本_台幣").Value
  58. 明細_dgv.Rows(i).Cells("選擇").Value = False
  59. Next
  60. 總金額_tb.Text = Strings.Format(Val(總金額_tb.Text), "#,#00")
  61. 明細_dgv.Columns(6).DefaultCellStyle.Format = "#,##0" : 明細_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.00"
  62. 明細_dgv.Columns(8).DefaultCellStyle.Format = "#,##0.0000" : 明細_dgv.Columns(9).DefaultCellStyle.Format = "#,##0" : 明細_dgv.Columns(10).DefaultCellStyle.Format = "#,##0"
  63. 明細_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  64. 明細_dgv.Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(2).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  65. 明細_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  66. 明細_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  67. 明細_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(8).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  68. 明細_dgv.Columns(9).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(9).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  69. 明細_dgv.Columns(10).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(10).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  70. 明細_dgv.Columns(12).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter : 明細_dgv.Columns(12).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  71. 明細_dgv.Columns(0).Visible = False : 明細_dgv.Columns(1).FillWeight = 50 : 明細_dgv.Columns(2).FillWeight = 80 : 明細_dgv.Columns(3).FillWeight = 200
  72. 明細_dgv.Columns(4).Visible = False : 明細_dgv.Columns(5).Visible = False : 明細_dgv.Columns(6).FillWeight = 50 : 明細_dgv.Columns(7).FillWeight = 50
  73. 明細_dgv.Columns(8).FillWeight = 50 : 明細_dgv.Columns(9).FillWeight = 50 : 明細_dgv.Columns(10).FillWeight = 65 : 明細_dgv.Columns(11).FillWeight = 100
  74. 明細_dgv.Columns(12).FillWeight = 80 : 明細_dgv.Columns(13).Visible = False : 明細_dgv.Columns(14).Visible = False : 明細_dgv.Columns(15).Visible = False
  75. 明細_dgv.Columns(16).Visible = False : 明細_dgv.Columns(17).FillWeight = 50
  76. 明細_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  77. 明細_dgv.Columns(1).ReadOnly = True : 明細_dgv.Columns(2).ReadOnly = True : 明細_dgv.Columns(3).ReadOnly = True : 明細_dgv.Columns(4).ReadOnly = True
  78. 明細_dgv.Columns(5).ReadOnly = True : 明細_dgv.Columns(8).ReadOnly = True : 明細_dgv.Columns(9).ReadOnly = True : 明細_dgv.Columns(10).ReadOnly = True
  79. 明細_dgv.Columns(12).ReadOnly = True
  80. End Sub
  81. Private Sub ComboBox1下拉表單資料載入()
  82. SQL_物料頁碼清單()
  83. 頁碼_cb.Items.Clear() : While (dr.Read()) : 頁碼_cb.Items.Add(dr("頁碼")) : End While : conn.Close()
  84. End Sub
  85. Private Sub ComboBox2下拉表單資料載入()
  86. SQL_供應商資料表下拉清單()
  87. 供應商_cb.Items.Clear() : 供應商編號_cb.Items.Clear() : While (dr.Read()) : 供應商_cb.Items.Add(dr("簡稱")) : 供應商編號_cb.Items.Add(dr("編號")) : End While : conn.Close()
  88. End Sub
  89. Private Sub 採購單申請_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  90. Me.MdiParent = MAOJI_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  91. 單據編號_tb.Enabled = False : 料號_tb.Enabled = False : 選擇_tb.Enabled = False : 未完全入庫的單據_rb.Checked = True : 供應商編號_cb.Visible = False
  92. ComboBox1下拉表單資料載入() : ComboBox2下拉表單資料載入() : Set_採購清單() : Set_物料清單()
  93. End Sub
  94. Private Sub DataGridView1_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 物料檔案_dgv.CellClick
  95. If e.RowIndex = -1 Then : Else
  96. 料號_tb.Text = 物料檔案_dgv.Rows(e.RowIndex).Cells("料號").Value.ToString
  97. 採購金額_nud.Value = 物料檔案_dgv.Rows(e.RowIndex).Cells("成本").Value.ToString
  98. End If
  99. End Sub
  100. Private Sub DataGridView2_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 彙總_dgv.CellClick
  101. If e.RowIndex = -1 Then : Else
  102. 單據編號_tb.Text = 彙總_dgv.Rows(e.RowIndex).Cells("單據編號").Value.ToString : 供應商編號_cb.Text = 彙總_dgv.Rows(e.RowIndex).Cells("供應商編號").Value.ToString
  103. 採購下單_dtp.Value = 彙總_dgv.Rows(e.RowIndex).Cells("採購下單").Value.ToString : 供應商交期_dtp.Value = 彙總_dgv.Rows(e.RowIndex).Cells("交期").Value.ToString
  104. Set_單據明細()
  105. End If
  106. End Sub
  107. Private Sub DataGridView3_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 明細_dgv.CellClick
  108. If e.RowIndex = -1 Then : Else
  109. 選擇_tb.Text = 明細_dgv.Rows(e.RowIndex).Cells("資料流水號").Value.ToString
  110. For i As Integer = 0 To 明細_dgv.Rows.Count - 1 : 明細_dgv.Rows(i).Cells("選擇").Value = False : Next
  111. 明細_dgv.Rows(e.RowIndex).Cells("選擇").Value = True
  112. End If
  113. End Sub
  114. Private Sub DataGridView3_CellEnter(sender As Object, e As DataGridViewCellEventArgs) Handles 明細_dgv.CellEnter
  115. 總金額_tb.Text = "0"
  116. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  117. 明細_dgv.Rows(i).Cells("台幣單價").Value = 明細_dgv.Rows(i).Cells("單價").Value * 明細_dgv.Rows(i).Cells("匯率").Value
  118. 明細_dgv.Rows(i).Cells("進貨成本_台幣").Value = 明細_dgv.Rows(i).Cells("單價").Value * 明細_dgv.Rows(i).Cells("匯率").Value * 明細_dgv.Rows(i).Cells("數量").Value
  119. 明細_dgv(1, i).Value = i + 1
  120. 總金額_tb.Text = Val(總金額_tb.Text) + 明細_dgv.Rows(i).Cells("進貨成本_台幣").Value
  121. Next i
  122. 總金額_tb.Text = Strings.Format(Val(總金額_tb.Text), "#,#00")
  123. End Sub
  124. Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 頁碼_cb.TextChanged
  125. Set_物料清單()
  126. End Sub
  127. Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles 物料關鍵字_tb.TextChanged
  128. Set_物料清單()
  129. End Sub
  130. Private Sub TextBox5_TextChanged(sender As Object, e As EventArgs) Handles 供應商關鍵字_tb.TextChanged
  131. PA = 供應商關鍵字_tb.Text
  132. SQL_供應商資料表關鍵字查詢()
  133. 供應商_cb.Items.Clear() : 供應商編號_cb.Items.Clear() : While (dr.Read()) : 供應商_cb.Items.Add(dr("簡稱")) : 供應商編號_cb.Items.Add(dr("編號")) : End While : conn.Close() : PA = ""
  134. End Sub
  135. Private Sub 供應商資料()
  136. SQL_採購單申請_供應商資料表讀取()
  137. If (dr.Read()) Then
  138. 供應商_tb.Text = dr("名稱") : 公司電話1_tb.Text = dr("公司電話1") : 公司電話2_tb.Text = dr("公司電話2") : 傳真1_tb.Text = dr("傳真1") : 郵號1_tb.Text = dr("郵遞區號1")
  139. 地址1_tb.Text = dr("地址1") : 郵號2_tb.Text = dr("郵遞區號2") : 地址2_tb.Text = dr("地址2") : 統編_tb.Text = dr("統一編號") : 付款方式_tb.Text = dr("付款方式")
  140. End If : conn.Close()
  141. End Sub
  142. Private Sub ComboBox2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 供應商_cb.SelectedIndexChanged
  143. 供應商編號_cb.SelectedIndex = 供應商_cb.SelectedIndex : 供應商資料()
  144. End Sub
  145. Private Sub ComboBox3_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 供應商編號_cb.SelectedIndexChanged
  146. 供應商_cb.SelectedIndex = 供應商編號_cb.SelectedIndex : 供應商資料()
  147. End Sub
  148. Private Sub Set_日期格式轉換()
  149. DTP = Strings.Format(採購下單_dtp.Value, "yyyy/MM/dd") : DTP1 = Strings.Format(採購下單_dtp.Value, "yyyyMMdd") : DTP2 = Strings.Format(供應商交期_dtp.Value, "yyyy/MM/dd")
  150. End Sub
  151. Private Sub Set_自動生成流水號()
  152. SQL_倉儲明細表流水號最後一筆()
  153. If dr.Read() Then : EDR = Double.Parse(Strings.Right(dr("資料流水號").ToString, 8)) : Else : EDR = 0 : End If : conn.Close() : EDR += 1
  154. If EDR < 10 Then : ESTR = "WD" & "0000000" & EDR
  155. ElseIf EDR > 9 And EDR < 100 Then : ESTR = "WD" & "000000" & EDR
  156. ElseIf EDR > 99 And EDR < 1000 Then : ESTR = "WD" & "00000" & EDR
  157. ElseIf EDR > 999 And EDR < 10000 Then : ESTR = "WD" & "0000" & EDR
  158. ElseIf EDR > 9999 And EDR < 100000 Then : ESTR = "WD" & "000" & EDR
  159. ElseIf EDR > 99999 And EDR < 100000 Then : ESTR = "WD" & "00" & EDR
  160. ElseIf EDR > 999999 And EDR < 1000000 Then : ESTR = "WD" & "0" & EDR
  161. ElseIf EDR > 9999999 Then : ESTR = "WD" & EDR
  162. End If
  163. End Sub
  164. Private Sub Set_新增明細()
  165. PA1 = 料號_tb.Text : SQL_物料資料庫成本查詢()
  166. If dr.Read() Then
  167. If dr("成本") = 0 Then : NU1 = 採購金額_nud.Value : PA1 = 料號_tb.Text : SQL_物料資料庫成本修改() : conn.Close() : Else : conn.Close() : End If
  168. End If
  169. PA1 = ESTR : PA2 = 單據編號_tb.Text : PA3 = 供應商編號_cb.Text : PA4 = 料號_tb.Text : NU1 = 採購金額_nud.Value : NU2 = 匯率_nud.Value
  170. NU3 = 申請數_nud.Value : NU4 = 0 : PA5 = "採購入庫" : PA6 = DTP : PA7 = "" : NU5 = 0 : PA8 = "" : PA9 = DTP2
  171. SQL_倉儲明細表新增() : conn.Close()
  172. MsgBox("資料新增完畢 。") : Set_單據明細() : Set_物料清單()
  173. End Sub
  174. Private Sub 存檔1()
  175. Dim SSDD As Integer = 0
  176. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  177. 資料數 = 明細_dgv.Rows.Count : MyModule1.進度條()
  178. PA1 = 明細_dgv.Rows(i).Cells("資料流水號").Value : SQL_倉儲明細表_入庫日期讀取()
  179. If dr.Read() Then
  180. If dr("入庫日期").ToString = "" Then
  181. NU1 = 明細_dgv.Rows(i).Cells("單價").Value : NU2 = 明細_dgv.Rows(i).Cells("數量").Value
  182. PA1 = 明細_dgv.Rows(i).Cells("備註").Value : PA2 = DTP2 : PA3 = 明細_dgv.Rows(i).Cells("資料流水號").Value
  183. SQL_採購單申請_倉儲明細表修改_入庫() : conn.Close()
  184. Else
  185. conn.Close() : SSDD += 1
  186. End If
  187. End If
  188. Next : MAOJI_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0 : If SSDD = 0 Then : Else : MsgBox("共有 " & SSDD & "筆資料已入庫,沒有變更。") : End If
  189. End Sub
  190. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles 新增物料_bt.Click
  191. If 料號_tb.Text = "" Then : MsgBox("料號沒有選擇") : Else
  192. If 供應商編號_cb.Text = "" Then : MsgBox("供應商沒有選擇") : Else
  193. If 匯率_nud.Value = 0 Then : MsgBox("採購金額沒有填寫") : Else
  194. If 採購金額_nud.Value = 0 Then : MsgBox("匯率不可為零") : Else
  195. If 申請數_nud.Value = 0 Then : MsgBox("數量不可為零") : Else
  196. If 單據編號_tb.Text = "" Then
  197. '----------------------自动生成單據編號-------------------------------------------------------------------------
  198. If 非當天日期_ch.Checked = True Then : Else : 採購下單_dtp.Value = Today() : End If
  199. Dim NUM1 As Integer : Set_日期格式轉換()
  200. For i As Integer = 1 To 999
  201. NUM1 = 0 + i
  202. If NUM1 < 10 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-00" & NUM1
  203. ElseIf NUM1 > 9 And NUM1 < 100 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-0" & NUM1
  204. ElseIf NUM1 > 99 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-" & NUM1 : End If : PA1 = 單據編號_tb.Text
  205. SQL_倉儲明細表生成單據編號()
  206. If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
  207. Next
  208. Set_自動生成流水號() : 選擇_tb.Text = ESTR : conn.Close() : 存檔1() : Set_新增明細() : Set_採購清單()
  209. Else
  210. Set_日期格式轉換() : Set_自動生成流水號() : 選擇_tb.Text = ESTR : conn.Close() : 存檔1() : Set_新增明細()
  211. End If
  212. End If
  213. End If
  214. End If
  215. End If
  216. End If
  217. End Sub
  218. Private Sub Button2_Click(sender As Object, e As EventArgs) Handles 修改匯率_bt.Click
  219. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  220. 資料數 = 明細_dgv.Rows.Count : MyModule1.進度條()
  221. NU1 = 匯率_nud.Value : PA1 = 明細_dgv.Rows(i).Cells("資料流水號").Value : SQL_採購單申請_倉儲明細表匯率修改() : conn.Close()
  222. Next : MAOJI_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0 : Set_單據明細() : MsgBox("資料修改,存檔完畢 。")
  223. End Sub
  224. Private Sub Button3_Click(sender As Object, e As EventArgs) Handles 修改存檔_bt.Click
  225. Set_日期格式轉換() : 存檔1() : Set_單據明細() : Set_採購清單() : MsgBox("資料修改,存檔完畢 。")
  226. End Sub
  227. Private Sub RadioButton1_CheckedChanged(sender As Object, e As EventArgs) Handles 未完全入庫的單據_rb.Click
  228. 未完全入庫的單據_rb.Checked = True : 已完全入庫的單據_rb.Checked = False : Set_採購清單() : 新增物料_bt.Enabled = True : 修改匯率_bt.Enabled = True : 修改存檔_bt.Enabled = True
  229. 新增物料到採購單ToolStripMenuItem.Enabled = True : 刪除採購單中選中的物料ToolStripMenuItem.Enabled = True : 修改匯率ToolStripMenuItem.Enabled = True
  230. 修改存檔ToolStripMenuItem.Enabled = True
  231. End Sub
  232. Private Sub RadioButton2_CheckedChanged(sender As Object, e As EventArgs) Handles 已完全入庫的單據_rb.Click
  233. If CC(35) = False Then
  234. 未完全入庫的單據_rb.Checked = False : 已完全入庫的單據_rb.Checked = True : Set_採購清單() : 新增物料_bt.Enabled = False : 修改匯率_bt.Enabled = False : 修改存檔_bt.Enabled = False
  235. 新增物料到採購單ToolStripMenuItem.Enabled = False : 刪除採購單中選中的物料ToolStripMenuItem.Enabled = False : 修改匯率ToolStripMenuItem.Enabled = False
  236. 修改存檔ToolStripMenuItem.Enabled = False
  237. Else
  238. 未完全入庫的單據_rb.Checked = False : 已完全入庫的單據_rb.Checked = True : Set_採購清單() : 新增物料_bt.Enabled = True : 修改匯率_bt.Enabled = True : 修改存檔_bt.Enabled = True
  239. 新增物料到採購單ToolStripMenuItem.Enabled = True : 刪除採購單中選中的物料ToolStripMenuItem.Enabled = True : 修改匯率ToolStripMenuItem.Enabled = True
  240. 修改存檔ToolStripMenuItem.Enabled = True
  241. End If
  242. End Sub
  243. Private Sub Button4_Click(sender As Object, e As EventArgs) Handles 單據複製_bt.Click
  244. '----------------------自动生成單據編號-------------------------------------------------------------------------
  245. Dim NUM1 As Integer : Set_日期格式轉換()
  246. For i As Integer = 1 To 999
  247. NUM1 = 0 + i
  248. If NUM1 < 10 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-00" & NUM1
  249. ElseIf NUM1 > 9 And NUM1 < 100 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-0" & NUM1
  250. ElseIf NUM1 > 99 Then : 單據編號_tb.Text = "WD-" & DTP1 & "-" & NUM1 : End If : PA1 = 單據編號_tb.Text
  251. SQL_倉儲明細表生成單據編號()
  252. If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
  253. Next
  254. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  255. 資料數 = 明細_dgv.Rows.Count : MyModule1.進度條()
  256. PA1 = 明細_dgv.Rows(i).Cells("料號").Value
  257. SQL_物料資料庫成本查詢()
  258. If dr.Read() Then
  259. If dr("成本") = 0 Then : NU1 = 明細_dgv.Rows(i).Cells("單價").Value : PA1 = 明細_dgv.Rows(i).Cells("料號").Value
  260. SQL_物料資料庫成本修改() : conn.Close()
  261. Else : conn.Close() : End If
  262. End If
  263. Set_自動生成流水號() : 選擇_tb.Text = ESTR
  264. PA1 = ESTR : PA2 = 單據編號_tb.Text : PA3 = 明細_dgv.Rows(i).Cells("供應商編號").Value : PA4 = 明細_dgv.Rows(i).Cells("料號").Value : NU1 = 明細_dgv.Rows(i).Cells("單價").Value
  265. NU2 = 明細_dgv.Rows(i).Cells("匯率").Value : NU3 = 明細_dgv.Rows(i).Cells("數量").Value : NU4 = 0 : PA5 = "採購入庫" : PA6 = DTP : PA7 = "" : NU5 = 0 : PA8 = "" : PA9 = DTP2
  266. SQL_倉儲明細表新增() : conn.Close()
  267. Next : MAOJI_ERP_SYS.ToolStripProgressBar1.Value = 0 : 最終數 = 0 : MsgBox("單據複製完畢 。") : Set_物料清單()
  268. End Sub
  269. Private Sub Button6_Click(sender As Object, e As EventArgs) Handles 列印產品標籤_bt.Click
  270. If 單據編號_tb.Text = "" Then : MsgBox("沒有選擇要列印的單號 。") : Else : 列印用SQL = 單據編號_tb.Text : PA = "採購訂貨單" : 列印_產品標籤介面.ShowDialog() : End If
  271. End Sub
  272. '-----------------------------列印成EXCEL------------------------------------------------------------------------------------------------------------------------------------------
  273. Private Sub Button5_Click(sender As Object, e As EventArgs) Handles 列印採購單_bt.Click
  274. xlApp = CType(CreateObject("Excel.Application"), Application)
  275. xlBook = xlApp.Workbooks.Add
  276. xlApp.DisplayAlerts = True
  277. xlBook.Activate()
  278. xlSheet = NewMethod(xlBook)
  279. xlSheet.Activate()
  280. xlApp.Visible = True
  281. xlApp.Application.WindowState = xlMaximized
  282. xlSheet.Cells(1, 1) = MAOJI_ERP_SYS.公司名稱_cb.Text : xlSheet.Cells(2, 1) = 公司地址 : xlSheet.Cells(3, 1) = "採購訂單" : xlSheet.Cells(4, 1) = "採購編號 : " : xlSheet.Cells(4, 3) = 單據編號_tb.Text
  283. xlSheet.Cells(5, 1) = "採購日期 : " : xlSheet.Cells(5, 3) = 採購下單_dtp.Value : xlSheet.Cells(5, 6) = "付款方式 : " : xlSheet.Cells(5, 7) = 付款方式_tb.Text : xlSheet.Cells(5, 9) = "需求交期 : "
  284. xlSheet.Cells(5, 10) = 供應商交期_dtp.Value : xlSheet.Cells(4, 9) = "統一編號 : " : xlSheet.Cells(4, 10) = 公司統編 : xlSheet.Cells(7, 1) = "TO : " : xlSheet.Cells(8, 1) = "郵號1 : "
  285. xlSheet.Cells(9, 1) = "郵號1 : " : xlSheet.Cells(7, 2) = 供應商_tb.Text : xlSheet.Cells(8, 2) = 郵號1_tb.Text : xlSheet.Cells(9, 2) = 郵號2_tb.Text : xlSheet.Cells(8, 3) = "地址1 : "
  286. xlSheet.Cells(9, 3) = "地址2 : " : xlSheet.Cells(8, 4) = 地址1_tb.Text : xlSheet.Cells(9, 4) = 地址2_tb.Text : xlSheet.Cells(7, 9) = "公司電話1 : " : xlSheet.Cells(8, 9) = "公司電話2 : "
  287. xlSheet.Cells(9, 9) = "傳真 : " : xlSheet.Cells(7, 10) = 公司電話1_tb.Text : xlSheet.Cells(8, 10) = 公司電話2_tb.Text : xlSheet.Cells(9, 10) = 傳真1_tb.Text : xlSheet.Cells(11, 1) = "項次"
  288. xlSheet.Cells(11, 2) = "料號" : xlSheet.Cells(11, 4) = "品名" : xlSheet.Cells(11, 6) = "數量" : xlSheet.Cells(11, 7) = "單價" : xlSheet.Cells(11, 8) = "匯率" : xlSheet.Cells(11, 9) = "採購金額"
  289. xlSheet.Cells(11, 10) = "備註"
  290. For i As Integer = 0 To 明細_dgv.Rows.Count - 1
  291. xlSheet.Cells(i + 12, 1) = 明細_dgv.Rows(i).Cells("項次").Value
  292. xlSheet.Cells(i + 12, 2) = 明細_dgv.Rows(i).Cells("料號").Value
  293. xlSheet.Cells(i + 12, 4) = 明細_dgv.Rows(i).Cells("品名").Value
  294. xlSheet.Cells(i + 12, 6) = 明細_dgv.Rows(i).Cells("數量").Value
  295. xlSheet.Cells(i + 12, 7) = 明細_dgv.Rows(i).Cells("單價").Value
  296. xlSheet.Cells(i + 12, 8) = 明細_dgv.Rows(i).Cells("匯率").Value
  297. xlSheet.Cells(i + 12, 9) = "=F" & i + 12 & "*G" & i + 12 & "*H" & i + 12
  298. xlSheet.Cells(i + 12, 10) = 明細_dgv.Rows(i).Cells("備註").Value
  299. N1 = i + 12
  300. Next
  301. xlSheet.Cells(N1 + 1, 5) = "TOTAL : " : xlSheet.Cells(N1 + 1, 6) = "=SUM(F12:F" & N1 & ")" : xlSheet.Cells(N1 + 1, 9) = "=SUM(I12:I" & N1 & ")" : xlSheet.Cells(N1 + 2, 1) = "核准 : "
  302. xlSheet.Cells(N1 + 2, 9) = "製表人 : " : xlSheet.Cells(N1 + 2, 10) = gUserName
  303. AA(xlApp, xlSheet)
  304. xlSheet.PageSetup.PrintArea = ""
  305. xlApp.Cells.Select()
  306. xlSheet.Range("B1").Select()
  307. xlApp.Application.WindowState = xlMinimized
  308. xlSheet.Cells.Select()
  309. xlApp.ActiveSheet.Protect(DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="0911274990")
  310. xlApp.ActiveSheet.EnableSelection = 1
  311. MsgBox("列印完成。")
  312. End Sub
  313. Private Shared Function NewMethod(xlBook As Workbook) As Worksheet
  314. Return CType(xlBook.Worksheets.Add, Worksheet)
  315. End Function
  316. Private Sub AA(ByVal myExcel As Application, ByVal xlSheet As Worksheet)
  317. xlSheet.Cells.Select()
  318. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 10 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  319. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  320. xlSheet.Columns("A:C").Select : myExcel.Selection.ColumnWidth = 6
  321. xlSheet.Columns("D:D").Select : myExcel.Selection.ColumnWidth = 10
  322. xlSheet.Columns("E:E").Select : myExcel.Selection.ColumnWidth = 20
  323. xlSheet.Columns("F:G").Select : myExcel.Selection.ColumnWidth = 10
  324. xlSheet.Columns("H:H").Select : myExcel.Selection.ColumnWidth = 8
  325. xlSheet.Columns("I:I").Select : myExcel.Selection.ColumnWidth = 12
  326. xlSheet.Columns("J:J").Select : myExcel.Selection.ColumnWidth = 30
  327. xlSheet.Rows("1:1").Select
  328. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 28 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  329. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  330. xlSheet.Rows("2:2").Select
  331. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 16 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  332. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  333. xlSheet.Rows("3:3").Select
  334. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 12 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False : .Shadow = False
  335. .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  336. xlSheet.Range("A1:J1").Select()
  337. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  338. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  339. xlSheet.Range("A2:J2").Select()
  340. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  341. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  342. xlSheet.Range("A3:J3").Select()
  343. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  344. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  345. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  346. myExcel.Selection.Borders(xlEdgeLeft).LineStyle = xlNone : myExcel.Selection.Borders(xlEdgeTop).LineStyle = xlNone
  347. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  348. myExcel.Selection.Borders(xlEdgeRight).LineStyle = xlNone : myExcel.Selection.Borders(xlInsideVertical).LineStyle = xlNone : myExcel.Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
  349. xlSheet.Range("A4:B4").Select()
  350. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  351. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  352. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  353. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  354. xlSheet.Range("A5:B5").Select()
  355. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  356. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  357. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  358. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  359. xlSheet.Range("C4:D4").Select()
  360. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  361. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  362. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  363. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  364. xlSheet.Range("C5:D5").Select()
  365. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  366. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  367. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  368. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  369. xlSheet.Range("J4").Select()
  370. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  371. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  372. xlSheet.Range("J5").Select()
  373. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  374. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  375. xlSheet.Range("A7:A9").Select()
  376. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  377. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  378. xlSheet.Range("I4:I9").Select()
  379. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  380. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  381. xlSheet.Range("B8").Select()
  382. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  383. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  384. xlSheet.Range("C8:C9").Select()
  385. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  386. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  387. xlSheet.Rows("4:9").Select : myExcel.Selection.RowHeight = 18
  388. xlSheet.Rows("6:6").Select : myExcel.Selection.RowHeight = 5
  389. xlSheet.Rows("10:10").Select : myExcel.Selection.RowHeight = 5
  390. xlSheet.Rows("11:11").Select : myExcel.Selection.RowHeight = 25
  391. xlSheet.Rows("12:" & N1 + 1).Select : myExcel.Selection.RowHeight = 18
  392. xlSheet.Rows(N1 + 2 & ":" & N1 + 2).Select : myExcel.Selection.RowHeight = 30
  393. xlSheet.Range("A4:B5").Select()
  394. With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .ThemeColor = xlThemeColorAccent1 : .TintAndShade = 0.799981688894314 : .PatternTintAndShade = 0 : End With
  395. xlSheet.Range("F5").Select()
  396. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  397. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = True : End With
  398. With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .ThemeColor = xlThemeColorAccent1 : .TintAndShade = 0.799981688894314 : .PatternTintAndShade = 0 : End With
  399. xlSheet.Range("I4:I5").Select()
  400. With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .ThemeColor = xlThemeColorAccent1 : .TintAndShade = 0.799981688894314 : .PatternTintAndShade = 0 : End With
  401. xlSheet.Range("A5:J5").Select()
  402. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  403. myExcel.Selection.Borders(xlEdgeLeft).LineStyle = xlNone : myExcel.Selection.Borders(xlEdgeTop).LineStyle = xlNone
  404. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  405. myExcel.Selection.Borders(xlEdgeRight).LineStyle = xlNone : myExcel.Selection.Borders(xlInsideVertical).LineStyle = xlNone : myExcel.Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
  406. xlSheet.Range("A7:A9").Select()
  407. With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .ThemeColor = xlThemeColorAccent1 : .TintAndShade = 0.799981688894314 : .PatternTintAndShade = 0 : End With
  408. xlSheet.Range("C8:C9").Select()
  409. With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .ThemeColor = xlThemeColorAccent1 : .TintAndShade = 0.799981688894314 : .PatternTintAndShade = 0 : End With
  410. xlSheet.Range("I7:I9").Select()
  411. With myExcel.Selection.Interior : .Pattern = xlSolid : .PatternColorIndex = xlAutomatic : .ThemeColor = xlThemeColorAccent1 : .TintAndShade = 0.799981688894314 : .PatternTintAndShade = 0 : End With
  412. xlSheet.Range("A9:J9").Select()
  413. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  414. myExcel.Selection.Borders(xlEdgeLeft).LineStyle = xlNone : myExcel.Selection.Borders(xlEdgeTop).LineStyle = xlNone
  415. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlMedium : End With
  416. myExcel.Selection.Borders(xlEdgeRight).LineStyle = xlNone : myExcel.Selection.Borders(xlInsideVertical).LineStyle = xlNone : myExcel.Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
  417. xlSheet.Range("A11:J" & N1).Select()
  418. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  419. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  420. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  421. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  422. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  423. With myExcel.Selection.Borders(xlInsideVertical) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  424. With myExcel.Selection.Borders(xlInsideHorizontal) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  425. xlSheet.Range("A" & N1 + 1 & ":J" & N1 + 1).Select()
  426. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone : myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  427. With myExcel.Selection.Borders(xlEdgeLeft) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  428. With myExcel.Selection.Borders(xlEdgeTop) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  429. With myExcel.Selection.Borders(xlEdgeBottom) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  430. With myExcel.Selection.Borders(xlEdgeRight) : .LineStyle = xlContinuous : .ColorIndex = 0 : .TintAndShade = 0 : .Weight = xlThin : End With
  431. myExcel.Selection.Borders(xlInsideVertical).LineStyle = xlNone : myExcel.Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
  432. xlSheet.Range("A11:A" & N1).Select()
  433. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  434. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  435. For i As Integer = 11 To N1
  436. xlSheet.Range("B" & i & ":C" & i).Select()
  437. With myExcel.Selection : .HorizontalAlignment = xlCenter : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  438. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  439. xlSheet.Range("D" & i & ":E" & i).Select()
  440. With myExcel.Selection : .HorizontalAlignment = xlLeft : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False
  441. .IndentLevel = 0 : .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With : myExcel.Selection.Merge
  442. Next
  443. xlSheet.Range("F11:F" & N1 + 1).Select() : myExcel.Selection.Style = "Comma" : myExcel.Selection.NumberFormatLocal = "_-* #,##0_-;-* #,##0_-;_-* ""-""??_-;_-@_-"
  444. xlSheet.Range("F11").Select()
  445. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  446. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  447. xlSheet.Range("G11:G" & N1).Select() : myExcel.Selection.Style = "Comma" : myExcel.Selection.NumberFormatLocal = "_-* #,##0.0_-;-* #,##0.0_-;_-* ""-""??_-;_-@_-"
  448. xlSheet.Range("G11").Select()
  449. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  450. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  451. xlSheet.Range("H11:H" & N1).Select() : myExcel.Selection.Style = "Comma" : myExcel.Selection.NumberFormatLocal = "_-* #,##0.000_-;-* #,##0.000_-;_-* ""-""??_-;_-@_-"
  452. xlSheet.Range("H11").Select()
  453. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  454. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  455. xlSheet.Range("I11:I" & N1 + 1).Select() : myExcel.Selection.Style = "Comma" : myExcel.Selection.NumberFormatLocal = "_-* #,##0_-;-* #,##0_-;_-* ""-""??_-;_-@_-"
  456. xlSheet.Range("I11").Select()
  457. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  458. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  459. xlSheet.Range("E" & N1 + 1).Select()
  460. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  461. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  462. xlSheet.Range("A" & N1 + 2).Select()
  463. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  464. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  465. xlSheet.Range("I" & N1 + 2).Select()
  466. With myExcel.Selection : .HorizontalAlignment = xlRight : .VerticalAlignment = xlCenter : .WrapText = False : .Orientation = 0 : .AddIndent = False : .IndentLevel = 0
  467. .ShrinkToFit = False : .ReadingOrder = xlContext : .MergeCells = False : End With
  468. myExcel.ActiveWindow.DisplayGridlines = False
  469. End Sub
  470. '-----------------------------滑鼠右鍵------------------------------------------------------------------------------------------------------------------------------------------
  471. Private Sub 重新整理ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 重新整理ToolStripMenuItem.Click
  472. Set_採購清單() : Set_物料清單() : ComboBox2下拉表單資料載入()
  473. End Sub
  474. Private Sub 開立新的採購單ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 開立新的採購單ToolStripMenuItem.Click
  475. If 非當天日期_ch.Checked = True Then : Else : 採購下單_dtp.Value = Today() : End If
  476. 單據編號_tb.Text = "" : 總金額_tb.Text = "0" : 採購下單_dtp.Value = Today() : 選擇_tb.Text = ""
  477. 供應商_tb.Text = "" : 公司電話1_tb.Text = "" : 公司電話2_tb.Text = "" : 傳真1_tb.Text = "" : 郵號1_tb.Text = ""
  478. 地址1_tb.Text = "" : 郵號2_tb.Text = "" : 地址2_tb.Text = "" : 統編_tb.Text = "" : 付款方式_tb.Text = ""
  479. ComboBox1下拉表單資料載入() : ComboBox2下拉表單資料載入() : Set_採購清單() : Set_物料清單()
  480. 明細_dgv.DataSource = Nothing : ds2.Clear() : Me.未完全入庫的單據_rb.PerformClick()
  481. End Sub
  482. Private Sub 刪除採購單中選中的物料ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 刪除採購單中選中的物料ToolStripMenuItem.Click
  483. PA1 = 選擇_tb.Text : SQL_倉儲明細表_入庫日期讀取()
  484. If dr.Read() Then
  485. If dr("入庫日期") = "" Then : conn.Close()
  486. If 選擇_tb.Text = "" Then : MsgBox("沒有選擇要刪除了料號 。")
  487. Else
  488. Dim aa1 As MsgBoxResult = MsgBox("確定要刪除該筆資料?", MsgBoxStyle.OkCancel)
  489. If aa1 = MsgBoxResult.Ok Then
  490. PA1 = 選擇_tb.Text : SQL_倉儲明細表刪除() : conn.Close() : 選擇_tb.Text = "" : Set_單據明細()
  491. End If
  492. End If
  493. Else
  494. conn.Close() : MsgBox("已入庫的資料不可刪除 。")
  495. End If
  496. End If
  497. End Sub
  498. Private Sub 新增物料到採購單ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 新增物料到採購單ToolStripMenuItem.Click
  499. Me.新增物料_bt.PerformClick()
  500. End Sub
  501. Private Sub 修改匯率ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 修改匯率ToolStripMenuItem.Click
  502. Me.修改匯率_bt.PerformClick() : MsgBox("資料修改,存檔完畢 。")
  503. End Sub
  504. Private Sub 修改存檔ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 修改存檔ToolStripMenuItem.Click
  505. Me.修改存檔_bt.PerformClick() : MsgBox("資料修改,存檔完畢 。")
  506. End Sub
  507. Private Sub 列印成EXCELToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 列印成EXCELToolStripMenuItem.Click
  508. Me.列印採購單_bt.PerformClick()
  509. End Sub
  510. Private Sub 列印產品標籤ToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles 列印產品標籤ToolStripMenuItem.Click
  511. Me.列印產品標籤_bt.PerformClick()
  512. End Sub
  513. End Class