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

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894
  1. 
  2. Option Strict Off
  3. Imports Microsoft.Office.Interop.Excel.XlUnderlineStyle
  4. Imports Microsoft.Office.Interop.Excel.Constants
  5. Imports Microsoft.Office.Interop.Excel.XlBordersIndex
  6. Imports Microsoft.Office.Interop.Excel.XlLineStyle
  7. Imports Microsoft.Office.Interop.Excel.XlBorderWeight
  8. Imports Microsoft.Office.Interop.Excel.XlThemeFont
  9. Imports Microsoft.Office.Interop.Excel.XlThemeColor
  10. Imports Microsoft.Office.Interop.Excel.XlWindowState
  11. Imports Microsoft.Office.Interop.Excel
  12. Imports System.Data.SqlClient
  13. Imports System.Text.RegularExpressions
  14. Imports System.IO
  15. Imports Microsoft.Office.Interop
  16. Public Class 車輛銷售管理
  17. ReadOnly ds As New DataSet : ReadOnly ds1 As New DataSet : Dim 新流水1 As String : Dim 新項次 As String
  18. Dim NUM1, NUM2 As Integer : ReadOnly ds2 As New DataSet : Dim 上次的流水號 As String : Dim index As Integer
  19. Dim boo As Boolean : Dim boo1 As Boolean : Dim boo2 As Boolean : ReadOnly ds3 As New DataSet
  20. Dim xlApp As Microsoft.Office.Interop.Excel.Application
  21. Dim xlBook As Microsoft.Office.Interop.Excel.Workbook
  22. Dim xlSheet As Microsoft.Office.Interop.Excel.Worksheet
  23. Dim 位置1 As String
  24. Dim N2 As Integer : Dim N3 As Integer
  25. Private Sub 車輛銷售管理_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  26. If CC(104) = False Then
  27. 車廠型態 = False
  28. Else
  29. 線路選擇.ShowDialog() : 線路選擇.BringToFront()
  30. End If
  31. ICS_ASMS_ERP_SYS.WindowState = 2
  32. Me.MdiParent = ICS_ASMS_ERP_SYS : Me.WindowState = 2 : Me.AutoScroll = True
  33. 選擇日期_dtp.CustomFormat = "yyyy/MM/dd"
  34. 選擇日期_dtp.Format = DateTimePickerFormat.Custom
  35. 選擇供應商_cb.Items.Add("")
  36. SQL_物料資料庫_供應商_下拉清單()
  37. While (dr.Read()) : 選擇供應商_cb.Items.Add(dr("公司名")) : End While : conn.Close()
  38. 利潤率.Value = 20
  39. SQL_讀取公司名稱()
  40. If dr.Read() Then
  41. 公司名稱.Text = dr("公司名稱")
  42. End If
  43. conn.Close()
  44. If 車廠型態 = True Then
  45. 狀態 = "車輛買賣"
  46. Panel4.Visible = True
  47. Panel6.Visible = False
  48. Panel2.Visible = True
  49. Panel5.Visible = False
  50. 只顯示未付款_cb.Visible = False
  51. Else
  52. 狀態 = "保養維修"
  53. Panel4.Visible = False
  54. Panel6.Visible = True
  55. Panel2.Visible = False
  56. Panel5.Visible = True
  57. 只顯示未付款_cb.Visible = True
  58. End If
  59. SQL_車輛銷售管理_讀取列印資訊()
  60. If dr.Read() Then
  61. 註解1_tb.Text = If(Not IsDBNull(dr("列印1")), dr("列印1").ToString(), "")
  62. 註解2_tb.Text = If(Not IsDBNull(dr("列印2")), dr("列印2").ToString(), "")
  63. 註解3_tb.Text = If(Not IsDBNull(dr("列印3")), dr("列印3").ToString(), "")
  64. 註解4_tb.Text = If(Not IsDBNull(dr("列印4")), dr("列印4").ToString(), "")
  65. End If
  66. 確認新增_bt.Enabled = False : Set_清單1() : Set_清單2()
  67. End Sub
  68. Private Sub Set_清單1()
  69. 控制表_dgv.DataSource = Nothing : ds1.Clear()
  70. 控制表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  71. 控制表_dgv.ColumnHeadersHeight = 25
  72. 控制表_dgv.AllowUserToAddRows = False
  73. 控制表_dgv.RowTemplate.Height = 30
  74. If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
  75. If 只顯示未付款_cb.Checked = True Then
  76. PA55 = " AND 買入進價 = 0"
  77. Else
  78. PA55 = ""
  79. End If
  80. SQL_車輛銷售管理_控制表清單()
  81. da.Fill(ds1) : 控制表_dgv.DataSource = ds1.Tables(0) : conn.Close()
  82. 控制表_dgv.Columns(5).FillWeight = 60 : 控制表_dgv.Columns(7).FillWeight = 40
  83. If 車廠型態 = True Then
  84. 控制表_dgv.Columns(24).FillWeight = 20
  85. Else
  86. 控制表_dgv.Columns(24).Visible = False
  87. End If
  88. Dim newFont As New System.Drawing.Font("微軟正黑體", 9) ' 創建一個新字體,Arial 12pt
  89. 控制表_dgv.RowsDefaultCellStyle.Font = newFont
  90. 控制表_dgv.Columns(1).Visible = False : 控制表_dgv.Columns(2).Visible = False
  91. 控制表_dgv.Columns(3).Visible = False : 控制表_dgv.Columns(4).Visible = False
  92. 控制表_dgv.Columns(6).Visible = False : 控制表_dgv.Columns(0).Visible = False : 控制表_dgv.Columns(8).Visible = False
  93. 控制表_dgv.Columns(9).Visible = False : 控制表_dgv.Columns(10).Visible = False : 控制表_dgv.Columns(11).Visible = False
  94. 控制表_dgv.Columns(12).Visible = False
  95. 控制表_dgv.Columns(13).Visible = False : 控制表_dgv.Columns(14).Visible = False : 控制表_dgv.Columns(15).Visible = False
  96. 控制表_dgv.Columns(16).Visible = False : 控制表_dgv.Columns(17).Visible = False : 控制表_dgv.Columns(18).Visible = False
  97. 控制表_dgv.Columns(19).Visible = False : 控制表_dgv.Columns(20).Visible = False : 控制表_dgv.Columns(21).Visible = False
  98. 控制表_dgv.Columns(22).Visible = False : 控制表_dgv.Columns(23).Visible = False
  99. 控制表_dgv.Columns(25).Visible = False : 控制表_dgv.Columns(26).Visible = False
  100. For i As Integer = 0 To 控制表_dgv.Rows.Count - 1
  101. If Not DBNull.Value.Equals(控制表_dgv.Rows(i).Cells("買入進價").Value) Then
  102. Else
  103. 控制表_dgv.Rows(i).Cells("買入進價").Value = 0
  104. End If
  105. If Not DBNull.Value.Equals(控制表_dgv.Rows(i).Cells("賣出售價").Value) Then
  106. Else
  107. 控制表_dgv.Rows(i).Cells("賣出售價").Value = 0
  108. End If
  109. If Not DBNull.Value.Equals(控制表_dgv.Rows(i).Cells("買入總成本").Value) Then
  110. Else
  111. 控制表_dgv.Rows(i).Cells("買入總成本").Value = 0
  112. End If
  113. Next
  114. End Sub
  115. Private Sub Set_清單2()
  116. 物料_dgv.DataSource = Nothing : ds.Clear()
  117. 物料_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  118. 物料_dgv.ColumnHeadersHeight = 25
  119. 物料_dgv.AllowUserToAddRows = False
  120. 物料_dgv.RowTemplate.Height = 30
  121. 物料_dgv.DefaultCellStyle.Font = SystemFonts.DefaultFont
  122. If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
  123. SQL_車輛銷售管理_物料清單(選擇供應商_cb.Text)
  124. da.Fill(ds) : 物料_dgv.DataSource = ds.Tables(0) : conn.Close()
  125. Dim newFont As New System.Drawing.Font("微軟正黑體", 9) ' 創建一個新字體,Arial 12pt
  126. 物料_dgv.RowsDefaultCellStyle.Font = newFont
  127. 物料_dgv.Columns(1).FillWeight = 55 : 物料_dgv.Columns(3).FillWeight = 30
  128. 物料_dgv.Columns(0).Visible = False : 物料_dgv.Columns(2).FillWeight = 15 : 物料_dgv.Columns(4).Visible = False
  129. If 顯示成本_cb.Checked = True Then
  130. 物料_dgv.Columns(5).FillWeight = 30
  131. 物料_dgv.Columns(5).DefaultCellStyle.Format = "#,##0.##"
  132. 物料_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  133. 物料_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  134. Else
  135. 物料_dgv.Columns(5).Visible = False
  136. End If
  137. End Sub
  138. Private Sub Set_清單3()
  139. If 車廠型態 = True Then
  140. 明細表_dgv.DataSource = Nothing : ds2.Clear()
  141. 明細表_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  142. 明細表_dgv.ColumnHeadersHeight = 25
  143. 明細表_dgv.AllowUserToAddRows = False
  144. 明細表_dgv.RowTemplate.Height = 35
  145. 明細表_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  146. SQL_車輛銷售管理_查詢明細表() : da.Fill(ds2) : 明細表_dgv.DataSource = ds2.Tables(0) : conn.Close()
  147. For Each row As DataGridViewRow In 明細表1_dgv.Rows
  148. row.Height = 30 ' 將每一列的高度設為 40 像素
  149. Next
  150. Dim newFont As New System.Drawing.Font("微軟正黑體", 9) ' 創建一個新字體,Arial 12pt
  151. 明細表1_dgv.RowsDefaultCellStyle.Font = newFont
  152. 明細表_dgv.Columns("總售價").ReadOnly = True : 明細表_dgv.Columns("項次").ReadOnly = True : 明細表_dgv.Columns("總成本").ReadOnly = True
  153. 明細表_dgv.Columns("利潤").ReadOnly = True : 明細表_dgv.Columns("已儲存").ReadOnly = True
  154. 明細表_dgv.Columns(0).Visible = False : 明細表_dgv.Columns(1).FillWeight = 60 : 明細表_dgv.Columns(2).FillWeight = 400 : 明細表_dgv.Columns(3).FillWeight = 60
  155. 明細表_dgv.Columns(5).FillWeight = 100 : 明細表_dgv.Columns(7).Visible = 100
  156. 明細表_dgv.Columns(9).Visible = 300 : 明細表_dgv.Columns(10).Visible = False : 明細表_dgv.Columns(11).Visible = False
  157. 明細表_dgv.Columns(12).FillWeight = 60 : 明細表_dgv.Columns(13).Visible = 100
  158. If 隱藏成本_cb.Checked = True Then
  159. 明細表_dgv.Columns(4).Visible = False
  160. 明細表_dgv.Columns(6).Visible = False
  161. 明細表_dgv.Columns(8).Visible = False
  162. Else
  163. 明細表_dgv.Columns(4).FillWeight = 100 : 明細表_dgv.Columns(6).FillWeight = 100 : 明細表_dgv.Columns(8).Visible = 100
  164. 明細表_dgv.Columns(6).DefaultCellStyle.Format = "#,##0.##"
  165. 明細表_dgv.Columns(4).DefaultCellStyle.Format = "#,##0.##"
  166. 明細表_dgv.Columns(8).DefaultCellStyle.Format = "#,##0.##"
  167. 明細表_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  168. 明細表_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  169. 明細表_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  170. 明細表_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  171. 明細表_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  172. 明細表_dgv.Columns(8).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  173. End If
  174. 明細表_dgv.Columns(5).DefaultCellStyle.Format = "#,##0.##" : 明細表_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.##"
  175. 明細表_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  176. 明細表_dgv.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  177. 明細表_dgv.Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  178. 明細表_dgv.Columns(3).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  179. 明細表_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  180. 明細表_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  181. 明細表_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  182. 明細表_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  183. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  184. If 明細表_dgv.Rows(i).Cells("成本").Value Is Nothing OrElse IsDBNull(明細表_dgv.Rows(i).Cells("成本").Value) Then
  185. ' 如果成本為 NULL,設置為 0
  186. 明細表_dgv.Rows(i).Cells("成本").Value = 0
  187. End If
  188. Next
  189. Dim NUM2, NUM3 As Integer
  190. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  191. 明細表_dgv.Rows(i).Cells("總售價").Value = 明細表_dgv.Rows(i).Cells("數量").Value * 明細表_dgv.Rows(i).Cells("售價").Value
  192. 明細表_dgv.Rows(i).Cells("總成本").Value = 明細表_dgv.Rows(i).Cells("數量").Value * 明細表_dgv.Rows(i).Cells("成本").Value
  193. 明細表_dgv.Rows(i).Cells("利潤").Value = (明細表_dgv.Rows(i).Cells("數量").Value * 明細表_dgv.Rows(i).Cells("售價").Value) - (明細表_dgv.Rows(i).Cells("數量").Value * 明細表_dgv.Rows(i).Cells("成本").Value)
  194. NUM2 += 明細表_dgv.Rows(i).Cells("總售價").Value
  195. NUM3 += 明細表_dgv.Rows(i).Cells("總成本").Value
  196. Next
  197. 支出合計_tb.Text = Strings.Format(Val(NUM2), "#,##0")
  198. 總成本_tb.Text = Strings.Format(Val(NUM3), "#,##0")
  199. Else
  200. 明細表1_dgv.DataSource = Nothing : ds2.Clear()
  201. 明細表1_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  202. 明細表1_dgv.ColumnHeadersHeight = 25
  203. 明細表1_dgv.AllowUserToAddRows = False
  204. 明細表1_dgv.RowTemplate.Height = 35
  205. 明細表1_dgv.EditMode = DataGridViewEditMode.EditOnEnter
  206. SQL_車輛銷售管理_查詢明細表() : da.Fill(ds2) : 明細表1_dgv.DataSource = ds2.Tables(0) : conn.Close()
  207. For Each row As DataGridViewRow In 明細表1_dgv.Rows
  208. row.Height = 30 ' 將每一列的高度設為 40 像素
  209. Next
  210. Dim newFont As New System.Drawing.Font("微軟正黑體", 9) ' 創建一個新字體,Arial 12pt
  211. 明細表1_dgv.RowsDefaultCellStyle.Font = newFont
  212. 明細表1_dgv.Columns("總售價").ReadOnly = True : 明細表1_dgv.Columns("項次").ReadOnly = True : 明細表1_dgv.Columns("總成本").ReadOnly = True
  213. 明細表1_dgv.Columns("利潤").ReadOnly = True : 明細表1_dgv.Columns("已儲存").ReadOnly = True
  214. 明細表1_dgv.Columns(0).Visible = False : 明細表1_dgv.Columns(1).FillWeight = 60 : 明細表1_dgv.Columns(2).FillWeight = 400 : 明細表1_dgv.Columns(3).FillWeight = 60
  215. 明細表1_dgv.Columns(5).FillWeight = 100 : 明細表1_dgv.Columns(7).Visible = 100
  216. 明細表1_dgv.Columns(9).Visible = 300 : 明細表1_dgv.Columns(10).Visible = False : 明細表1_dgv.Columns(11).Visible = False
  217. 明細表1_dgv.Columns(12).FillWeight = 60 : 明細表1_dgv.Columns(13).Visible = 100
  218. If 隱藏成本_cb.Checked = True Then
  219. 明細表1_dgv.Columns(4).FillWeight = 100 : 明細表1_dgv.Columns(6).FillWeight = 100 : 明細表1_dgv.Columns(8).Visible = 100
  220. 明細表1_dgv.Columns(6).DefaultCellStyle.Format = "#,##0.##"
  221. 明細表1_dgv.Columns(4).DefaultCellStyle.Format = "#,##0.##"
  222. 明細表1_dgv.Columns(8).DefaultCellStyle.Format = "#,##0.##"
  223. 明細表1_dgv.Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  224. 明細表1_dgv.Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  225. 明細表1_dgv.Columns(6).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  226. 明細表1_dgv.Columns(6).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  227. 明細表1_dgv.Columns(8).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  228. 明細表1_dgv.Columns(8).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  229. Else
  230. 明細表1_dgv.Columns(4).Visible = False
  231. 明細表1_dgv.Columns(6).Visible = False
  232. 明細表1_dgv.Columns(8).Visible = False
  233. End If
  234. 明細表1_dgv.Columns(7).DefaultCellStyle.Format = "#,##0.##" : 明細表1_dgv.Columns(5).DefaultCellStyle.Format = "#,##0.##"
  235. 明細表1_dgv.Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  236. 明細表1_dgv.Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  237. 明細表1_dgv.Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
  238. 明細表1_dgv.Columns(3).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
  239. 明細表1_dgv.Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  240. 明細表1_dgv.Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  241. 明細表1_dgv.Columns(7).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight
  242. 明細表1_dgv.Columns(7).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleRight
  243. Dim NUM1 As Integer = 0
  244. Dim NUM2 As Integer = 0
  245. For i As Integer = 0 To 明細表1_dgv.Rows.Count - 1
  246. 明細表1_dgv.Rows(i).Cells("總售價").Value = 明細表1_dgv.Rows(i).Cells("數量").Value * 明細表1_dgv.Rows(i).Cells("售價").Value
  247. 明細表1_dgv.Rows(i).Cells("總成本").Value = 明細表1_dgv.Rows(i).Cells("數量").Value * 明細表1_dgv.Rows(i).Cells("成本").Value
  248. 明細表1_dgv.Rows(i).Cells("利潤").Value = (明細表1_dgv.Rows(i).Cells("數量").Value * 明細表1_dgv.Rows(i).Cells("售價").Value) - (明細表1_dgv.Rows(i).Cells("數量").Value * 明細表1_dgv.Rows(i).Cells("成本").Value)
  249. If 明細表1_dgv.Rows(i).Cells("狀態").Value <> "承修項目" Then
  250. NUM1 += 明細表1_dgv.Rows(i).Cells("總售價").Value
  251. Else
  252. NUM2 += 明細表1_dgv.Rows(i).Cells("總售價").Value
  253. End If
  254. Next
  255. 零件_tb.Text = Strings.Format(Val(NUM1), "#,##0")
  256. 工資_tb.Text = Strings.Format(Val(NUM2), "#,##0")
  257. 總計_tb.Text = Strings.Format(Val(NUM1 + NUM2), "#,##0")
  258. If 是否收稅_cb.Checked = True Then
  259. 稅金_tb.Text = Strings.Format(Val((NUM1 + NUM2) * 0.05), "#,##0")
  260. 應收合計_tb.Text = Strings.Format(Val(NUM1 + NUM2 + ((NUM1 + NUM2) * 0.05)), "#,##0")
  261. 總計_tb.Text = Strings.Format(Val(NUM1 + NUM2 + ((NUM1 + NUM2) * 0.05)), "#,##0")
  262. Else
  263. 稅金_tb.Text = "0"
  264. 應收合計_tb.Text = Strings.Format(Val(NUM1 + NUM2), "#,##0")
  265. End If
  266. End If
  267. End Sub
  268. Private Sub 是否收稅_cb_CheckedChanged(sender As Object, e As EventArgs) Handles 是否收稅_cb.CheckedChanged
  269. Dim NUM1, NUM2 As Integer
  270. If 總計_tb.Text <> "" Then
  271. NUM1 = 總計_tb.Text
  272. NUM2 = NUM1 * 0.05
  273. If 是否收稅_cb.Checked = True Then
  274. 稅金_tb.Text = Strings.Format(Val(NUM2), "#,##0")
  275. 應收合計_tb.Text = Strings.Format(Val(NUM1 + NUM2), "#,##0")
  276. 總計_tb.Text = Strings.Format(Val(NUM1 + NUM2), "#,##0")
  277. Else
  278. 稅金_tb.Text = "0"
  279. 應收合計_tb.Text = Strings.Format(Val(NUM1), "#,##0")
  280. End If
  281. End If
  282. End Sub
  283. Private Sub 新增_bt_Click(sender As Object, e As EventArgs) Handles 新增_bt.Click
  284. Set_日期格式轉換() : Dim NUM1 As Integer
  285. 新增_bt.Enabled = False : 確認新增_bt.Enabled = True : 修改_bt.Enabled = False
  286. 入廠日期_dtp.Value = DTP4
  287. For i As Integer = 1 To 999
  288. NUM1 = 0 + i
  289. If NUM1 < 10 Then : 單號_tb.Text = "CR-" & DTP1 & "-00" & NUM1
  290. ElseIf NUM1 > 9 And NUM1 < 100 Then : 單號_tb.Text = "CR-" & DTP1 & "-0" & NUM1
  291. ElseIf NUM1 > 99 Then : 單號_tb.Text = "CR-" & DTP1 & "-" & NUM1 : End If
  292. PA = 單號_tb.Text : SQL_車輛銷售管理_單號查詢()
  293. If dr.Read() Then : Else : i = 999 : conn.Close() : End If : conn.Close()
  294. Next
  295. If 車廠型態 = True Then
  296. CHB("請輸入車牌號碼") : 買入牌照號碼_tb.Text = 訊息回應
  297. CHB("請輸入姓名") : 買入車主名稱_tb.Text = 訊息回應
  298. If (買入牌照號碼_tb.Text = "" And 買入車主名稱_tb.Text = "") Then
  299. 單號_tb.Text = "" : 買入牌照號碼_tb.Text = "" : 買入車主名稱_tb.Text = ""
  300. 新增_bt.Enabled = True : 確認新增_bt.Enabled = False : 修改_bt.Enabled = True
  301. MsgBox("未輸入資料!!")
  302. Return
  303. Else
  304. SQL_車輛銷售管理_重複查詢()
  305. If dr.Read() Then
  306. conn.Close()
  307. 單號_tb.Text = "" : 買入牌照號碼_tb.Text = "" : 買入車主名稱_tb.Text = ""
  308. 新增_bt.Enabled = True : 確認新增_bt.Enabled = False : 修改_bt.Enabled = True
  309. MsgBox("重複資料!!")
  310. Return
  311. End If
  312. End If
  313. conn.Close()
  314. 進價_tb.Text = "0" : 售價_tb.Text = "0" : 總成本_tb.Text = "0" : 支出合計_tb.Text = "0"
  315. 廠牌_tb.Text = "" : 年分_tb.Text = "" : 引擎_tb.Text = "" : 總利潤_tb.Text = "0"
  316. 買入顏色_tb.Text = ""
  317. 買入車主電話_tb.Text = "" : 買入車主地址_tb.Text = "" : 買入經手人_tb.Text = ""
  318. 賣出牌照號碼_tb.Text = "" : 賣出顏色_tb.Text = "" : 賣出車主名稱_tb.Text = ""
  319. 賣出車主電話_tb.Text = "" : 賣出車主地址_tb.Text = "" : 賣出經手人_tb.Text = "" : 備註_tb.Text = ""
  320. 進廠里程_tb.Text = "" : 出廠里程_tb.Text = ""
  321. 檢測日期_dtp.Format = DateTimePickerFormat.Custom : 檢測日期_dtp.CustomFormat = " "
  322. 買入日期_dtp.Format = DateTimePickerFormat.Custom : 買入日期_dtp.CustomFormat = " "
  323. 賣出日期_dtp.Format = DateTimePickerFormat.Custom : 賣出日期_dtp.CustomFormat = " "
  324. 料號_tb.Text = "" : 品名.Text = "" : 成本.Text = "" : 利潤率.Value = 20 : 已交車_cb.Checked = False : 狀態_tb.Text = ""
  325. Else
  326. 出險公司_tb.Text = "" : 車主名稱_tb.Text = "" : 車號_tb.Text = "" : 地址_tb.Text = "" : 電話_tb.Text = ""
  327. 車型_tb.Text = "" : 保養預示_tb.Text = "" : 里程_tb.Text = "" : 廠牌_tb.Text = "" : 廠牌_tb.Text = "" : 引擎號碼1_tb.Text = ""
  328. 應驗車日_dtp.Format = DateTimePickerFormat.Custom : 應驗車日_dtp.CustomFormat = " " : 輪胎尺寸_tb.Text = "" : 年_tb.Text = ""
  329. 入廠日期_dtp.CustomFormat = "yyyy/MM/dd" : 備註1_tb.Text = ""
  330. 入廠日期_dtp.Format = DateTimePickerFormat.Custom
  331. 工資_tb.Text = "0" : 零件_tb.Text = "0" : 總計_tb.Text = "0" : 稅金_tb.Text = "0"
  332. 信用卡_tb.Text = "0" : 應收合計_tb.Text = "0" : 賒帳_tb.Text = "0" : 支票_tb.Text = "0"
  333. 現金_tb.Text = "0"
  334. End If
  335. SQL_車輛銷售管理_控制表新增() : Set_清單3()
  336. End Sub
  337. Private Sub Set_日期格式轉換()
  338. Dim selectedDate As DateTime = 選擇日期_dtp.Value
  339. DTP4 = Strings.Format(selectedDate, "yyyy/MM/dd") : DTP1 = Strings.Format(selectedDate, "yyyyMMdd")
  340. End Sub
  341. Private Sub 查詢_bt_Click(sender As Object, e As EventArgs) Handles 查詢_bt.Click
  342. CHB("請輸入要查詢的單號資料。") : PA56 = 訊息回應 : Set_清單1() : PA56 = ""
  343. End Sub
  344. Private Sub 查詢物_bt_Click(sender As Object, e As EventArgs) Handles 查詢物_bt.Click
  345. CHB("請輸入要查詢的關鍵字。") : PA56 = 訊息回應 : Set_清單2() : PA56 = ""
  346. End Sub
  347. Private Sub 確認新增_bt_Click(sender As Object, e As EventArgs) Handles 確認新增_bt.Click
  348. If 車廠型態 = True Then
  349. If 買入車主名稱_tb.Text = "" Or 買入牌照號碼_tb.Text = "" Then
  350. MsgBox("資料未輸入完成!!")
  351. Else
  352. 新增_bt.Enabled = True : 確認新增_bt.Enabled = False : 修改_bt.Enabled = True
  353. If 買入車主名稱_tb.Text <> "" And 買入牌照號碼_tb.Text <> "" Then
  354. SQL_車輛銷售管理_查詢客戶資料()
  355. If dr.Read() Then
  356. SQL_車輛銷售管理_修改客戶資料()
  357. Else
  358. SQL_客戶資料表_最後一筆資料()
  359. If dr.Read() Then : 供應商編號_tb.Text = dr("流水號").ToString : Else : 供應商編號_tb.Text = "CL00000" : End If
  360. conn.Close()
  361. Dim NUM1 As Integer
  362. NUM1 = Double.Parse(Strings.Right(供應商編號_tb.Text, 5)) + 1
  363. If NUM1 < 10 Then : 供應商編號_tb.Text = "CL" & "0000" & NUM1
  364. ElseIf NUM1 > 9 And NUM1 < 100 Then : 供應商編號_tb.Text = "CL" & "000" & NUM1
  365. ElseIf NUM1 > 99 And NUM1 < 1000 Then : 供應商編號_tb.Text = "CL" & "00" & NUM1
  366. ElseIf NUM1 > 999 And NUM1 < 10000 Then : 供應商編號_tb.Text = "CL" & "0" & NUM1
  367. ElseIf NUM1 > 9999 And NUM1 < 100000 Then : 供應商編號_tb.Text = "CL" & NUM1 : End If
  368. SQL_車輛銷售管理_新增客戶資料() : conn.Close()
  369. End If
  370. End If
  371. If 賣出車主名稱_tb.Text <> "" And 賣出牌照號碼_tb.Text <> "" Then
  372. SQL_車輛銷售管理_查詢客戶資料1()
  373. If dr.Read() Then
  374. SQL_車輛銷售管理_修改客戶資料1()
  375. Else
  376. SQL_客戶資料表_最後一筆資料()
  377. If dr.Read() Then : 供應商編號_tb.Text = dr("流水號").ToString : Else : 供應商編號_tb.Text = "CL00000" : End If
  378. conn.Close()
  379. Dim NUM1 As Integer
  380. NUM1 = Double.Parse(Strings.Right(供應商編號_tb.Text, 5)) + 1
  381. If NUM1 < 10 Then : 供應商編號_tb.Text = "CL" & "0000" & NUM1
  382. ElseIf NUM1 > 9 And NUM1 < 100 Then : 供應商編號_tb.Text = "CL" & "000" & NUM1
  383. ElseIf NUM1 > 99 And NUM1 < 1000 Then : 供應商編號_tb.Text = "CL" & "00" & NUM1
  384. ElseIf NUM1 > 999 And NUM1 < 10000 Then : 供應商編號_tb.Text = "CL" & "0" & NUM1
  385. ElseIf NUM1 > 9999 And NUM1 < 100000 Then : 供應商編號_tb.Text = "CL" & NUM1 : End If
  386. SQL_車輛銷售管理_新增客戶資料1() : conn.Close()
  387. End If
  388. End If
  389. SQL_車輛銷售管理_控制表修改() : conn.Close() : MsgBox("儲存成功!!") : Set_清單1()
  390. End If
  391. If 登入人級別 <> "00" Then
  392. If 已交車_cb.Checked = True Then
  393. 修改_bt.Enabled = False : 刪除_bt.Enabled = False : 查詢1_bt.Enabled = False : 查詢2_bt.Enabled = False
  394. 收支單中新增一筆資料_bt.Enabled = False : 收支單中新增一筆空白資料_bt.Enabled = False : 刪除選中的一筆資料_bt.Enabled = False
  395. 申請_bt.Enabled = False
  396. Else
  397. 修改_bt.Enabled = True : 刪除_bt.Enabled = True : 查詢1_bt.Enabled = True : 查詢2_bt.Enabled = True
  398. 收支單中新增一筆資料_bt.Enabled = True : 收支單中新增一筆空白資料_bt.Enabled = True : 刪除選中的一筆資料_bt.Enabled = True
  399. 申請_bt.Enabled = True
  400. End If
  401. End If
  402. Else
  403. 新增_bt.Enabled = True : 確認新增_bt.Enabled = False : 修改_bt.Enabled = True
  404. If 車主名稱_tb.Text <> "" And 車號_tb.Text <> "" Then
  405. SQL_車輛銷售管理_查詢客戶資料()
  406. If dr.Read() Then
  407. SQL_車輛銷售管理_修改客戶資料()
  408. Else
  409. SQL_客戶資料表_最後一筆資料()
  410. If dr.Read() Then : 供應商編號_tb.Text = dr("流水號").ToString : Else : 供應商編號_tb.Text = "CL00000" : End If
  411. conn.Close()
  412. Dim NUM1 As Integer
  413. NUM1 = Double.Parse(Strings.Right(供應商編號_tb.Text, 5)) + 1
  414. If NUM1 < 10 Then : 供應商編號_tb.Text = "CL" & "0000" & NUM1
  415. ElseIf NUM1 > 9 And NUM1 < 100 Then : 供應商編號_tb.Text = "CL" & "000" & NUM1
  416. ElseIf NUM1 > 99 And NUM1 < 1000 Then : 供應商編號_tb.Text = "CL" & "00" & NUM1
  417. ElseIf NUM1 > 999 And NUM1 < 10000 Then : 供應商編號_tb.Text = "CL" & "0" & NUM1
  418. ElseIf NUM1 > 9999 And NUM1 < 100000 Then : 供應商編號_tb.Text = "CL" & NUM1 : End If
  419. SQL_車輛銷售管理_新增客戶資料() : conn.Close()
  420. End If
  421. End If
  422. SQL_車輛銷售管理_控制表修改() : conn.Close() : MsgBox("儲存成功!!") : Set_清單1()
  423. End If
  424. End Sub
  425. Private Sub 控制表_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 控制表_dgv.CellClick
  426. boo1 = True
  427. If e.RowIndex = -1 Then : Else
  428. If 車廠型態 = True Then
  429. 總利潤_tb.Text = "0"
  430. 單號_tb.Text = 控制表_dgv(0, e.RowIndex).Value.ToString : 廠牌_tb.Text = 控制表_dgv(1, e.RowIndex).Value.ToString
  431. 年分_tb.Text = 控制表_dgv(2, e.RowIndex).Value.ToString : 引擎_tb.Text = 控制表_dgv(3, e.RowIndex).Value.ToString
  432. 買入牌照號碼_tb.Text = 控制表_dgv(5, e.RowIndex).Value.ToString
  433. 買入顏色_tb.Text = 控制表_dgv(6, e.RowIndex).Value.ToString : 買入車主名稱_tb.Text = 控制表_dgv(7, e.RowIndex).Value.ToString
  434. 買入車主電話_tb.Text = 控制表_dgv(8, e.RowIndex).Value.ToString : 買入車主地址_tb.Text = 控制表_dgv(9, e.RowIndex).Value.ToString
  435. 進價_tb.Text = Strings.Format(Val(控制表_dgv(10, e.RowIndex).Value), "#,##0") : 買入經手人_tb.Text = 控制表_dgv(11, e.RowIndex).Value.ToString
  436. 賣出牌照號碼_tb.Text = 控制表_dgv(15, e.RowIndex).Value.ToString
  437. 賣出顏色_tb.Text = 控制表_dgv(16, e.RowIndex).Value.ToString : 賣出車主名稱_tb.Text = 控制表_dgv(17, e.RowIndex).Value.ToString
  438. 賣出車主電話_tb.Text = 控制表_dgv(18, e.RowIndex).Value.ToString : 賣出車主地址_tb.Text = 控制表_dgv(19, e.RowIndex).Value.ToString
  439. 利潤率.Value = Strings.Format(Val(控制表_dgv(13, e.RowIndex).Value)) : 賣出經手人_tb.Text = 控制表_dgv(21, e.RowIndex).Value.ToString
  440. 備註_tb.Text = 控制表_dgv(22, e.RowIndex).Value.ToString : 售價_tb.Text = Strings.Format(Val(控制表_dgv(20, e.RowIndex).Value), "#,##0")
  441. 進廠里程_tb.Text = 控制表_dgv(25, e.RowIndex).Value.ToString : 出廠里程_tb.Text = 控制表_dgv(26, e.RowIndex).Value.ToString
  442. If 控制表_dgv(24, e.RowIndex).Value IsNot DBNull.Value Then
  443. 已交車_cb.Checked = 控制表_dgv(24, e.RowIndex).Value
  444. Else
  445. 已交車_cb.Checked = False
  446. End If
  447. Dim value As String = 控制表_dgv(14, e.RowIndex).Value.ToString
  448. Dim value1 As String = 控制表_dgv(23, e.RowIndex).Value.ToString
  449. Dim value2 As String = 控制表_dgv(4, e.RowIndex).Value.ToString
  450. If value.Length < 5 Then
  451. 賣出日期_dtp.Format = DateTimePickerFormat.Custom : 賣出日期_dtp.CustomFormat = " "
  452. Else
  453. 賣出日期_dtp.Text = 控制表_dgv(14, e.RowIndex).Value.ToString
  454. 賣出日期_dtp.CustomFormat = "yyyy/MM/dd"
  455. 賣出日期_dtp.Format = DateTimePickerFormat.Custom
  456. End If
  457. If value1.Length < 5 Then
  458. 檢測日期_dtp.Format = DateTimePickerFormat.Custom : 檢測日期_dtp.CustomFormat = " "
  459. Else
  460. 檢測日期_dtp.Text = 控制表_dgv(23, e.RowIndex).Value.ToString
  461. 檢測日期_dtp.CustomFormat = "yyyy/MM/dd"
  462. 檢測日期_dtp.Format = DateTimePickerFormat.Custom
  463. End If
  464. If value2.Length < 5 Then
  465. 買入日期_dtp.Format = DateTimePickerFormat.Custom : 買入日期_dtp.CustomFormat = " "
  466. Else
  467. 買入日期_dtp.Text = 控制表_dgv(4, e.RowIndex).Value.ToString
  468. 買入日期_dtp.CustomFormat = "yyyy/MM/dd"
  469. 買入日期_dtp.Format = DateTimePickerFormat.Custom
  470. End If
  471. Else
  472. 信用卡_tb.Text = "0" : 現金_tb.Text = "0" : 賒帳_tb.Text = "0" : 支票_tb.Text = "0"
  473. 單號_tb.Text = 控制表_dgv(0, e.RowIndex).Value.ToString
  474. 車號_tb.Text = 控制表_dgv(5, e.RowIndex).Value.ToString
  475. 車主名稱_tb.Text = 控制表_dgv(7, e.RowIndex).Value.ToString
  476. 電話_tb.Text = 控制表_dgv(8, e.RowIndex).Value.ToString : 地址_tb.Text = 控制表_dgv(9, e.RowIndex).Value.ToString
  477. 里程_tb.Text = 控制表_dgv(25, e.RowIndex).Value.ToString : 保養預示_tb.Text = 控制表_dgv(26, e.RowIndex).Value.ToString
  478. 引擎號碼1_tb.Text = 控制表_dgv(3, e.RowIndex).Value.ToString
  479. 賒帳_tb.Text = 控制表_dgv(19, e.RowIndex).Value.ToString
  480. 出險公司_tb.Text = 控制表_dgv(11, e.RowIndex).Value.ToString : 車型_tb.Text = 控制表_dgv(1, e.RowIndex).Value.ToString
  481. 年_tb.Text = 控制表_dgv(2, e.RowIndex).Value.ToString : 輪胎尺寸_tb.Text = 控制表_dgv(6, e.RowIndex).Value.ToString
  482. SQL_車輛銷售管理_車號備註查詢()
  483. If dr.Read() Then : 備註1_tb.Text = dr("備註").ToString : End If
  484. conn.Close()
  485. If (控制表_dgv(20, e.RowIndex).Value) Is Nothing OrElse IsDBNull(控制表_dgv(20, e.RowIndex).Value) Then
  486. ' 如果成本為 NULL,設置為 0
  487. 現金_tb.Text = "0"
  488. Else
  489. 現金_tb.Text = Strings.Format(Val(控制表_dgv(20, e.RowIndex).Value), "#,##0")
  490. End If
  491. If (控制表_dgv(12, e.RowIndex).Value) Is Nothing OrElse IsDBNull(控制表_dgv(12, e.RowIndex).Value) Then
  492. ' 如果成本為 NULL,設置為 0
  493. 支票_tb.Text = "0"
  494. Else
  495. 支票_tb.Text = Strings.Format(Val(控制表_dgv(12, e.RowIndex).Value), "#,##0")
  496. End If
  497. If (控制表_dgv(13, e.RowIndex).Value) Is Nothing OrElse IsDBNull(控制表_dgv(13, e.RowIndex).Value) Then
  498. ' 如果成本為 NULL,設置為 0
  499. 信用卡_tb.Text = "0"
  500. Else
  501. 信用卡_tb.Text = Strings.Format(Val(控制表_dgv(13, e.RowIndex).Value), "#,##0")
  502. End If
  503. Dim 現金, 支票, 信用卡 As Double
  504. If Double.TryParse(現金_tb.Text, 現金) AndAlso Double.TryParse(支票_tb.Text, 支票) AndAlso Double.TryParse(信用卡_tb.Text, 信用卡) Then
  505. 全部_tb.Text = (現金 + 支票 + 信用卡).ToString()
  506. End If
  507. If 控制表_dgv(24, e.RowIndex).Value IsNot DBNull.Value Then
  508. 是否收稅_cb.Checked = 控制表_dgv(24, e.RowIndex).Value
  509. Else
  510. 是否收稅_cb.Checked = False
  511. End If
  512. Dim value As String = 控制表_dgv(14, e.RowIndex).Value.ToString
  513. Dim value1 As String = 控制表_dgv(23, e.RowIndex).Value.ToString
  514. Dim value2 As String = 控制表_dgv(4, e.RowIndex).Value.ToString
  515. If value1.Length < 5 Then
  516. 應驗車日_dtp.Format = DateTimePickerFormat.Custom : 應驗車日_dtp.CustomFormat = " "
  517. Else
  518. 應驗車日_dtp.Text = 控制表_dgv(23, e.RowIndex).Value.ToString
  519. 應驗車日_dtp.CustomFormat = "yyyy/MM/dd"
  520. 應驗車日_dtp.Format = DateTimePickerFormat.Custom
  521. End If
  522. If value2.Length < 5 Then
  523. 入廠日期_dtp.Format = DateTimePickerFormat.Custom : 入廠日期_dtp.CustomFormat = " "
  524. Else
  525. 入廠日期_dtp.Text = 控制表_dgv(4, e.RowIndex).Value.ToString
  526. 入廠日期_dtp.CustomFormat = "yyyy/MM/dd"
  527. 入廠日期_dtp.Format = DateTimePickerFormat.Custom
  528. End If
  529. End If
  530. 流水號_tb.Text = "" : Set_清單3()
  531. End If
  532. If 車廠型態 = True Then
  533. If 登入人級別 <> "00" Then
  534. If 已交車_cb.Checked = True Then
  535. 修改_bt.Enabled = False : 刪除_bt.Enabled = False : 查詢1_bt.Enabled = False : 查詢2_bt.Enabled = False
  536. 收支單中新增一筆資料_bt.Enabled = False : 收支單中新增一筆空白資料_bt.Enabled = False : 刪除選中的一筆資料_bt.Enabled = False
  537. 申請_bt.Enabled = False
  538. Else
  539. 修改_bt.Enabled = True : 刪除_bt.Enabled = True : 查詢1_bt.Enabled = True : 查詢2_bt.Enabled = True
  540. 收支單中新增一筆資料_bt.Enabled = True : 收支單中新增一筆空白資料_bt.Enabled = True : 刪除選中的一筆資料_bt.Enabled = True
  541. 申請_bt.Enabled = True
  542. End If
  543. End If
  544. End If
  545. boo1 = False
  546. End Sub
  547. Private Sub 刪除_bt_Click(sender As Object, e As EventArgs) Handles 刪除_bt.Click
  548. 新增_bt.Enabled = True : 確認新增_bt.Enabled = False
  549. SQL_車輛銷售管理_控制表刪除() : SQL_車輛銷售管理_明細表刪除() : SQL_車輛銷售管理_倉儲明細表刪除() : conn.Close() : MsgBox("刪除成功") : Set_清單1() : Set_清單3()
  550. 單號_tb.Text = "" : 廠牌_tb.Text = ""
  551. 年分_tb.Text = "" : 引擎_tb.Text = ""
  552. 買入牌照號碼_tb.Text = ""
  553. 買入顏色_tb.Text = "" : 買入車主名稱_tb.Text = ""
  554. 買入車主電話_tb.Text = "" : 買入車主地址_tb.Text = ""
  555. 進價_tb.Text = "" : 買入經手人_tb.Text = ""
  556. 支出合計_tb.Text = "" : 總成本_tb.Text = ""
  557. 賣出牌照號碼_tb.Text = ""
  558. 賣出顏色_tb.Text = "" : 賣出車主名稱_tb.Text = ""
  559. 賣出車主電話_tb.Text = "" : 賣出車主地址_tb.Text = ""
  560. 售價_tb.Text = "" : 賣出經手人_tb.Text = ""
  561. 備註_tb.Text = "" : 引擎號碼1_tb.Text = ""
  562. 進廠里程_tb.Text = "" : 出廠里程_tb.Text = ""
  563. 檢測日期_dtp.CustomFormat = "yyyy/MM/dd"
  564. 檢測日期_dtp.Format = DateTimePickerFormat.Custom
  565. 檢測日期_dtp.Value = Today
  566. 買入日期_dtp.CustomFormat = "yyyy/MM/dd"
  567. 買入日期_dtp.Format = DateTimePickerFormat.Custom
  568. 買入日期_dtp.Value = Today
  569. 賣出日期_dtp.CustomFormat = "yyyy/MM/dd"
  570. 賣出日期_dtp.Format = DateTimePickerFormat.Custom
  571. 賣出日期_dtp.Value = Today
  572. 料號_tb.Text = "" : 品名.Text = "" : 成本.Text = "" : 總利潤_tb.Text = "" : 已交車_cb.Checked = False : 狀態_tb.Text = ""
  573. 出險公司_tb.Text = "" : 車主名稱_tb.Text = "" : 車號_tb.Text = "" : 地址_tb.Text = "" : 電話_tb.Text = ""
  574. 車型_tb.Text = "" : 保養預示_tb.Text = "" : 里程_tb.Text = "" : 廠牌_tb.Text = "" : 廠牌_tb.Text = ""
  575. 應驗車日_dtp.Format = DateTimePickerFormat.Custom : 應驗車日_dtp.CustomFormat = " "
  576. 工資_tb.Text = "" : 零件_tb.Text = "" : 總計_tb.Text = "" : 稅金_tb.Text = ""
  577. 信用卡_tb.Text = "" : 應收合計_tb.Text = "" : 賒帳_tb.Text = "" : 支票_tb.Text = ""
  578. 現金_tb.Text = "" : 年_tb.Text = "" : 輪胎尺寸_tb.Text = "" : 備註1_tb.Text = ""
  579. End Sub
  580. Private Sub 檢測日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 檢測日期_dtp.MouseDown
  581. 檢測日期_dtp.CustomFormat = "yyyy/MM/dd"
  582. 檢測日期_dtp.Format = DateTimePickerFormat.Custom
  583. End Sub
  584. Private Sub 買入日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 買入日期_dtp.MouseDown
  585. 買入日期_dtp.CustomFormat = "yyyy/MM/dd"
  586. 買入日期_dtp.Format = DateTimePickerFormat.Custom
  587. End Sub
  588. Private Sub 賣出日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 賣出日期_dtp.MouseDown
  589. 賣出日期_dtp.CustomFormat = "yyyy/MM/dd"
  590. 賣出日期_dtp.Format = DateTimePickerFormat.Custom
  591. End Sub
  592. Private Sub 入廠日期_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 入廠日期_dtp.MouseDown
  593. 入廠日期_dtp.CustomFormat = "yyyy/MM/dd"
  594. 入廠日期_dtp.Format = DateTimePickerFormat.Custom
  595. End Sub
  596. Private Sub 應驗車日_dtp_ValueChanged(sender As Object, e As EventArgs) Handles 應驗車日_dtp.MouseDown
  597. 應驗車日_dtp.CustomFormat = "yyyy/MM/dd"
  598. 應驗車日_dtp.Format = DateTimePickerFormat.Custom
  599. End Sub
  600. Private Sub 利潤率_ValueChanged(sender As Object, e As EventArgs) Handles 利潤率.ValueChanged
  601. If 售價_tb.Text <> "" And 進價_tb.Text <> "" And 總成本_tb.Text <> "" Then
  602. Dim d1, d2, d4 As Integer
  603. Dim d3 As Double
  604. Dim s1 As String = 進價_tb.Text
  605. Dim s2 As String = 總成本_tb.Text
  606. Dim s4 As String = 售價_tb.Text
  607. s1 = s1.Replace(",", "")
  608. s2 = s2.Replace(",", "")
  609. s4 = s4.Replace(",", "")
  610. d1 = Integer.Parse(s1)
  611. d2 = Integer.Parse(s2)
  612. d4 = Integer.Parse(s4)
  613. d3 = 利潤率.Value
  614. 總利潤_tb.Text = ((d1 + d2) * d3 / 100).ToString("#,##0")
  615. If boo1 = True Then
  616. 總利潤_tb.Text = (d4 - (d1 + d2)).ToString("#,##0")
  617. Else
  618. 售價_tb.Text = (d1 + d2 + ((d1 + d2) * d3 / 100)).ToString("#,##0")
  619. End If
  620. End If
  621. End Sub
  622. Private Sub 進價_tb_TextChanged(sender As Object, e As EventArgs) Handles 進價_tb.TextChanged
  623. If 售價_tb.Text <> "" And 進價_tb.Text <> "" And 總成本_tb.Text <> "" Then
  624. Dim d1, d2, d4 As Integer
  625. Dim d3 As Double
  626. Dim s1 As String = 進價_tb.Text
  627. Dim s2 As String = 總成本_tb.Text
  628. Dim s4 As String = 售價_tb.Text
  629. s1 = s1.Replace(",", "")
  630. s2 = s2.Replace(",", "")
  631. s4 = s4.Replace(",", "")
  632. d1 = Integer.Parse(s1)
  633. d2 = Integer.Parse(s2)
  634. d4 = Integer.Parse(s4)
  635. d3 = 利潤率.Value
  636. If boo1 = True Then
  637. 總利潤_tb.Text = (d4 - (d1 + d2)).ToString("#,##0")
  638. Else
  639. 總利潤_tb.Text = ((d1 + d2) * d3 / 100).ToString("#,##0")
  640. 售價_tb.Text = (d1 + d2 + ((d1 + d2) * d3 / 100)).ToString("#,##0")
  641. End If
  642. End If
  643. End Sub
  644. Private Sub 售價_tb_TextChanged(sender As Object, e As EventArgs) Handles 售價_tb.TextChanged
  645. If 售價_tb.Text <> "" And 進價_tb.Text <> "" And 總成本_tb.Text <> "" Then
  646. Dim d, d1, d2, d3 As Integer
  647. Dim s As String = 售價_tb.Text
  648. Dim s1 As String = 進價_tb.Text
  649. Dim s2 As String = 總成本_tb.Text
  650. s = s.Replace(",", "")
  651. s1 = s1.Replace(",", "")
  652. s2 = s2.Replace(",", "")
  653. d = Integer.Parse(s)
  654. d1 = Integer.Parse(s1)
  655. d2 = Integer.Parse(s2)
  656. d3 = d - (d1 + d2)
  657. If boo1 = True Then
  658. Else
  659. 總利潤_tb.Text = d3.ToString("#,##0")
  660. End If
  661. End If
  662. End Sub
  663. Private Sub 售價_tb_Leave(sender As Object, e As EventArgs) Handles 售價_tb.Leave
  664. boo1 = True
  665. If Not String.IsNullOrEmpty(售價_tb.Text) AndAlso IsNumeric(售價_tb.Text) Then
  666. ' 將文本轉換為數字
  667. Dim number As Double = CDbl(售價_tb.Text)
  668. ' 格式化數字為千分位
  669. 售價_tb.Text = number.ToString("#,##0")
  670. End If
  671. Dim d, d1, d2, d3 As Integer
  672. Dim s As String = 售價_tb.Text
  673. Dim s1 As String = 進價_tb.Text
  674. Dim s2 As String = 總成本_tb.Text
  675. s = s.Replace(",", "")
  676. s1 = s1.Replace(",", "")
  677. s2 = s2.Replace(",", "")
  678. d = Integer.Parse(s)
  679. d1 = Integer.Parse(s1)
  680. d2 = Integer.Parse(s2)
  681. d3 = d - (d1 + d2)
  682. Dim ratio As Double = (d3 / (d1 + d2)) * 100
  683. Dim roundedRatio As Double = Math.Round(ratio, 1)
  684. If roundedRatio < 0 Then
  685. 利潤率.Value = 0
  686. ElseIf roundedRatio > 1000 Then
  687. 利潤率.Value = 1000
  688. Else
  689. 利潤率.Value = roundedRatio
  690. End If
  691. End Sub
  692. Private Sub 進價_tb_Leave(sender As Object, e As EventArgs) Handles 進價_tb.Leave
  693. If Not String.IsNullOrEmpty(進價_tb.Text) AndAlso IsNumeric(進價_tb.Text) Then
  694. ' 將文本轉換為數字
  695. Dim number As Double = CDbl(進價_tb.Text)
  696. ' 格式化數字為千分位
  697. 進價_tb.Text = number.ToString("#,##0")
  698. End If
  699. End Sub
  700. Private Sub 售價_tb_KeyPress(sender As Object, e As KeyPressEventArgs) Handles 售價_tb.KeyPress
  701. ' 檢查輸入的字符是否為數字或允許的其他字符(如小數點、負號、刪除鍵)
  702. If Not Char.IsDigit(e.KeyChar) AndAlso e.KeyChar <> "." AndAlso e.KeyChar <> "-" AndAlso e.KeyChar <> ChrW(Keys.Back) Then
  703. ' 如果輸入的字符不是數字或允許的字符,取消該字符輸入
  704. e.Handled = True
  705. End If
  706. End Sub
  707. Private Sub 售價_tb_LostFocus(sender As Object, e As EventArgs) Handles 售價_tb.LostFocus
  708. ' 檢查文本框的值是否為空
  709. If String.IsNullOrWhiteSpace(售價_tb.Text) Then
  710. ' 如果為空,將其設置為0
  711. 售價_tb.Text = "0"
  712. End If
  713. End Sub
  714. Private Sub 進價_tb_LostFocus(sender As Object, e As EventArgs) Handles 進價_tb.LostFocus
  715. ' 檢查文本框的值是否為空
  716. If String.IsNullOrWhiteSpace(進價_tb.Text) Then
  717. ' 如果為空,將其設置為0
  718. 進價_tb.Text = "0"
  719. End If
  720. End Sub
  721. Private Sub 進價_tb_KeyPress(sender As Object, e As KeyPressEventArgs) Handles 進價_tb.KeyPress
  722. ' 檢查輸入的字符是否為數字或允許的其他字符(如小數點、負號、刪除鍵)
  723. If Not Char.IsDigit(e.KeyChar) AndAlso e.KeyChar <> "." AndAlso e.KeyChar <> "-" AndAlso e.KeyChar <> ChrW(Keys.Back) Then
  724. ' 如果輸入的字符不是數字或允許的字符,取消該字符輸入
  725. e.Handled = True
  726. End If
  727. End Sub
  728. Private Sub 現金_tb_Leave(sender As Object, e As EventArgs) Handles 現金_tb.Leave
  729. If Not String.IsNullOrEmpty(現金_tb.Text) AndAlso IsNumeric(現金_tb.Text) Then
  730. ' 將文本轉換為數字
  731. Dim number As Double = CDbl(現金_tb.Text)
  732. ' 格式化數字為千分位
  733. 現金_tb.Text = number.ToString("#,##0")
  734. Dim 現金, 支票, 信用卡 As Double
  735. If Double.TryParse(現金_tb.Text, 現金) AndAlso Double.TryParse(支票_tb.Text, 支票) AndAlso Double.TryParse(信用卡_tb.Text, 信用卡) Then
  736. 全部_tb.Text = (現金 + 支票 + 信用卡).ToString()
  737. End If
  738. End If
  739. End Sub
  740. Private Sub 現金_tb_LostFocus(sender As Object, e As EventArgs) Handles 現金_tb.LostFocus
  741. ' 檢查文本框的值是否為空
  742. If String.IsNullOrWhiteSpace(現金_tb.Text) Then
  743. ' 如果為空,將其設置為0
  744. 現金_tb.Text = "0"
  745. End If
  746. End Sub
  747. Private Sub 現金_tb_KeyPress(sender As Object, e As KeyPressEventArgs) Handles 現金_tb.KeyPress
  748. ' 檢查輸入的字符是否為數字或允許的其他字符(如小數點、負號、刪除鍵)
  749. If Not Char.IsDigit(e.KeyChar) AndAlso e.KeyChar <> "." AndAlso e.KeyChar <> "-" AndAlso e.KeyChar <> ChrW(Keys.Back) Then
  750. ' 如果輸入的字符不是數字或允許的字符,取消該字符輸入
  751. e.Handled = True
  752. End If
  753. End Sub
  754. Private Sub 信用卡_tb_Leave(sender As Object, e As EventArgs) Handles 信用卡_tb.Leave
  755. If Not String.IsNullOrEmpty(信用卡_tb.Text) AndAlso IsNumeric(信用卡_tb.Text) Then
  756. ' 將文本轉換為數字
  757. Dim number As Double = CDbl(信用卡_tb.Text)
  758. ' 格式化數字為千分位
  759. 信用卡_tb.Text = number.ToString("#,##0")
  760. Dim 現金, 支票, 信用卡 As Double
  761. If Double.TryParse(現金_tb.Text, 現金) AndAlso Double.TryParse(支票_tb.Text, 支票) AndAlso Double.TryParse(信用卡_tb.Text, 信用卡) Then
  762. 全部_tb.Text = (現金 + 支票 + 信用卡).ToString()
  763. End If
  764. End If
  765. End Sub
  766. Private Sub 信用卡_tb_LostFocus(sender As Object, e As EventArgs) Handles 信用卡_tb.LostFocus
  767. ' 檢查文本框的值是否為空
  768. If String.IsNullOrWhiteSpace(信用卡_tb.Text) Then
  769. ' 如果為空,將其設置為0
  770. 信用卡_tb.Text = "0"
  771. End If
  772. End Sub
  773. Private Sub 信用卡_tb_KeyPress(sender As Object, e As KeyPressEventArgs) Handles 信用卡_tb.KeyPress
  774. ' 檢查輸入的字符是否為數字或允許的其他字符(如小數點、負號、刪除鍵)
  775. If Not Char.IsDigit(e.KeyChar) AndAlso e.KeyChar <> "." AndAlso e.KeyChar <> "-" AndAlso e.KeyChar <> ChrW(Keys.Back) Then
  776. ' 如果輸入的字符不是數字或允許的字符,取消該字符輸入
  777. e.Handled = True
  778. End If
  779. End Sub
  780. Private Sub 賒帳_tb_Leave(sender As Object, e As EventArgs) Handles 賒帳_tb.Leave
  781. If Not String.IsNullOrEmpty(賒帳_tb.Text) AndAlso IsNumeric(賒帳_tb.Text) Then
  782. ' 將文本轉換為數字
  783. Dim number As Double = CDbl(賒帳_tb.Text)
  784. ' 格式化數字為千分位
  785. 賒帳_tb.Text = number.ToString("#,##0")
  786. End If
  787. End Sub
  788. Private Sub 賒帳_tb_LostFocus(sender As Object, e As EventArgs) Handles 賒帳_tb.LostFocus
  789. ' 檢查文本框的值是否為空
  790. If String.IsNullOrWhiteSpace(賒帳_tb.Text) Then
  791. ' 如果為空,將其設置為0
  792. 賒帳_tb.Text = "0"
  793. End If
  794. End Sub
  795. Private Sub 賒帳_tb_KeyPress(sender As Object, e As KeyPressEventArgs) Handles 賒帳_tb.KeyPress
  796. ' 檢查輸入的字符是否為數字或允許的其他字符(如小數點、負號、刪除鍵)
  797. If Not Char.IsDigit(e.KeyChar) AndAlso e.KeyChar <> "." AndAlso e.KeyChar <> "-" AndAlso e.KeyChar <> ChrW(Keys.Back) Then
  798. ' 如果輸入的字符不是數字或允許的字符,取消該字符輸入
  799. e.Handled = True
  800. End If
  801. End Sub
  802. Private Sub 支票_tb_Leave(sender As Object, e As EventArgs) Handles 支票_tb.Leave
  803. If Not String.IsNullOrEmpty(支票_tb.Text) AndAlso IsNumeric(支票_tb.Text) Then
  804. ' 將文本轉換為數字
  805. Dim number As Double = CDbl(支票_tb.Text)
  806. ' 格式化數字為千分位
  807. 支票_tb.Text = number.ToString("#,##0")
  808. Dim 現金, 支票, 信用卡 As Double
  809. If Double.TryParse(現金_tb.Text, 現金) AndAlso Double.TryParse(支票_tb.Text, 支票) AndAlso Double.TryParse(信用卡_tb.Text, 信用卡) Then
  810. 全部_tb.Text = (現金 + 支票 + 信用卡).ToString()
  811. End If
  812. End If
  813. End Sub
  814. Private Sub 支票_tb_LostFocus(sender As Object, e As EventArgs) Handles 支票_tb.LostFocus
  815. ' 檢查文本框的值是否為空
  816. If String.IsNullOrWhiteSpace(支票_tb.Text) Then
  817. ' 如果為空,將其設置為0
  818. 支票_tb.Text = "0"
  819. End If
  820. End Sub
  821. Private Sub 支票_tb_KeyPress(sender As Object, e As KeyPressEventArgs) Handles 支票_tb.KeyPress
  822. ' 檢查輸入的字符是否為數字或允許的其他字符(如小數點、負號、刪除鍵)
  823. If Not Char.IsDigit(e.KeyChar) AndAlso e.KeyChar <> "." AndAlso e.KeyChar <> "-" AndAlso e.KeyChar <> ChrW(Keys.Back) Then
  824. ' 如果輸入的字符不是數字或允許的字符,取消該字符輸入
  825. e.Handled = True
  826. End If
  827. End Sub
  828. Private Sub 修改_bt_Click(sender As Object, e As EventArgs) Handles 修改_bt.Click
  829. If 買入車主名稱_tb.Text <> "" And 買入牌照號碼_tb.Text <> "" Then
  830. SQL_車輛銷售管理_查詢客戶資料()
  831. If dr.Read() Then
  832. SQL_車輛銷售管理_修改客戶資料()
  833. Else
  834. SQL_客戶資料表_最後一筆資料()
  835. If dr.Read() Then : 供應商編號_tb.Text = dr("流水號").ToString : Else : 供應商編號_tb.Text = "CL00000" : End If
  836. conn.Close()
  837. Dim NUM1 As Integer
  838. NUM1 = Double.Parse(Strings.Right(供應商編號_tb.Text, 5)) + 1
  839. If NUM1 < 10 Then : 供應商編號_tb.Text = "CL" & "0000" & NUM1
  840. ElseIf NUM1 > 9 And NUM1 < 100 Then : 供應商編號_tb.Text = "CL" & "000" & NUM1
  841. ElseIf NUM1 > 99 And NUM1 < 1000 Then : 供應商編號_tb.Text = "CL" & "00" & NUM1
  842. ElseIf NUM1 > 999 And NUM1 < 10000 Then : 供應商編號_tb.Text = "CL" & "0" & NUM1
  843. ElseIf NUM1 > 9999 And NUM1 < 100000 Then : 供應商編號_tb.Text = "CL" & NUM1 : End If
  844. SQL_車輛銷售管理_新增客戶資料() : conn.Close()
  845. End If
  846. End If
  847. If 賣出車主名稱_tb.Text <> "" And 賣出牌照號碼_tb.Text <> "" Then
  848. SQL_車輛銷售管理_查詢客戶資料1()
  849. If dr.Read() Then
  850. SQL_車輛銷售管理_修改客戶資料1()
  851. Else
  852. SQL_客戶資料表_最後一筆資料()
  853. If dr.Read() Then : 供應商編號_tb.Text = dr("流水號").ToString : Else : 供應商編號_tb.Text = "CL00000" : End If
  854. conn.Close()
  855. Dim NUM1 As Integer
  856. NUM1 = Double.Parse(Strings.Right(供應商編號_tb.Text, 5)) + 1
  857. If NUM1 < 10 Then : 供應商編號_tb.Text = "CL" & "0000" & NUM1
  858. ElseIf NUM1 > 9 And NUM1 < 100 Then : 供應商編號_tb.Text = "CL" & "000" & NUM1
  859. ElseIf NUM1 > 99 And NUM1 < 1000 Then : 供應商編號_tb.Text = "CL" & "00" & NUM1
  860. ElseIf NUM1 > 999 And NUM1 < 10000 Then : 供應商編號_tb.Text = "CL" & "0" & NUM1
  861. ElseIf NUM1 > 9999 And NUM1 < 100000 Then : 供應商編號_tb.Text = "CL" & NUM1 : End If
  862. SQL_車輛銷售管理_新增客戶資料1() : conn.Close()
  863. End If
  864. End If
  865. If 車主名稱_tb.Text <> "" And 車號_tb.Text <> "" Then
  866. SQL_車輛銷售管理_查詢客戶資料()
  867. If dr.Read() Then
  868. SQL_車輛銷售管理_修改客戶資料()
  869. Else
  870. SQL_客戶資料表_最後一筆資料()
  871. If dr.Read() Then : 供應商編號_tb.Text = dr("流水號").ToString : Else : 供應商編號_tb.Text = "CL00000" : End If
  872. conn.Close()
  873. Dim NUM1 As Integer
  874. NUM1 = Double.Parse(Strings.Right(供應商編號_tb.Text, 5)) + 1
  875. If NUM1 < 10 Then : 供應商編號_tb.Text = "CL" & "0000" & NUM1
  876. ElseIf NUM1 > 9 And NUM1 < 100 Then : 供應商編號_tb.Text = "CL" & "000" & NUM1
  877. ElseIf NUM1 > 99 And NUM1 < 1000 Then : 供應商編號_tb.Text = "CL" & "00" & NUM1
  878. ElseIf NUM1 > 999 And NUM1 < 10000 Then : 供應商編號_tb.Text = "CL" & "0" & NUM1
  879. ElseIf NUM1 > 9999 And NUM1 < 100000 Then : 供應商編號_tb.Text = "CL" & NUM1 : End If
  880. SQL_車輛銷售管理_新增客戶資料() : conn.Close()
  881. End If
  882. End If
  883. SQL_車輛銷售管理_控制表修改() : conn.Close() : MsgBox("儲存成功!!") : Set_清單1()
  884. If 登入人級別 <> "00" Then
  885. If 已交車_cb.Checked = True Then
  886. 修改_bt.Enabled = False : 刪除_bt.Enabled = False : 查詢1_bt.Enabled = False : 查詢2_bt.Enabled = False
  887. 收支單中新增一筆資料_bt.Enabled = False : 收支單中新增一筆空白資料_bt.Enabled = False : 刪除選中的一筆資料_bt.Enabled = False
  888. 申請_bt.Enabled = False
  889. Else
  890. 修改_bt.Enabled = True : 刪除_bt.Enabled = True : 查詢1_bt.Enabled = True : 查詢2_bt.Enabled = True
  891. 收支單中新增一筆資料_bt.Enabled = True : 收支單中新增一筆空白資料_bt.Enabled = True : 刪除選中的一筆資料_bt.Enabled = True
  892. 申請_bt.Enabled = True
  893. End If
  894. End If
  895. End Sub
  896. Private Sub 收支單中新增一筆空白資料_bt_Click(sender As Object, e As EventArgs) Handles 收支單中新增一筆空白資料_bt.Click
  897. If 單號_tb.Text = "" Then
  898. MsgBox("未選擇單號!!")
  899. Else
  900. Set_流水號() : PA = 單號_tb.Text
  901. SQL_車輛銷售管理_查詢最後一筆單號項次() : PA = ""
  902. If dr.Read() Then : 新項次 = dr("項次") : Else : 新項次 = "00" : End If : conn.Close()
  903. NUM1 = Double.Parse(新項次) + 1
  904. If NUM1 < 10 Then : 新項次 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 99 Then : 新項次 = NUM1 : End If
  905. PA15 = 新項次
  906. SQL_車輛銷售管理_新增明細表() : conn.Close()
  907. Set_清單3()
  908. MsgBox("明細表新增成功!!")
  909. End If
  910. End Sub
  911. Private Sub 收支單中新增一筆空白資料1_bt_Click(sender As Object, e As EventArgs) Handles 收支單中新增一筆空白資料1_bt.Click
  912. For i As Integer = 0 To 明細表1_dgv.Rows.Count - 1
  913. PA1 = 明細表1_dgv.Rows(i).Cells("各項支出名稱").Value.ToString : PA2 = 明細表1_dgv.Rows(i).Cells("數量").Value.ToString : PA3 = 明細表1_dgv.Rows(i).Cells("售價").Value
  914. PA4 = 明細表1_dgv.Rows(i).Cells("備註").Value.ToString : PA5 = 明細表1_dgv.Rows(i).Cells("料號").Value.ToString : PA6 = 明細表1_dgv.Rows(i).Cells("項次").Value.ToString
  915. PA10 = 明細表1_dgv.Rows(i).Cells("流水號").Value.ToString : PA8 = 明細表1_dgv.Rows(i).Cells("成本").Value.ToString : BL3 = 明細表1_dgv.Rows(i).Cells("已儲存").Value
  916. PA7 = 明細表1_dgv.Rows(i).Cells("狀態").Value.ToString
  917. SQL_車輛銷售管理_修改明細表() : conn.Close()
  918. If PA7 = "物料" Then
  919. If BL3 = 0 Then
  920. Set_日期格式轉換()
  921. Set_流水號1()
  922. SQL_車輛銷售管理_新增倉儲明細表() : conn.Close()
  923. Else
  924. SQL_車輛銷售管理_修改倉儲明細表() : conn.Close()
  925. End If
  926. End If
  927. Next
  928. If 單號_tb.Text = "" Then
  929. MsgBox("未選擇單號!!")
  930. Else
  931. Set_流水號() : PA = 單號_tb.Text
  932. SQL_車輛銷售管理_查詢最後一筆單號項次() : PA = ""
  933. If dr.Read() Then : 新項次 = dr("項次") : Else : 新項次 = "00" : End If : conn.Close()
  934. NUM1 = Double.Parse(新項次) + 1
  935. If NUM1 < 10 Then : 新項次 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 99 Then : 新項次 = NUM1 : End If
  936. PA15 = 新項次
  937. SQL_車輛銷售管理_新增明細表() : conn.Close()
  938. Set_清單3()
  939. MsgBox("明細表新增成功!!")
  940. End If
  941. End Sub
  942. Private Sub Set_流水號()
  943. conn.Close() : dr.Close()
  944. Dim NUM1 As Integer
  945. For NUM1 = 0 To 999
  946. Dim d As String : Dim f As String
  947. Dim selectedDate As DateTime = 選擇日期_dtp.Value
  948. Dim y As String = selectedDate.Year.ToString().Substring(2, 2)
  949. If selectedDate.Month < 10 Then : d = "0" & selectedDate.Month.ToString()
  950. Else : d = selectedDate.Month.ToString()
  951. End If
  952. If selectedDate.Day < 10 Then : f = "0" & selectedDate.Day.ToString()
  953. Else : f = selectedDate.Day.ToString()
  954. End If
  955. If NUM1 < 10 Then : 新流水1 = "C" & y & d & f & "00" & NUM1
  956. ElseIf NUM1 > 9 And NUM1 < 100 Then : 新流水1 = "C" & y & d & f & "0" & NUM1
  957. ElseIf NUM1 > 99 Then : 新流水1 = "C" & y & d & f & NUM1
  958. End If : PA19 = 新流水1
  959. SQL_車輛銷售管理_查詢明細表流水號()
  960. If dr.Read() Then : conn.Close() : Else : conn.Close() : NUM1 = 999 : End If
  961. Next
  962. End Sub
  963. Private Sub 刪除選中的一筆資料_bt_Click(sender As Object, e As EventArgs) Handles 刪除選中的一筆資料_bt.Click
  964. If 流水號_tb.Text = "" Then
  965. MsgBox("未選擇需要刪除的資料。")
  966. Else
  967. TextBox1.Text = "0"
  968. SQL_車輛銷售管理_刪除倉儲明細表() : conn.Close()
  969. SQL_車輛銷售管理_刪除明細表項次() : conn.Close()
  970. Set_清單3()
  971. Dim NUM1 As Integer = 0
  972. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  973. PA17 = 明細表_dgv.Rows(i).Cells("項次").Value
  974. NUM1 += 1 : If NUM1 < 10 Then : 新項次 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 99 Then : 新項次 = NUM1 : End If
  975. PA18 = 新項次
  976. SQL_車輛銷售管理_修改明細表項次() : conn.Close()
  977. Next
  978. Set_清單3() : 流水號_tb.Text = ""
  979. Dim NUM2, NUM3 As Integer
  980. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  981. NUM2 += 明細表_dgv.Rows(i).Cells("總售價").Value
  982. NUM3 += 明細表_dgv.Rows(i).Cells("總成本").Value
  983. Next
  984. 支出合計_tb.Text = Strings.Format(Val(NUM2), "#,##0")
  985. 總成本_tb.Text = Strings.Format(Val(NUM3), "#,##0")
  986. MsgBox("刪除成功。")
  987. Dim d1, d2, d4 As Integer
  988. Dim d3 As Double
  989. Dim s1 As String = 進價_tb.Text
  990. Dim s2 As String = 總成本_tb.Text
  991. Dim s4 As String = 售價_tb.Text
  992. s1 = s1.Replace(",", "")
  993. s2 = s2.Replace(",", "")
  994. s4 = s4.Replace(",", "")
  995. d1 = Integer.Parse(s1)
  996. d2 = Integer.Parse(s2)
  997. d4 = Integer.Parse(s4)
  998. d3 = 利潤率.Value
  999. 總利潤_tb.Text = ((d1 + d2) * d3 / 100).ToString("#,##0")
  1000. If boo1 = True Then
  1001. 總利潤_tb.Text = (d4 - (d1 + d2)).ToString("#,##0")
  1002. Else
  1003. 售價_tb.Text = (d1 + d2 + ((d1 + d2) * d3 / 100)).ToString("#,##0")
  1004. End If
  1005. End If
  1006. End Sub
  1007. Private Sub 刪除選中的一筆資料1_bt_Click(sender As Object, e As EventArgs) Handles 刪除選中的一筆資料1_bt.Click
  1008. If 流水號_tb.Text = "" Then
  1009. MsgBox("未選擇需要刪除的資料。")
  1010. Else
  1011. 庫存量1.Text = "0"
  1012. SQL_車輛銷售管理_刪除倉儲明細表() : conn.Close()
  1013. SQL_車輛銷售管理_刪除明細表項次() : conn.Close()
  1014. Set_清單3()
  1015. Dim NUM1 As Integer = 0
  1016. For i As Integer = 0 To 明細表1_dgv.Rows.Count - 1
  1017. PA17 = 明細表1_dgv.Rows(i).Cells("項次").Value
  1018. NUM1 += 1 : If NUM1 < 10 Then : 新項次 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 99 Then : 新項次 = NUM1 : End If
  1019. PA18 = 新項次
  1020. SQL_車輛銷售管理_修改明細表項次() : conn.Close()
  1021. Next
  1022. Set_清單3() : 流水號_tb.Text = ""
  1023. MsgBox("刪除成功。")
  1024. End If
  1025. End Sub
  1026. Private Sub 申請_bt_Click(sender As Object, e As EventArgs) Handles 申請_bt.Click
  1027. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  1028. PA1 = 明細表_dgv.Rows(i).Cells("各項支出名稱").Value.ToString : PA2 = 明細表_dgv.Rows(i).Cells("數量").Value.ToString : PA3 = 明細表_dgv.Rows(i).Cells("售價").Value
  1029. PA4 = 明細表_dgv.Rows(i).Cells("備註").Value.ToString : PA5 = 明細表_dgv.Rows(i).Cells("料號").Value.ToString : PA6 = 明細表_dgv.Rows(i).Cells("項次").Value.ToString
  1030. PA10 = 明細表_dgv.Rows(i).Cells("流水號").Value.ToString : PA8 = 明細表_dgv.Rows(i).Cells("成本").Value.ToString : BL3 = 明細表_dgv.Rows(i).Cells("已儲存").Value
  1031. PA7 = 明細表_dgv.Rows(i).Cells("狀態").Value.ToString
  1032. SQL_車輛銷售管理_修改明細表() : conn.Close()
  1033. If PA7 = "物料" Then
  1034. If BL3 = 0 Then
  1035. Set_日期格式轉換()
  1036. Set_流水號1()
  1037. SQL_車輛銷售管理_新增倉儲明細表() : conn.Close()
  1038. End If
  1039. End If
  1040. Next : Set_清單3() : MsgBox("儲存成功。")
  1041. End Sub
  1042. Private Sub 申請1_bt_Click(sender As Object, e As EventArgs) Handles 申請1_bt.Click
  1043. For i As Integer = 0 To 明細表1_dgv.Rows.Count - 1
  1044. PA1 = 明細表1_dgv.Rows(i).Cells("各項支出名稱").Value.ToString : PA2 = 明細表1_dgv.Rows(i).Cells("數量").Value.ToString : PA3 = 明細表1_dgv.Rows(i).Cells("售價").Value
  1045. PA4 = 明細表1_dgv.Rows(i).Cells("備註").Value.ToString : PA5 = 明細表1_dgv.Rows(i).Cells("料號").Value.ToString : PA6 = 明細表1_dgv.Rows(i).Cells("項次").Value.ToString
  1046. PA10 = 明細表1_dgv.Rows(i).Cells("流水號").Value.ToString : PA8 = 明細表1_dgv.Rows(i).Cells("成本").Value.ToString : BL3 = 明細表1_dgv.Rows(i).Cells("已儲存").Value
  1047. PA7 = 明細表1_dgv.Rows(i).Cells("狀態").Value.ToString
  1048. SQL_車輛銷售管理_修改明細表() : conn.Close()
  1049. If PA7 = "物料" Then
  1050. If BL3 = 0 Then
  1051. Set_日期格式轉換()
  1052. Set_流水號1()
  1053. SQL_車輛銷售管理_新增倉儲明細表() : conn.Close()
  1054. Else
  1055. SQL_車輛銷售管理_修改倉儲明細表() : conn.Close()
  1056. End If
  1057. End If
  1058. Next : Set_清單3() : MsgBox("儲存成功。")
  1059. End Sub
  1060. Private Sub Set_流水號1()
  1061. conn.Close() : dr.Close()
  1062. Dim NUM1 As Integer
  1063. For NUM1 = 0 To 999
  1064. Dim d As String : Dim f As String
  1065. Dim selectedDate As DateTime = Today()
  1066. Dim y As String = selectedDate.Year.ToString()
  1067. If selectedDate.Month < 10 Then : d = "0" & selectedDate.Month.ToString()
  1068. Else : d = selectedDate.Month.ToString()
  1069. End If
  1070. If selectedDate.Day < 10 Then : f = "0" & selectedDate.Day.ToString()
  1071. Else : f = selectedDate.Day.ToString()
  1072. End If
  1073. If NUM1 < 10 Then : 新流水1 = "Z" & y & d & f & "00" & NUM1
  1074. ElseIf NUM1 > 9 And NUM1 < 100 Then : 新流水1 = "Z" & y & d & f & "0" & NUM1
  1075. ElseIf NUM1 > 99 Then : 新流水1 = "Z" & y & d & f & NUM1
  1076. End If : PA19 = 新流水1
  1077. SQL_物料入庫系統_查詢入庫明細流水號()
  1078. If dr.Read() Then : conn.Close() : Else : conn.Close() : NUM1 = 999 : End If
  1079. Next
  1080. End Sub
  1081. Private Sub Set_清單4()
  1082. 庫存_dgv.DataSource = Nothing : ds3.Clear()
  1083. 庫存_dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing
  1084. 庫存_dgv.ColumnHeadersHeight = 25
  1085. 庫存_dgv.AllowUserToAddRows = False
  1086. 庫存_dgv.RowTemplate.Height = 30
  1087. If conn.State = ConnectionState.Closed Then : conn.ConnectionString = ConString : conn.Open() : End If
  1088. SQL_車輛銷售管理_查詢庫存量()
  1089. da.Fill(ds3) : 庫存_dgv.DataSource = ds3.Tables(0) : conn.Close()
  1090. N3 = 0
  1091. For i As Integer = 0 To 庫存_dgv.Rows.Count - 1
  1092. N3 += 庫存_dgv.Rows(i).Cells("入庫數量").Value : N3 -= 庫存_dgv.Rows(i).Cells("出庫數量").Value
  1093. Next
  1094. If 車廠型態 = True Then
  1095. TextBox1.Text = N3
  1096. Else
  1097. 庫存量1.Text = N3
  1098. End If
  1099. End Sub
  1100. Private Sub 明細表_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 明細表_dgv.CellEnter
  1101. Dim NUM1, NUM2 As Integer
  1102. index = e.RowIndex
  1103. If e.RowIndex = -1 Then : Else
  1104. 流水號_tb.Text = 明細表_dgv(1, e.RowIndex).Value.ToString
  1105. 料號1_tb.Text = 明細表_dgv(10, e.RowIndex).Value.ToString
  1106. If 明細表_dgv(13, e.RowIndex).Value.ToString = "物料" Then
  1107. Set_清單4()
  1108. Else
  1109. TextBox1.Text = ""
  1110. End If
  1111. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  1112. If 明細表_dgv.Rows(i).Cells("數量").Value.ToString <> "" And 明細表_dgv.Rows(i).Cells("售價").Value.ToString <> "" And 明細表_dgv.Rows(i).Cells("成本").Value.ToString <> "" Then
  1113. 明細表_dgv.Rows(i).Cells("總售價").Value = 明細表_dgv.Rows(i).Cells("數量").Value * 明細表_dgv.Rows(i).Cells("售價").Value
  1114. 明細表_dgv.Rows(i).Cells("總成本").Value = 明細表_dgv.Rows(i).Cells("數量").Value * 明細表_dgv.Rows(i).Cells("成本").Value
  1115. NUM1 += 明細表_dgv.Rows(i).Cells("總售價").Value
  1116. NUM2 += 明細表_dgv.Rows(i).Cells("總成本").Value
  1117. 明細表_dgv.Rows(i).Cells("利潤").Value = (明細表_dgv.Rows(i).Cells("數量").Value * 明細表_dgv.Rows(i).Cells("售價").Value) - (明細表_dgv.Rows(i).Cells("數量").Value * 明細表_dgv.Rows(i).Cells("成本").Value)
  1118. End If
  1119. Next
  1120. End If
  1121. 支出合計_tb.Text = Strings.Format(Val(NUM1), "#,##0")
  1122. 總成本_tb.Text = Strings.Format(Val(NUM2), "#,##0")
  1123. Dim d1, d2, d4 As Integer
  1124. Dim d3 As Double
  1125. Dim s1 As String = 進價_tb.Text
  1126. Dim s2 As String = 總成本_tb.Text
  1127. Dim s4 As String = 售價_tb.Text
  1128. s1 = s1.Replace(",", "")
  1129. s2 = s2.Replace(",", "")
  1130. s4 = s4.Replace(",", "")
  1131. d1 = Integer.Parse(s1)
  1132. d2 = Integer.Parse(s2)
  1133. d4 = Integer.Parse(s4)
  1134. d3 = 利潤率.Value
  1135. 總利潤_tb.Text = ((d1 + d2) * d3 / 100).ToString("#,##0")
  1136. If boo1 = True Then
  1137. 總利潤_tb.Text = (d4 - (d1 + d2)).ToString("#,##0")
  1138. Else
  1139. 售價_tb.Text = (d1 + d2 + ((d1 + d2) * d3 / 100)).ToString("#,##0")
  1140. End If
  1141. End Sub
  1142. Private Sub 明細表1_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 明細表1_dgv.CellEnter
  1143. Dim NUM1 As Integer = 0
  1144. Dim NUM2 As Integer = 0
  1145. index = e.RowIndex
  1146. If e.RowIndex = -1 Then : Else
  1147. 流水號_tb.Text = 明細表1_dgv(1, e.RowIndex).Value.ToString
  1148. 料號1_tb.Text = 明細表1_dgv(10, e.RowIndex).Value.ToString
  1149. If 明細表1_dgv(13, e.RowIndex).Value.ToString = "物料" Then
  1150. Set_清單4()
  1151. Else
  1152. 庫存量1.Text = ""
  1153. End If
  1154. For i As Integer = 0 To 明細表1_dgv.Rows.Count - 1
  1155. If 明細表1_dgv.Rows(i).Cells("數量").Value.ToString <> "" And 明細表1_dgv.Rows(i).Cells("售價").Value.ToString <> "" And 明細表1_dgv.Rows(i).Cells("成本").Value.ToString <> "" Then
  1156. 明細表1_dgv.Rows(i).Cells("總售價").Value = 明細表1_dgv.Rows(i).Cells("數量").Value * 明細表1_dgv.Rows(i).Cells("售價").Value
  1157. 明細表1_dgv.Rows(i).Cells("總成本").Value = 明細表1_dgv.Rows(i).Cells("數量").Value * 明細表1_dgv.Rows(i).Cells("成本").Value
  1158. 明細表1_dgv.Rows(i).Cells("利潤").Value = (明細表1_dgv.Rows(i).Cells("數量").Value * 明細表1_dgv.Rows(i).Cells("售價").Value) - (明細表1_dgv.Rows(i).Cells("數量").Value * 明細表1_dgv.Rows(i).Cells("成本").Value)
  1159. End If
  1160. If 明細表1_dgv.Rows(i).Cells("狀態").Value <> "承修項目" Then
  1161. NUM1 += 明細表1_dgv.Rows(i).Cells("總售價").Value
  1162. Else
  1163. NUM2 += 明細表1_dgv.Rows(i).Cells("總售價").Value
  1164. End If
  1165. Next
  1166. 零件_tb.Text = Strings.Format(Val(NUM1), "#,##0")
  1167. 工資_tb.Text = Strings.Format(Val(NUM2), "#,##0")
  1168. 總計_tb.Text = Strings.Format(Val(NUM1 + NUM2), "#,##0")
  1169. If 是否收稅_cb.Checked = True Then
  1170. 稅金_tb.Text = Strings.Format(Val((NUM1 + NUM2) * 0.05), "#,##0")
  1171. 應收合計_tb.Text = Strings.Format(Val(NUM1 + NUM2 + ((NUM1 + NUM2) * 0.05)), "#,##0")
  1172. 總計_tb.Text = Strings.Format(Val(NUM1 + NUM2 + ((NUM1 + NUM2) * 0.05)), "#,##0")
  1173. Else
  1174. 稅金_tb.Text = "0"
  1175. 應收合計_tb.Text = Strings.Format(Val(NUM1 + NUM2), "#,##0")
  1176. End If
  1177. End If
  1178. End Sub
  1179. Private Sub 物料_dgv_CellClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles 物料_dgv.CellClick
  1180. If e.RowIndex = -1 Then : Else
  1181. 料號_tb.Text = 物料_dgv(0, e.RowIndex).Value.ToString
  1182. 品名.Text = 物料_dgv(1, e.RowIndex).Value.ToString
  1183. 成本.Text = 物料_dgv(5, e.RowIndex).Value.ToString
  1184. 狀態_tb.Text = 物料_dgv(4, e.RowIndex).Value.ToString
  1185. End If
  1186. End Sub
  1187. Private Sub 流水號_tb_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 流水號_tb.TextChanged
  1188. ' 檢查流水號_tb 的值是否變化,如果是則清空料號_tb
  1189. If 流水號_tb.Text <> 上次的流水號 Then
  1190. 料號_tb.Text = ""
  1191. End If
  1192. ' 更新上次的流水號
  1193. 上次的流水號 = 流水號_tb.Text
  1194. End Sub
  1195. Private Sub 類別清單_SelectedIndexChanged(sender As Object, e As EventArgs) Handles 選擇供應商_cb.SelectedIndexChanged
  1196. Set_清單2() : 料號_tb.Text = "" : 品名.Text = "" : 成本.Text = "" : 狀態_tb.Text = ""
  1197. End Sub
  1198. Private Sub Button2_Click(sender As Object, e As EventArgs) Handles 查詢1_bt.Click
  1199. boo = True : boo2 = False : 連動模組.SetCallingPage("車輛銷售管理") : 連動模組.ShowDialog() : 連動模組.BringToFront()
  1200. End Sub
  1201. Private Sub Button3_Click(sender As Object, e As EventArgs) Handles 查詢2_bt.Click
  1202. boo = False : boo2 = False : 連動模組.SetCallingPage("車輛銷售管理") : 連動模組.ShowDialog() : 連動模組.BringToFront()
  1203. End Sub
  1204. Private Sub Button2_Click_1(sender As Object, e As EventArgs) Handles Button2.Click
  1205. boo2 = True : boo = False : 連動模組.SetCallingPage("車輛銷售管理") : 連動模組.ShowDialog() : 連動模組.BringToFront()
  1206. End Sub
  1207. Private Sub 收支單中新增一筆資料_bt_Click(sender As Object, e As EventArgs) Handles 收支單中新增一筆資料_bt.Click
  1208. If 單號_tb.Text = "" Then
  1209. MsgBox("未選擇單號!!")
  1210. Else
  1211. If 料號_tb.Text = "" Or 品名.Text = "" Or 成本.Text = "" Or 狀態_tb.Text = "" Then
  1212. MsgBox("未選擇物料。")
  1213. Else
  1214. Set_流水號() : PA = 單號_tb.Text
  1215. SQL_車輛銷售管理_查詢最後一筆單號項次() : PA = ""
  1216. If dr.Read() Then : 新項次 = dr("項次") : Else : 新項次 = "00" : End If : conn.Close()
  1217. NUM1 = Double.Parse(新項次) + 1
  1218. If NUM1 < 10 Then : 新項次 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 99 Then : 新項次 = NUM1 : End If
  1219. PA15 = 新項次
  1220. SQL_車輛銷售管理_新增明細表1() : conn.Close()
  1221. Set_清單3()
  1222. MsgBox("明細表新增成功!!")
  1223. End If
  1224. End If
  1225. End Sub
  1226. Private Sub 收支單中新增一筆資料1_bt_Click(sender As Object, e As EventArgs) Handles 收支單中新增一筆資料1_bt.Click
  1227. For i As Integer = 0 To 明細表1_dgv.Rows.Count - 1
  1228. PA1 = 明細表1_dgv.Rows(i).Cells("各項支出名稱").Value.ToString : PA2 = 明細表1_dgv.Rows(i).Cells("數量").Value.ToString : PA3 = 明細表1_dgv.Rows(i).Cells("售價").Value
  1229. PA4 = 明細表1_dgv.Rows(i).Cells("備註").Value.ToString : PA5 = 明細表1_dgv.Rows(i).Cells("料號").Value.ToString : PA6 = 明細表1_dgv.Rows(i).Cells("項次").Value.ToString
  1230. PA10 = 明細表1_dgv.Rows(i).Cells("流水號").Value.ToString : PA8 = 明細表1_dgv.Rows(i).Cells("成本").Value.ToString : BL3 = 明細表1_dgv.Rows(i).Cells("已儲存").Value
  1231. PA7 = 明細表1_dgv.Rows(i).Cells("狀態").Value.ToString
  1232. SQL_車輛銷售管理_修改明細表() : conn.Close()
  1233. If PA7 = "物料" Then
  1234. If BL3 = 0 Then
  1235. Set_日期格式轉換()
  1236. Set_流水號1()
  1237. SQL_車輛銷售管理_新增倉儲明細表() : conn.Close()
  1238. Else
  1239. SQL_車輛銷售管理_修改倉儲明細表() : conn.Close()
  1240. End If
  1241. End If
  1242. Next
  1243. If 單號_tb.Text = "" Then
  1244. MsgBox("未選擇單號!!")
  1245. Else
  1246. If 料號_tb.Text = "" Or 品名.Text = "" Or 成本.Text = "" Then
  1247. MsgBox("未選擇物料。")
  1248. Else
  1249. Set_流水號() : PA = 單號_tb.Text
  1250. SQL_車輛銷售管理_查詢最後一筆單號項次() : PA = ""
  1251. If dr.Read() Then : 新項次 = dr("項次") : Else : 新項次 = "00" : End If : conn.Close()
  1252. NUM1 = Double.Parse(新項次) + 1
  1253. If NUM1 < 10 Then : 新項次 = "00" & NUM1 : ElseIf NUM1 > 9 And NUM1 < 100 Then : 新項次 = "0" & NUM1 : ElseIf NUM1 > 99 Then : 新項次 = NUM1 : End If
  1254. PA15 = 新項次
  1255. SQL_車輛銷售管理_新增明細表1() : conn.Close()
  1256. Set_清單3()
  1257. MsgBox("明細表新增成功!!")
  1258. End If
  1259. End If
  1260. End Sub
  1261. Public Sub ReceiveDataFromPageB(ByVal data As String, ByVal data1 As String, ByVal data2 As String, ByVal data3 As String, ByVal data4 As String)
  1262. ' 在這裡處理從頁面B接收到的數據,將其設定到頁面A的TextBox中
  1263. If boo2 = True Then
  1264. 車主名稱_tb.Text = data
  1265. 電話_tb.Text = data1
  1266. 地址_tb.Text = data2
  1267. 車號_tb.Text = data3
  1268. 備註1_tb.Text = data4
  1269. SQL_車輛銷售管理_人員明細(data, data3)
  1270. If dr.Read() Then
  1271. 車型_tb.Text = dr("廠牌")
  1272. 年_tb.Text = dr("年份型式")
  1273. 引擎號碼1_tb.Text = dr("引擎號碼")
  1274. 輪胎尺寸_tb.Text = dr("買入顏色")
  1275. End If
  1276. Else
  1277. If boo = True Then
  1278. 買入車主名稱_tb.Text = data
  1279. 買入車主電話_tb.Text = data1
  1280. 買入車主地址_tb.Text = data2
  1281. 買入牌照號碼_tb.Text = data3
  1282. Else
  1283. 賣出車主名稱_tb.Text = data
  1284. 賣出車主電話_tb.Text = data1
  1285. 賣出車主地址_tb.Text = data2
  1286. 買入牌照號碼_tb.Text = data3
  1287. End If
  1288. End If
  1289. End Sub
  1290. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  1291. If Panel7.Visible = True Then
  1292. Panel7.Visible = False
  1293. Else
  1294. Panel7.Visible = True
  1295. End If
  1296. End Sub
  1297. Private Sub 只顯示未付款_cb_CheckedChanged(sender As Object, e As EventArgs) Handles 只顯示未付款_cb.CheckedChanged
  1298. Set_清單1()
  1299. End Sub
  1300. Private Sub 顯示成本_cb_CheckedChanged(sender As Object, e As EventArgs) Handles 顯示成本_cb.CheckedChanged
  1301. Set_清單2()
  1302. End Sub
  1303. Private Sub 隱藏成本_cb_CheckedChanged(sender As Object, e As EventArgs) Handles 隱藏成本_cb.CheckedChanged
  1304. Set_清單3()
  1305. End Sub
  1306. Private Sub Button3_Click_1(sender As Object, e As EventArgs) Handles Button3.Click
  1307. SQL_車輛銷售管理_儲存列印資訊() : MsgBox("儲存成功!!")
  1308. End Sub
  1309. Private Sub 查詢_bt_MouseEnter(sender As Object, e As EventArgs) Handles 查詢_bt.MouseEnter
  1310. ToolTip1.SetToolTip(Me.查詢_bt, "查詢單號")
  1311. End Sub
  1312. Private Sub 查詢物_bt_MouseEnter(sender As Object, e As EventArgs) Handles 查詢物_bt.MouseEnter
  1313. ToolTip1.SetToolTip(Me.查詢物_bt, "查詢物料")
  1314. End Sub
  1315. Private Sub 新增_bt_MouseEnter(sender As Object, e As EventArgs) Handles 新增_bt.MouseEnter
  1316. ToolTip1.SetToolTip(Me.新增_bt, "新增準備")
  1317. End Sub
  1318. Private Sub 確認新增_bt_MouseEnter(sender As Object, e As EventArgs) Handles 確認新增_bt.MouseEnter
  1319. ToolTip1.SetToolTip(Me.確認新增_bt, "確認新增")
  1320. End Sub
  1321. Private Sub 修改_bt_MouseEnter(sender As Object, e As EventArgs) Handles 修改_bt.MouseEnter
  1322. ToolTip1.SetToolTip(Me.修改_bt, "修改存檔")
  1323. End Sub
  1324. Private Sub 刪除_bt_MouseEnter(sender As Object, e As EventArgs) Handles 刪除_bt.MouseEnter
  1325. ToolTip1.SetToolTip(Me.刪除_bt, "刪除")
  1326. End Sub
  1327. Private Sub 查詢1_bt_MouseEnter(sender As Object, e As EventArgs) Handles 查詢1_bt.MouseEnter
  1328. ToolTip1.SetToolTip(Me.查詢1_bt, "查詢")
  1329. End Sub
  1330. Private Sub 匯出EXCEL_bt_MouseEnter(sender As Object, e As EventArgs) Handles 匯出EXCEL_bt.MouseEnter
  1331. ToolTip1.SetToolTip(Me.匯出EXCEL_bt, "匯出PDF")
  1332. End Sub
  1333. Private Sub 查詢2_bt_MouseEnter(sender As Object, e As EventArgs) Handles 查詢2_bt.MouseEnter
  1334. ToolTip1.SetToolTip(Me.查詢2_bt, "查詢")
  1335. End Sub
  1336. Private Sub 收支單中新增一筆資料_bt_MouseEnter(sender As Object, e As EventArgs) Handles 收支單中新增一筆資料_bt.MouseEnter
  1337. ToolTip1.SetToolTip(Me.收支單中新增一筆資料_bt, "收支單中新增帶有物料的資料")
  1338. End Sub
  1339. Private Sub 收支單中新增一筆空白資料_bt_MouseEnter(sender As Object, e As EventArgs) Handles 收支單中新增一筆空白資料_bt.MouseEnter
  1340. ToolTip1.SetToolTip(Me.收支單中新增一筆空白資料_bt, "收支單中新增空白的資料")
  1341. End Sub
  1342. Private Sub 刪除選中的一筆資料_bt_MouseEnter(sender As Object, e As EventArgs) Handles 刪除選中的一筆資料_bt.MouseEnter
  1343. ToolTip1.SetToolTip(Me.刪除選中的一筆資料_bt, "刪除選中的一筆資料")
  1344. End Sub
  1345. Private Sub 申請_bt_MouseEnter(sender As Object, e As EventArgs) Handles 申請_bt.MouseEnter
  1346. ToolTip1.SetToolTip(Me.申請_bt, "資料存檔")
  1347. End Sub
  1348. Private Sub 收支單中新增一筆資料1_bt_MouseEnter(sender As Object, e As EventArgs) Handles 收支單中新增一筆資料1_bt.MouseEnter
  1349. ToolTip1.SetToolTip(Me.收支單中新增一筆資料1_bt, "收支單中新增帶有物料的資料")
  1350. End Sub
  1351. Private Sub 收支單中新增一筆空白資料1_bt_MouseEnter(sender As Object, e As EventArgs) Handles 收支單中新增一筆空白資料1_bt.MouseEnter
  1352. ToolTip1.SetToolTip(Me.收支單中新增一筆空白資料1_bt, "收支單中新增空白的資料")
  1353. End Sub
  1354. Private Sub 刪除選中的一筆資料1_bt_MouseEnter(sender As Object, e As EventArgs) Handles 刪除選中的一筆資料1_bt.MouseEnter
  1355. ToolTip1.SetToolTip(Me.刪除選中的一筆資料1_bt, "刪除選中的一筆資料")
  1356. End Sub
  1357. Private Sub 申請1_bt_MouseEnter(sender As Object, e As EventArgs) Handles 申請1_bt.MouseEnter
  1358. ToolTip1.SetToolTip(Me.申請1_bt, "資料存檔")
  1359. End Sub
  1360. Private Sub Button3_MouseEnter(sender As Object, e As EventArgs) Handles Button3.MouseEnter
  1361. ToolTip1.SetToolTip(Me.Button3, "儲存列印資料")
  1362. End Sub
  1363. Private Sub Button1_MouseEnter(sender As Object, e As EventArgs) Handles Button1.MouseEnter
  1364. ToolTip1.SetToolTip(Me.Button1, "編輯列印資料")
  1365. End Sub
  1366. Private Sub Button4_MouseEnter(sender As Object, e As EventArgs) Handles Button4.MouseEnter
  1367. ToolTip1.SetToolTip(Me.Button4, "匯出EXCEL")
  1368. End Sub
  1369. Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
  1370. If 單號_tb.Text = "" Then
  1371. MsgBox("未選擇單號!!") : Exit Sub
  1372. End If
  1373. If 車廠型態 = True Then
  1374. MsgBox("尚未開發!!") : Exit Sub
  1375. End If
  1376. xlApp = CType(CreateObject("Excel.Application"), Application)
  1377. xlBook = xlApp.Workbooks.Add
  1378. xlApp.DisplayAlerts = True
  1379. xlApp.Visible = True
  1380. xlApp.Application.WindowState = xlMaximized
  1381. xlSheet = NewMethod(xlBook) : xlApp.Sheets(1).Select
  1382. xlSheet.Cells(1, 1) = 公司名稱.Text
  1383. xlSheet.Cells(2, 1) = "銷 售 單"
  1384. xlSheet.Cells(3, 1) = "車主名稱 " : xlSheet.Cells(3, 2) = 車主名稱_tb.Text : xlSheet.Cells(3, 3) = "工資 " : xlSheet.Cells(3, 4) = 工資_tb.Text
  1385. xlSheet.Cells(4, 1) = "車號 " : xlSheet.Cells(4, 2) = 車號_tb.Text : xlSheet.Cells(4, 3) = "零件 " : xlSheet.Cells(4, 4) = 零件_tb.Text
  1386. xlSheet.Cells(5, 1) = "入廠日期 " : xlSheet.Cells(5, 2) = 入廠日期_dtp.Text : xlSheet.Cells(5, 3) = "總計 " : xlSheet.Cells(5, 4) = 總計_tb.Text
  1387. xlSheet.Cells(3, 5) = "稅金5% " : xlSheet.Cells(3, 6) = 稅金_tb.Text : xlSheet.Cells(3, 7) = "信用卡" : xlSheet.Cells(3, 8) = 信用卡_tb.Text
  1388. xlSheet.Cells(4, 5) = "應收合計 " : xlSheet.Cells(4, 6) = 應收合計_tb.Text : xlSheet.Cells(4, 7) = "賒帳 " : xlSheet.Cells(4, 8) = 賒帳_tb.Text
  1389. xlSheet.Cells(5, 5) = "現金 " : xlSheet.Cells(5, 6) = 現金_tb.Text : xlSheet.Cells(5, 7) = "支票 " : xlSheet.Cells(5, 8) = 支票_tb.Text
  1390. xlSheet.Cells(6, 1) = "項次" : xlSheet.Cells(6, 2) = "各項支出名稱" : xlSheet.Cells(6, 3) = "數量" : xlSheet.Cells(6, 4) = "成本"
  1391. xlSheet.Cells(6, 5) = "售價" : xlSheet.Cells(6, 6) = "總成本" : xlSheet.Cells(6, 7) = "總售價" : xlSheet.Cells(6, 8) = "利潤"
  1392. xlSheet.Cells(6, 9) = "備註"
  1393. Dim 總計1 As Double = 0 : Dim 總計2 As Double = 0 : Dim 總計3 As Double = 0
  1394. For i As Integer = 0 To 明細表1_dgv.Rows.Count - 1
  1395. xlSheet.Cells(i + 7, 1) = 明細表1_dgv.Rows(i).Cells("項次").Value
  1396. xlSheet.Cells(i + 7, 2) = 明細表1_dgv.Rows(i).Cells("各項支出名稱").Value
  1397. Dim 數量 As Double = Convert.ToDouble(明細表1_dgv.Rows(i).Cells("數量").Value)
  1398. Dim 成本 As Double = Convert.ToDouble(明細表1_dgv.Rows(i).Cells("成本").Value)
  1399. Dim 售價 As Double = Convert.ToDouble(明細表1_dgv.Rows(i).Cells("售價").Value)
  1400. Dim 總成本 As Double = Convert.ToDouble(明細表1_dgv.Rows(i).Cells("總成本").Value)
  1401. 總計1 = 總計1 + 總成本
  1402. Dim 總售價 As Double = Convert.ToDouble(明細表1_dgv.Rows(i).Cells("總售價").Value)
  1403. 總計2 = 總計2 + 總售價
  1404. Dim 利潤 As Double = Convert.ToDouble(明細表1_dgv.Rows(i).Cells("利潤").Value)
  1405. 總計3 = 總計3 + 利潤
  1406. xlSheet.Cells(i + 7, 3) = 數量.ToString("#,##0")
  1407. xlSheet.Cells(i + 7, 4) = 成本.ToString("#,##0")
  1408. xlSheet.Cells(i + 7, 5) = 售價.ToString("#,##0")
  1409. xlSheet.Cells(i + 7, 6) = 總成本.ToString("#,##0")
  1410. xlSheet.Cells(i + 7, 7) = 總售價.ToString("#,##0")
  1411. xlSheet.Cells(i + 7, 8) = 利潤.ToString("#,##0")
  1412. xlSheet.Cells(i + 7, 9) = 明細表1_dgv.Rows(i).Cells("備註").Value
  1413. N2 = i + 8
  1414. Next i
  1415. xlSheet.Cells(N2, 5) = "總計" : xlSheet.Cells(N2, 6) = 總計1.ToString("#,##0")
  1416. xlSheet.Cells(N2, 7) = 總計2.ToString("#,##0") : xlSheet.Cells(N2, 8) = 總計3.ToString("#,##0")
  1417. AA(xlApp, xlSheet) : xlSheet.PageSetup.PrintArea = "" : xlApp.Application.WindowState = xlMinimized
  1418. MsgBox("匯成EXCEL成功")
  1419. End Sub
  1420. Private Sub AA(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Microsoft.Office.Interop.Excel.Worksheet)
  1421. xlSheet.Cells.Select()
  1422. With myExcel.Selection.Font : .Name = "微軟正黑體" : .Size = 12 : .Strikethrough = False : .Superscript = False : .Subscript = False : .OutlineFont = False
  1423. .Shadow = False : .Underline = xlUnderlineStyleNone : .ThemeColor = xlThemeColorLight1 : .TintAndShade = 0 : .ThemeFont = xlThemeFontNone : End With
  1424. xlSheet.Range("A3:I" & N2).Select()
  1425. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone
  1426. myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  1427. With myExcel.Selection.Borders(xlEdgeLeft)
  1428. .LineStyle = xlContinuous
  1429. .ColorIndex = 0
  1430. .TintAndShade = 0
  1431. .Weight = xlThin
  1432. End With
  1433. With myExcel.Selection.Borders(xlEdgeTop)
  1434. .LineStyle = xlContinuous
  1435. .ColorIndex = 0
  1436. .TintAndShade = 0
  1437. .Weight = xlThin
  1438. End With
  1439. With myExcel.Selection.Borders(xlEdgeBottom)
  1440. .LineStyle = xlContinuous
  1441. .ColorIndex = 0
  1442. .TintAndShade = 0
  1443. .Weight = xlThin
  1444. End With
  1445. With myExcel.Selection.Borders(xlEdgeRight)
  1446. .LineStyle = xlContinuous
  1447. .ColorIndex = 0
  1448. .TintAndShade = 0
  1449. .Weight = xlThin
  1450. End With
  1451. With myExcel.Selection.Borders(xlInsideVertical)
  1452. .LineStyle = xlContinuous
  1453. .ColorIndex = 0
  1454. .TintAndShade = 0
  1455. .Weight = xlThin
  1456. End With
  1457. With myExcel.Selection.Borders(xlInsideHorizontal)
  1458. .LineStyle = xlContinuous
  1459. .ColorIndex = 0
  1460. .TintAndShade = 0
  1461. .Weight = xlThin
  1462. End With
  1463. xlSheet.Range("A1:I1").Select()
  1464. With myExcel.Selection
  1465. .HorizontalAlignment = xlCenter
  1466. .VerticalAlignment = xlCenter
  1467. .WrapText = False
  1468. .Orientation = 0
  1469. .AddIndent = False
  1470. .IndentLevel = 0
  1471. .ShrinkToFit = False
  1472. .ReadingOrder = xlContext
  1473. .MergeCells = False
  1474. End With
  1475. myExcel.Selection.Merge
  1476. xlSheet.Range("A2:I2").Select()
  1477. With myExcel.Selection
  1478. .HorizontalAlignment = xlCenter
  1479. .VerticalAlignment = xlCenter
  1480. .WrapText = False
  1481. .Orientation = 0
  1482. .AddIndent = False
  1483. .IndentLevel = 0
  1484. .ShrinkToFit = False
  1485. .ReadingOrder = xlContext
  1486. .MergeCells = False
  1487. End With
  1488. myExcel.Selection.Merge
  1489. xlSheet.Range("A3:I" & N2).Select()
  1490. With myExcel.Selection
  1491. .HorizontalAlignment = xlCenter
  1492. .VerticalAlignment = xlCenter
  1493. .WrapText = False
  1494. .Orientation = 0
  1495. .AddIndent = False
  1496. .IndentLevel = 0
  1497. .ShrinkToFit = False
  1498. .ReadingOrder = xlContext
  1499. .MergeCells = False
  1500. End With
  1501. xlSheet.Columns("A:I").AutoFit()
  1502. AdjustColumnWidth(xlSheet, "A", 10)
  1503. AdjustColumnWidth(xlSheet, "C", 10)
  1504. AdjustColumnWidth(xlSheet, "D", 10)
  1505. AdjustColumnWidth(xlSheet, "E", 10)
  1506. AdjustColumnWidth(xlSheet, "F", 10)
  1507. AdjustColumnWidth(xlSheet, "G", 10)
  1508. AdjustColumnWidth(xlSheet, "H", 10)
  1509. If xlSheet.Columns("B:B").ColumnWidth > 35 Then
  1510. xlSheet.Columns("B:B").ColumnWidth = 35
  1511. ElseIf xlSheet.Columns("B:B").ColumnWidth < 10 Then
  1512. xlSheet.Columns("B:B").ColumnWidth = 10
  1513. End If
  1514. If xlSheet.Columns("I:I").ColumnWidth > 20 Then
  1515. xlSheet.Columns("I:I").ColumnWidth = 20
  1516. ElseIf xlSheet.Columns("I:I").ColumnWidth < 10 Then
  1517. xlSheet.Columns("I:I").ColumnWidth = 10
  1518. End If
  1519. xlSheet.Range("B:B,I:I").Select()
  1520. With myExcel.Selection
  1521. .VerticalAlignment = xlCenter
  1522. .WrapText = True
  1523. .Orientation = 0
  1524. .AddIndent = False
  1525. .IndentLevel = 0
  1526. .ShrinkToFit = False
  1527. .ReadingOrder = xlContext
  1528. End With
  1529. xlSheet.Rows("3:" & N2).AutoFit()
  1530. xlSheet.Range("A3:I5").Select()
  1531. With myExcel.Selection.Interior
  1532. .Pattern = xlSolid
  1533. .PatternColorIndex = xlAutomatic
  1534. .ThemeColor = xlThemeColorAccent4
  1535. .TintAndShade = 0.799981688894314
  1536. .PatternTintAndShade = 0
  1537. End With
  1538. xlSheet.Range("A6:I6").Select()
  1539. With myExcel.Selection.Interior
  1540. .Pattern = xlSolid
  1541. .PatternColorIndex = xlAutomatic
  1542. .ThemeColor = xlThemeColorAccent1
  1543. .TintAndShade = 0.799981688894314
  1544. .PatternTintAndShade = 0
  1545. End With
  1546. End Sub
  1547. Private Sub AdjustColumnWidth(ByVal sheet As Excel.Worksheet, ByVal column As String, ByVal minWidth As Double)
  1548. Dim colRange As Excel.Range = sheet.Columns(column & ":" & column)
  1549. If colRange.ColumnWidth < minWidth Then
  1550. colRange.ColumnWidth = minWidth
  1551. End If
  1552. End Sub
  1553. Private Sub 匯出EXCEL_bt_Click(sender As Object, e As EventArgs) Handles 匯出EXCEL_bt.Click
  1554. xlApp = CType(CreateObject("Excel.Application"), Microsoft.Office.Interop.Excel.Application)
  1555. xlApp.Visible = True
  1556. xlApp.DisplayAlerts = True
  1557. xlApp.Application.WindowState = xlMaximized
  1558. xlBook = xlApp.Workbooks.Add
  1559. xlSheet = NewMethod(xlBook)
  1560. xlBook.Activate()
  1561. xlSheet.Activate()
  1562. If 車廠型態 = True Then
  1563. xlSheet.Cells(1, 1) = 公司名稱.Text
  1564. xlSheet.Cells(2, 1) = "單號 " : xlSheet.Cells(2, 2) = 單號_tb.Text
  1565. xlSheet.Cells(2, 4) = "廠牌 " : xlSheet.Cells(2, 5) = 廠牌_tb.Text : xlSheet.Cells(3, 1) = "年份型式"
  1566. xlSheet.Cells(3, 2) = 年分_tb.Text : xlSheet.Cells(3, 4) = "引擎號碼" : xlSheet.Cells(3, 5) = 引擎_tb.Text
  1567. Dim currentDate As String = 買入日期_dtp.Text
  1568. If currentDate.Contains("年") And currentDate.Contains("月") And currentDate.Contains("日") Then
  1569. End If
  1570. xlSheet.Cells(4, 1) = "買入日期 " : xlSheet.Cells(4, 2) = currentDate : xlSheet.Cells(4, 3) = "牌照號碼"
  1571. xlSheet.Cells(4, 4) = 買入牌照號碼_tb.Text : xlSheet.Cells(4, 5) = "顏色" : xlSheet.Cells(4, 6) = 買入顏色_tb.Text
  1572. xlSheet.Cells(5, 1) = "車主名稱 " : xlSheet.Cells(5, 2) = 買入車主名稱_tb.Text
  1573. Dim phoneNumber1 As String = 買入車主電話_tb.Text
  1574. xlSheet.Cells(5, 4) = "電話 " : xlSheet.Cells(5, 5) = "'" & phoneNumber1
  1575. xlSheet.Cells(6, 1) = "地址 " : xlSheet.Cells(6, 2) = 買入車主地址_tb.Text
  1576. xlSheet.Cells(7, 1) = "進價 " : xlSheet.Cells(7, 2) = 進價_tb.Text
  1577. xlSheet.Cells(7, 4) = "經手人 " : xlSheet.Cells(7, 5) = 買入經手人_tb.Text
  1578. xlSheet.Cells(8, 1) = "各項支出名稱 " : xlSheet.Cells(8, 3) = "數量 "
  1579. xlSheet.Cells(8, 4) = "金額 " : xlSheet.Cells(8, 5) = "備註 "
  1580. For i As Integer = 0 To 明細表_dgv.Rows.Count - 1
  1581. xlSheet.Cells(i + 9, 1) = 明細表_dgv.Rows(i).Cells("各項支出名稱").Value : xlSheet.Cells(i + 9, 3) = 明細表_dgv.Rows(i).Cells("數量").Value
  1582. Dim value As Double = Convert.ToDouble(明細表_dgv.Rows(i).Cells("總售價").Value)
  1583. Dim formattedValue As String = value.ToString("#,##0")
  1584. xlSheet.Cells(i + 9, 4) = formattedValue : xlSheet.Cells(i + 9, 5) = 明細表_dgv.Rows(i).Cells("備註").Value
  1585. N2 = 10 + i
  1586. Next i
  1587. xlSheet.Cells(N2 + 1, 1) = "物料總支出 " : xlSheet.Cells(N2 + 1, 2) = 支出合計_tb.Text
  1588. xlSheet.Cells(N2 + 1, 4) = "物料總成本 " : xlSheet.Cells(N2 + 1, 5) = 總成本_tb.Text
  1589. xlSheet.Cells(N2 + 2, 1) = "賣出日期 " : xlSheet.Cells(N2 + 2, 2) = 賣出日期_dtp.Text : xlSheet.Cells(N2 + 2, 3) = "牌照號碼"
  1590. xlSheet.Cells(N2 + 2, 4) = 賣出牌照號碼_tb.Text : xlSheet.Cells(N2 + 2, 5) = "顏色" : xlSheet.Cells(N2 + 2, 6) = 賣出顏色_tb.Text
  1591. xlSheet.Cells(N2 + 3, 1) = "車主名稱 " : xlSheet.Cells(N2 + 3, 2) = 賣出車主名稱_tb.Text
  1592. Dim phoneNumber2 As String = 賣出車主電話_tb.Text
  1593. xlSheet.Cells(N2 + 3, 4) = "電話 " : xlSheet.Cells(N2 + 3, 5) = "'" & phoneNumber2
  1594. xlSheet.Cells(N2 + 4, 1) = "地址 " : xlSheet.Cells(N2 + 4, 2) = 賣出車主地址_tb.Text
  1595. xlSheet.Cells(N2 + 5, 1) = "售價 " : xlSheet.Cells(N2 + 5, 2) = 售價_tb.Text
  1596. xlSheet.Cells(N2 + 5, 4) = "經手人 " : xlSheet.Cells(N2 + 5, 5) = 賣出經手人_tb.Text
  1597. xlSheet.Cells(N2 + 6, 1) = "備註 " : xlSheet.Cells(N2 + 6, 2) = 備註_tb.Text
  1598. xlSheet.Cells(N2 + 7, 1) = "檢測日期 " : xlSheet.Cells(N2 + 7, 2) = 檢測日期_dtp.Text
  1599. BB(xlApp, xlSheet) '未改
  1600. Else
  1601. xlSheet.Cells(1, 1) = 公司名稱.Text
  1602. xlSheet.Cells(2, 1) = "結 帳 單"
  1603. xlSheet.Cells(3, 1) = "出險公司: " & 出險公司_tb.Text
  1604. xlSheet.Cells(3, 5) = "派修單號: " & 單號_tb.Text
  1605. xlSheet.Cells(4, 1) = "車主: " & 車主名稱_tb.Text : xlSheet.Cells(4, 3) = "車號: " & 車號_tb.Text
  1606. xlSheet.Cells(4, 5) = "應驗車日: " & 應驗車日_dtp.Text
  1607. xlSheet.Cells(4, 7) = "入廠日期: " & 入廠日期_dtp.Text
  1608. xlSheet.Cells(5, 1) = "地址: " & 地址_tb.Text
  1609. xlSheet.Cells(5, 5) = "車型: " & 車型_tb.Text
  1610. xlSheet.Cells(5, 7) = "前期未付: 0"
  1611. xlSheet.Cells(6, 1) = "電話: " & 電話_tb.Text
  1612. xlSheet.Cells(6, 3) = "進廠里程: " & 里程_tb.Text & "KM"
  1613. xlSheet.Cells(6, 5) = "保養預示: " & 保養預示_tb.Text & "KM"
  1614. xlSheet.Cells(6, 7) = "油表 : E \ | | / F"
  1615. xlSheet.Cells(7, 1) = "承修項目" : xlSheet.Cells(7, 3) = "工資"
  1616. xlSheet.Cells(7, 4) = "零件名稱" : xlSheet.Cells(7, 6) = "數量"
  1617. xlSheet.Cells(7, 7) = "單價" : xlSheet.Cells(7, 8) = "總價"
  1618. Dim a As Integer = 0
  1619. Dim b As Integer = 0
  1620. For i As Integer = 0 To 明細表1_dgv.Rows.Count - 1
  1621. If 明細表1_dgv.Rows(i).Cells("狀態").Value.ToString = "承修項目" Then
  1622. xlSheet.Cells(a + 8, 1) = 明細表1_dgv.Rows(i).Cells("各項支出名稱").Value
  1623. Dim value1 As Double = Convert.ToDouble(明細表1_dgv.Rows(i).Cells("總售價").Value)
  1624. Dim formattedValue1 As String = value1.ToString("#,##0")
  1625. xlSheet.Cells(a + 8, 3) = formattedValue1
  1626. a += 1
  1627. Else
  1628. xlSheet.Cells(b + 8, 4) = 明細表1_dgv.Rows(i).Cells("各項支出名稱").Value
  1629. xlSheet.Cells(b + 8, 9) = 明細表1_dgv.Rows(i).Cells("各項支出名稱").Value
  1630. Dim value1 As Double = Convert.ToDouble(明細表1_dgv.Rows(i).Cells("數量").Value)
  1631. Dim formattedValue1 As String = value1.ToString("F2")
  1632. xlSheet.Cells(b + 8, 6) = "'" & formattedValue1
  1633. Dim value2 As Double = Convert.ToDouble(明細表1_dgv.Rows(i).Cells("售價").Value)
  1634. Dim formattedValue2 As String = value2.ToString("#,##0")
  1635. xlSheet.Cells(b + 8, 7) = formattedValue2
  1636. Dim value3 As Double = Convert.ToDouble(明細表1_dgv.Rows(i).Cells("總售價").Value)
  1637. Dim formattedValue3 As String = value3.ToString("#,##0")
  1638. xlSheet.Cells(b + 8, 8) = formattedValue3
  1639. b += 1
  1640. End If
  1641. N2 = i + 8
  1642. Next i
  1643. xlSheet.Cells(N2 + 1, 1) = "工資 " : xlSheet.Cells(N2 + 1, 2) = 工資_tb.Text
  1644. xlSheet.Cells(N2 + 1, 3) = "零件 " : xlSheet.Cells(N2 + 1, 4) = 零件_tb.Text
  1645. xlSheet.Cells(N2 + 1, 5) = "總計 " : xlSheet.Cells(N2 + 1, 6) = 總計_tb.Text
  1646. xlSheet.Cells(N2 + 2, 1) = "稅金5% " : xlSheet.Cells(N2 + 2, 2) = 稅金_tb.Text : xlSheet.Cells(N2 + 2, 3) = "信用卡"
  1647. xlSheet.Cells(N2 + 2, 4) = 信用卡_tb.Text : xlSheet.Cells(N2 + 2, 5) = "客戶簽名"
  1648. xlSheet.Cells(N2 + 3, 1) = "應收合計 " : xlSheet.Cells(N2 + 3, 2) = 應收合計_tb.Text
  1649. xlSheet.Cells(N2 + 3, 3) = "賒帳 " : xlSheet.Cells(N2 + 3, 4) = 賒帳_tb.Text
  1650. xlSheet.Cells(N2 + 4, 1) = "支票 " : xlSheet.Cells(N2 + 4, 2) = 支票_tb.Text
  1651. xlSheet.Cells(N2 + 4, 3) = "現金 " : xlSheet.Cells(N2 + 4, 4) = 現金_tb.Text
  1652. xlSheet.Cells(N2 + 5, 1) = 註解1_tb.Text : xlSheet.Cells(N2 + 5, 6) = 註解2_tb.Text
  1653. xlSheet.Cells(N2 + 6, 1) = 註解3_tb.Text
  1654. BB1(xlApp, xlSheet)
  1655. End If
  1656. xlApp.Sheets(2).Delete : xlSheet.PageSetup.PrintArea = ""
  1657. '----轉成PDF-----
  1658. Dim pdfFolderPath As String = Path.Combine(System.Windows.Forms.Application.StartupPath, "pdf")
  1659. If Not Directory.Exists(pdfFolderPath) Then
  1660. Directory.CreateDirectory(pdfFolderPath)
  1661. End If
  1662. Dim pdfFilePath As String = Path.Combine(pdfFolderPath, 單號_tb.Text & "-結帳單.pdf")
  1663. xlBook.Sheets(1).ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, pdfFilePath, XlFixedFormatQuality.xlQualityStandard, True)
  1664. '--------
  1665. xlApp.Cells.Select() : xlApp.Application.WindowState = xlMinimized : xlBook.Close(False)
  1666. Runtime.InteropServices.Marshal.ReleaseComObject(xlSheet)
  1667. Runtime.InteropServices.Marshal.ReleaseComObject(xlBook)
  1668. Runtime.InteropServices.Marshal.ReleaseComObject(xlApp)
  1669. xlApp.Quit() : xlSheet = Nothing : xlBook = Nothing : xlApp = Nothing : GC.Collect()
  1670. Try
  1671. Dim chromePath As String = "C:\Program Files\Google\Chrome\Application\chrome.exe"
  1672. If System.IO.File.Exists(chromePath) Then
  1673. Dim process As New Process()
  1674. process.StartInfo.FileName = "chrome"
  1675. process.StartInfo.Arguments = """" & pdfFilePath & """"
  1676. process.Start()
  1677. Else : Dim edgePath As String = "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"
  1678. If System.IO.File.Exists(edgePath) Then
  1679. Dim process As New Process()
  1680. process.StartInfo.FileName = "msedge"
  1681. process.StartInfo.Arguments = """" & pdfFilePath & """"
  1682. process.Start()
  1683. Else
  1684. Process.Start(pdfFilePath)
  1685. End If
  1686. End If
  1687. Catch ex As Exception
  1688. MsgBox("以存檔至桌面 。" & vbCrLf & "檔案名稱:" & 單號_tb.Text & "-結帳單.pdf")
  1689. End Try
  1690. End Sub
  1691. Private Sub BB(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Microsoft.Office.Interop.Excel.Worksheet)
  1692. xlSheet.Cells.Select()
  1693. With myExcel.Selection.Font
  1694. .Name = "微軟正黑體"
  1695. .Size = 12
  1696. .Strikethrough = False
  1697. .Superscript = False
  1698. .Subscript = False
  1699. .OutlineFont = False
  1700. .Shadow = False
  1701. .Underline = xlUnderlineStyleNone
  1702. .ThemeColor = xlThemeColorLight1
  1703. .TintAndShade = 0
  1704. .ThemeFont = xlThemeFontNone
  1705. End With
  1706. With myExcel.Selection
  1707. .HorizontalAlignment = xlCenter
  1708. .VerticalAlignment = xlCenter
  1709. .WrapText = False
  1710. .Orientation = 0
  1711. .AddIndent = False
  1712. .IndentLevel = 0
  1713. .ShrinkToFit = False
  1714. .ReadingOrder = xlContext
  1715. .MergeCells = False
  1716. End With
  1717. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone
  1718. myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  1719. With myExcel.Selection.Borders(xlEdgeLeft)
  1720. .LineStyle = xlContinuous
  1721. .ColorIndex = 0
  1722. .TintAndShade = 0
  1723. .Weight = xlThin
  1724. End With
  1725. With myExcel.Selection.Borders(xlEdgeTop)
  1726. .LineStyle = xlContinuous
  1727. .ColorIndex = 0
  1728. .TintAndShade = 0
  1729. .Weight = xlThin
  1730. End With
  1731. With myExcel.Selection.Borders(xlEdgeBottom)
  1732. .LineStyle = xlContinuous
  1733. .ColorIndex = 0
  1734. .TintAndShade = 0
  1735. .Weight = xlThin
  1736. End With
  1737. With myExcel.Selection.Borders(xlEdgeRight)
  1738. .LineStyle = xlContinuous
  1739. .ColorIndex = 0
  1740. .TintAndShade = 0
  1741. .Weight = xlThin
  1742. End With
  1743. With myExcel.Selection.Borders(xlInsideVertical)
  1744. .LineStyle = xlContinuous
  1745. .ColorIndex = 0
  1746. .TintAndShade = 0
  1747. .Weight = xlThin
  1748. End With
  1749. With myExcel.Selection.Borders(xlInsideHorizontal)
  1750. .LineStyle = xlContinuous
  1751. .ColorIndex = 0
  1752. .TintAndShade = 0
  1753. .Weight = xlThin
  1754. End With
  1755. xlSheet.Range("A1:F1").Select()
  1756. With myExcel.Selection.Font
  1757. .Name = "微軟正黑體"
  1758. .Size = 20
  1759. .Strikethrough = False
  1760. .Superscript = False
  1761. .Subscript = False
  1762. .OutlineFont = False
  1763. .Shadow = False
  1764. .Underline = xlUnderlineStyleNone
  1765. .ThemeColor = xlThemeColorLight1
  1766. .TintAndShade = 0
  1767. .ThemeFont = xlThemeFontNone
  1768. End With
  1769. xlSheet.Columns("A:A").ColumnWidth = 15.5
  1770. xlSheet.Columns("B:B").ColumnWidth = 15.5
  1771. xlSheet.Columns("C:C").ColumnWidth = 15.5
  1772. xlSheet.Columns("D:D").ColumnWidth = 15.5
  1773. xlSheet.Columns("E:E").ColumnWidth = 15.5
  1774. xlSheet.Columns("F:F").ColumnWidth = 15.5
  1775. xlSheet.Range("A1:F1").Select()
  1776. With myExcel.Selection
  1777. .HorizontalAlignment = xlCenter
  1778. .VerticalAlignment = xlCenter
  1779. .WrapText = False
  1780. .Orientation = 0
  1781. .AddIndent = False
  1782. .IndentLevel = 0
  1783. .ShrinkToFit = False
  1784. .ReadingOrder = xlContext
  1785. .MergeCells = False
  1786. End With
  1787. myExcel.Selection.Merge
  1788. xlSheet.Range("B2:C2").Select()
  1789. With myExcel.Selection
  1790. .HorizontalAlignment = xlCenter
  1791. .VerticalAlignment = xlCenter
  1792. .WrapText = False
  1793. .Orientation = 0
  1794. .AddIndent = False
  1795. .IndentLevel = 0
  1796. .ShrinkToFit = False
  1797. .ReadingOrder = xlContext
  1798. .MergeCells = False
  1799. End With
  1800. myExcel.Selection.Merge
  1801. xlSheet.Range("E2:F2").Select()
  1802. With myExcel.Selection
  1803. .HorizontalAlignment = xlCenter
  1804. .VerticalAlignment = xlCenter
  1805. .WrapText = False
  1806. .Orientation = 0
  1807. .AddIndent = False
  1808. .IndentLevel = 0
  1809. .ShrinkToFit = False
  1810. .ReadingOrder = xlContext
  1811. .MergeCells = False
  1812. End With
  1813. myExcel.Selection.Merge
  1814. xlSheet.Range("B3:C3").Select()
  1815. With myExcel.Selection
  1816. .HorizontalAlignment = xlCenter
  1817. .VerticalAlignment = xlCenter
  1818. .WrapText = False
  1819. .Orientation = 0
  1820. .AddIndent = False
  1821. .IndentLevel = 0
  1822. .ShrinkToFit = False
  1823. .ReadingOrder = xlContext
  1824. .MergeCells = False
  1825. End With
  1826. myExcel.Selection.Merge
  1827. xlSheet.Range("E3:F3").Select()
  1828. With myExcel.Selection
  1829. .HorizontalAlignment = xlCenter
  1830. .VerticalAlignment = xlCenter
  1831. .WrapText = False
  1832. .Orientation = 0
  1833. .AddIndent = False
  1834. .IndentLevel = 0
  1835. .ShrinkToFit = False
  1836. .ReadingOrder = xlContext
  1837. .MergeCells = False
  1838. End With
  1839. myExcel.Selection.Merge
  1840. xlSheet.Range("B5:C5").Select()
  1841. With myExcel.Selection
  1842. .HorizontalAlignment = xlCenter
  1843. .VerticalAlignment = xlCenter
  1844. .WrapText = False
  1845. .Orientation = 0
  1846. .AddIndent = False
  1847. .IndentLevel = 0
  1848. .ShrinkToFit = False
  1849. .ReadingOrder = xlContext
  1850. .MergeCells = False
  1851. End With
  1852. myExcel.Selection.Merge
  1853. xlSheet.Range("E5:F5").Select()
  1854. With myExcel.Selection
  1855. .HorizontalAlignment = xlCenter
  1856. .VerticalAlignment = xlCenter
  1857. .WrapText = False
  1858. .Orientation = 0
  1859. .AddIndent = False
  1860. .IndentLevel = 0
  1861. .ShrinkToFit = False
  1862. .ReadingOrder = xlContext
  1863. .MergeCells = False
  1864. End With
  1865. myExcel.Selection.Merge
  1866. xlSheet.Range("B6:F6").Select()
  1867. With myExcel.Selection
  1868. .HorizontalAlignment = xlCenter
  1869. .VerticalAlignment = xlCenter
  1870. .WrapText = False
  1871. .Orientation = 0
  1872. .AddIndent = False
  1873. .IndentLevel = 0
  1874. .ShrinkToFit = False
  1875. .ReadingOrder = xlContext
  1876. .MergeCells = False
  1877. End With
  1878. myExcel.Selection.Merge
  1879. xlSheet.Range("B7:C7").Select()
  1880. With myExcel.Selection
  1881. .HorizontalAlignment = xlCenter
  1882. .VerticalAlignment = xlCenter
  1883. .WrapText = False
  1884. .Orientation = 0
  1885. .AddIndent = False
  1886. .IndentLevel = 0
  1887. .ShrinkToFit = False
  1888. .ReadingOrder = xlContext
  1889. .MergeCells = False
  1890. End With
  1891. myExcel.Selection.Merge
  1892. xlSheet.Range("E7:F7").Select()
  1893. With myExcel.Selection
  1894. .HorizontalAlignment = xlCenter
  1895. .VerticalAlignment = xlCenter
  1896. .WrapText = False
  1897. .Orientation = 0
  1898. .AddIndent = False
  1899. .IndentLevel = 0
  1900. .ShrinkToFit = False
  1901. .ReadingOrder = xlContext
  1902. .MergeCells = False
  1903. End With
  1904. myExcel.Selection.Merge
  1905. xlSheet.Range("A8:B8").Select()
  1906. With myExcel.Selection
  1907. .HorizontalAlignment = xlCenter
  1908. .VerticalAlignment = xlCenter
  1909. .WrapText = False
  1910. .Orientation = 0
  1911. .AddIndent = False
  1912. .IndentLevel = 0
  1913. .ShrinkToFit = False
  1914. .ReadingOrder = xlContext
  1915. .MergeCells = False
  1916. End With
  1917. myExcel.Selection.Merge
  1918. xlSheet.Range("E8:F8").Select()
  1919. With myExcel.Selection
  1920. .HorizontalAlignment = xlCenter
  1921. .VerticalAlignment = xlCenter
  1922. .WrapText = False
  1923. .Orientation = 0
  1924. .AddIndent = False
  1925. .IndentLevel = 0
  1926. .ShrinkToFit = False
  1927. .ReadingOrder = xlContext
  1928. .MergeCells = False
  1929. End With
  1930. myExcel.Selection.Merge
  1931. For i As Integer = 9 To N2 - 1
  1932. xlSheet.Range("A" & i & ":B" & i).Select()
  1933. With myExcel.Selection
  1934. .HorizontalAlignment = xlCenter
  1935. .VerticalAlignment = xlCenter
  1936. .WrapText = False
  1937. .Orientation = 0
  1938. .AddIndent = False
  1939. .IndentLevel = 0
  1940. .ShrinkToFit = False
  1941. .ReadingOrder = xlContext
  1942. .MergeCells = False
  1943. End With
  1944. myExcel.Selection.Merge
  1945. xlSheet.Range("E" & i & ":F" & i).Select()
  1946. With myExcel.Selection
  1947. .HorizontalAlignment = xlCenter
  1948. .VerticalAlignment = xlCenter
  1949. .WrapText = False
  1950. .Orientation = 0
  1951. .AddIndent = False
  1952. .IndentLevel = 0
  1953. .ShrinkToFit = False
  1954. .ReadingOrder = xlContext
  1955. .MergeCells = False
  1956. End With
  1957. myExcel.Selection.Merge
  1958. Next i
  1959. xlSheet.Range("A" & N2 & ":F" & N2).Select()
  1960. With myExcel.Selection
  1961. .HorizontalAlignment = xlCenter
  1962. .VerticalAlignment = xlCenter
  1963. .WrapText = False
  1964. .Orientation = 0
  1965. .AddIndent = False
  1966. .IndentLevel = 0
  1967. .ShrinkToFit = False
  1968. .ReadingOrder = xlContext
  1969. .MergeCells = False
  1970. End With
  1971. myExcel.Selection.Merge
  1972. xlSheet.Range("B" & N2 + 1 & ":C" & N2 + 1).Select()
  1973. With myExcel.Selection
  1974. .HorizontalAlignment = xlCenter
  1975. .VerticalAlignment = xlCenter
  1976. .WrapText = False
  1977. .Orientation = 0
  1978. .AddIndent = False
  1979. .IndentLevel = 0
  1980. .ShrinkToFit = False
  1981. .ReadingOrder = xlContext
  1982. .MergeCells = False
  1983. End With
  1984. myExcel.Selection.Merge
  1985. xlSheet.Range("E" & N2 + 1 & ":F" & N2 + 1).Select()
  1986. With myExcel.Selection
  1987. .HorizontalAlignment = xlCenter
  1988. .VerticalAlignment = xlCenter
  1989. .WrapText = False
  1990. .Orientation = 0
  1991. .AddIndent = False
  1992. .IndentLevel = 0
  1993. .ShrinkToFit = False
  1994. .ReadingOrder = xlContext
  1995. .MergeCells = False
  1996. End With
  1997. myExcel.Selection.Merge
  1998. xlSheet.Range("B" & N2 + 3 & ":C" & N2 + 3).Select()
  1999. With myExcel.Selection
  2000. .HorizontalAlignment = xlCenter
  2001. .VerticalAlignment = xlCenter
  2002. .WrapText = False
  2003. .Orientation = 0
  2004. .AddIndent = False
  2005. .IndentLevel = 0
  2006. .ShrinkToFit = False
  2007. .ReadingOrder = xlContext
  2008. .MergeCells = False
  2009. End With
  2010. myExcel.Selection.Merge
  2011. xlSheet.Range("E" & N2 + 3 & ":F" & N2 + 3).Select()
  2012. With myExcel.Selection
  2013. .HorizontalAlignment = xlCenter
  2014. .VerticalAlignment = xlCenter
  2015. .WrapText = False
  2016. .Orientation = 0
  2017. .AddIndent = False
  2018. .IndentLevel = 0
  2019. .ShrinkToFit = False
  2020. .ReadingOrder = xlContext
  2021. .MergeCells = False
  2022. End With
  2023. myExcel.Selection.Merge
  2024. xlSheet.Range("B" & N2 + 4 & ":F" & N2 + 4).Select()
  2025. With myExcel.Selection
  2026. .HorizontalAlignment = xlCenter
  2027. .VerticalAlignment = xlCenter
  2028. .WrapText = False
  2029. .Orientation = 0
  2030. .AddIndent = False
  2031. .IndentLevel = 0
  2032. .ShrinkToFit = False
  2033. .ReadingOrder = xlContext
  2034. .MergeCells = False
  2035. End With
  2036. myExcel.Selection.Merge
  2037. xlSheet.Range("B" & N2 + 5 & ":C" & N2 + 5).Select()
  2038. With myExcel.Selection
  2039. .HorizontalAlignment = xlCenter
  2040. .VerticalAlignment = xlCenter
  2041. .WrapText = False
  2042. .Orientation = 0
  2043. .AddIndent = False
  2044. .IndentLevel = 0
  2045. .ShrinkToFit = False
  2046. .ReadingOrder = xlContext
  2047. .MergeCells = False
  2048. End With
  2049. myExcel.Selection.Merge
  2050. xlSheet.Range("E" & N2 + 5 & ":F" & N2 + 5).Select()
  2051. With myExcel.Selection
  2052. .HorizontalAlignment = xlCenter
  2053. .VerticalAlignment = xlCenter
  2054. .WrapText = False
  2055. .Orientation = 0
  2056. .AddIndent = False
  2057. .IndentLevel = 0
  2058. .ShrinkToFit = False
  2059. .ReadingOrder = xlContext
  2060. .MergeCells = False
  2061. End With
  2062. myExcel.Selection.Merge
  2063. xlSheet.Range("B" & N2 + 6 & ":F" & N2 + 6).Select()
  2064. With myExcel.Selection
  2065. .HorizontalAlignment = xlCenter
  2066. .VerticalAlignment = xlCenter
  2067. .WrapText = True
  2068. .Orientation = 0
  2069. .AddIndent = False
  2070. .IndentLevel = 0
  2071. .ShrinkToFit = False
  2072. .ReadingOrder = xlContext
  2073. .MergeCells = False
  2074. End With
  2075. myExcel.Selection.Merge
  2076. xlSheet.Range("B" & N2 + 7 & ":F" & N2 + 7).Select()
  2077. With myExcel.Selection
  2078. .HorizontalAlignment = xlCenter
  2079. .VerticalAlignment = xlCenter
  2080. .WrapText = False
  2081. .Orientation = 0
  2082. .AddIndent = False
  2083. .IndentLevel = 0
  2084. .ShrinkToFit = False
  2085. .ReadingOrder = xlContext
  2086. .MergeCells = False
  2087. End With
  2088. myExcel.Selection.Merge
  2089. For i = 1 To N2 + 6
  2090. xlSheet.Rows(i).RowHeight = xlSheet.Rows(i).RowHeight + 5
  2091. Next i
  2092. xlSheet.Rows(N2 + 6).RowHeight = xlSheet.Rows(N2 + 6).RowHeight + 20
  2093. xlSheet.Rows(N2 + 7).RowHeight = xlSheet.Rows(N2 + 7).RowHeight + 5
  2094. myExcel.Application.PrintCommunication = False
  2095. With myExcel.ActiveSheet.PageSetup
  2096. .PrintTitleRows = ""
  2097. .PrintTitleColumns = ""
  2098. End With
  2099. myExcel.Application.PrintCommunication = True
  2100. myExcel.ActiveSheet.PageSetup.PrintArea = ""
  2101. myExcel.Application.PrintCommunication = False
  2102. With myExcel.ActiveSheet.PageSetup
  2103. .LeftHeader = ""
  2104. .CenterHeader = ""
  2105. .RightHeader = ""
  2106. .LeftFooter = ""
  2107. .CenterFooter = ""
  2108. .RightFooter = ""
  2109. .LeftMargin = myExcel.Application.InchesToPoints(0.25)
  2110. .RightMargin = myExcel.Application.InchesToPoints(0.25)
  2111. .TopMargin = myExcel.Application.InchesToPoints(0.75)
  2112. .BottomMargin = myExcel.Application.InchesToPoints(0.75)
  2113. .HeaderMargin = myExcel.Application.InchesToPoints(0.3)
  2114. .FooterMargin = myExcel.Application.InchesToPoints(0.3)
  2115. .PrintHeadings = False
  2116. .PrintGridlines = False
  2117. .CenterHorizontally = False
  2118. .CenterVertically = False
  2119. .Draft = False
  2120. .FirstPageNumber = xlAutomatic
  2121. .BlackAndWhite = False
  2122. .Zoom = False
  2123. .FitToPagesWide = 1
  2124. .FitToPagesTall = False
  2125. .OddAndEvenPagesHeaderFooter = False
  2126. .DifferentFirstPageHeaderFooter = False
  2127. .ScaleWithDocHeaderFooter = True
  2128. .AlignMarginsHeaderFooter = True
  2129. .EvenPage.LeftHeader.Text = ""
  2130. .EvenPage.CenterHeader.Text = ""
  2131. .EvenPage.RightHeader.Text = ""
  2132. .EvenPage.LeftFooter.Text = ""
  2133. .EvenPage.CenterFooter.Text = ""
  2134. .EvenPage.RightFooter.Text = ""
  2135. .FirstPage.LeftHeader.Text = ""
  2136. .FirstPage.CenterHeader.Text = ""
  2137. .FirstPage.RightHeader.Text = ""
  2138. .FirstPage.LeftFooter.Text = ""
  2139. .FirstPage.CenterFooter.Text = ""
  2140. .FirstPage.RightFooter.Text = ""
  2141. End With
  2142. myExcel.Application.PrintCommunication = True
  2143. End Sub
  2144. Private Sub BB1(ByVal myExcel As Microsoft.Office.Interop.Excel.Application, ByVal xlSheet As Microsoft.Office.Interop.Excel.Worksheet)
  2145. xlSheet.Cells.Select()
  2146. With myExcel.Selection.Font
  2147. .Name = "微軟正黑體"
  2148. .Size = 11
  2149. .Strikethrough = False
  2150. .Superscript = False
  2151. .Subscript = False
  2152. .OutlineFont = False
  2153. .Shadow = False
  2154. .Underline = xlUnderlineStyleNone
  2155. .ThemeColor = xlThemeColorLight1
  2156. .TintAndShade = 0
  2157. .ThemeFont = xlThemeFontNone
  2158. End With
  2159. xlSheet.Range("A4:H" & N2 + 6).Select()
  2160. myExcel.Selection.Borders(xlDiagonalDown).LineStyle = xlNone
  2161. myExcel.Selection.Borders(xlDiagonalUp).LineStyle = xlNone
  2162. With myExcel.Selection.Borders(xlEdgeLeft)
  2163. .LineStyle = xlContinuous
  2164. .ColorIndex = 0
  2165. .TintAndShade = 0
  2166. .Weight = xlThin
  2167. End With
  2168. With myExcel.Selection.Borders(xlEdgeTop)
  2169. .LineStyle = xlContinuous
  2170. .ColorIndex = 0
  2171. .TintAndShade = 0
  2172. .Weight = xlThin
  2173. End With
  2174. With myExcel.Selection.Borders(xlEdgeBottom)
  2175. .LineStyle = xlContinuous
  2176. .ColorIndex = 0
  2177. .TintAndShade = 0
  2178. .Weight = xlThin
  2179. End With
  2180. With myExcel.Selection.Borders(xlEdgeRight)
  2181. .LineStyle = xlContinuous
  2182. .ColorIndex = 0
  2183. .TintAndShade = 0
  2184. .Weight = xlThin
  2185. End With
  2186. With myExcel.Selection.Borders(xlInsideVertical)
  2187. .LineStyle = xlContinuous
  2188. .ColorIndex = 0
  2189. .TintAndShade = 0
  2190. .Weight = xlThin
  2191. End With
  2192. With myExcel.Selection.Borders(xlInsideHorizontal)
  2193. .LineStyle = xlContinuous
  2194. .ColorIndex = 0
  2195. .TintAndShade = 0
  2196. .Weight = xlThin
  2197. End With
  2198. xlSheet.Range("A1:H1").Select()
  2199. With myExcel.Selection.Font
  2200. .Name = "微軟正黑體"
  2201. .Size = 16
  2202. .Strikethrough = False
  2203. .Superscript = False
  2204. .Subscript = False
  2205. .OutlineFont = False
  2206. .Shadow = False
  2207. .Underline = xlUnderlineStyleNone
  2208. .ThemeColor = xlThemeColorLight1
  2209. .TintAndShade = 0
  2210. .ThemeFont = xlThemeFontNone
  2211. End With
  2212. xlSheet.Range("A2:H2").Select()
  2213. With myExcel.Selection.Font
  2214. .Name = "微軟正黑體"
  2215. .Size = 20
  2216. .Strikethrough = False
  2217. .Superscript = False
  2218. .Subscript = False
  2219. .OutlineFont = False
  2220. .Shadow = False
  2221. .Underline = xlUnderlineStyleNone
  2222. .ThemeColor = xlThemeColorLight1
  2223. .TintAndShade = 0
  2224. .ThemeFont = xlThemeFontNone
  2225. End With
  2226. xlSheet.Columns("A:A").ColumnWidth = 14
  2227. xlSheet.Columns("B:B").ColumnWidth = 14
  2228. xlSheet.Columns("C:C").ColumnWidth = 10
  2229. xlSheet.Columns("D:D").ColumnWidth = 13
  2230. xlSheet.Columns("E:E").ColumnWidth = 13
  2231. xlSheet.Columns("F:F").ColumnWidth = 10
  2232. xlSheet.Columns("G:G").ColumnWidth = 11
  2233. xlSheet.Columns("H:H").ColumnWidth = 11
  2234. xlSheet.Columns("I:I").ColumnWidth = 25
  2235. xlSheet.Rows(N2 + 5 & ":" & N2 + 5).RowHeight = 100
  2236. xlSheet.Rows(N2 + 6 & ":" & N2 + 6).RowHeight = 35
  2237. xlSheet.Range("I:I").Select()
  2238. With myExcel.Selection
  2239. .HorizontalAlignment = xlCenter
  2240. .VerticalAlignment = xlCenter
  2241. .WrapText = True
  2242. .Orientation = 0
  2243. .AddIndent = False
  2244. .IndentLevel = 0
  2245. .ShrinkToFit = False
  2246. .ReadingOrder = xlContext
  2247. .MergeCells = False
  2248. End With
  2249. xlSheet.Range("A1:H1").Select()
  2250. With myExcel.Selection
  2251. .HorizontalAlignment = xlCenter
  2252. .VerticalAlignment = xlCenter
  2253. .WrapText = False
  2254. .Orientation = 0
  2255. .AddIndent = False
  2256. .IndentLevel = 0
  2257. .ShrinkToFit = False
  2258. .ReadingOrder = xlContext
  2259. .MergeCells = False
  2260. End With
  2261. myExcel.Selection.Merge
  2262. xlSheet.Range("A2:H2").Select()
  2263. With myExcel.Selection
  2264. .HorizontalAlignment = xlCenter
  2265. .VerticalAlignment = xlCenter
  2266. .WrapText = False
  2267. .Orientation = 0
  2268. .AddIndent = False
  2269. .IndentLevel = 0
  2270. .ShrinkToFit = False
  2271. .ReadingOrder = xlContext
  2272. .MergeCells = False
  2273. End With
  2274. myExcel.Selection.Merge
  2275. myExcel.Selection.Font.Underline = xlUnderlineStyleSingle
  2276. xlSheet.Range("A3:D3").Select()
  2277. With myExcel.Selection
  2278. .HorizontalAlignment = xlLeft
  2279. .VerticalAlignment = xlCenter
  2280. .WrapText = False
  2281. .Orientation = 0
  2282. .AddIndent = False
  2283. .IndentLevel = 0
  2284. .ShrinkToFit = False
  2285. .ReadingOrder = xlContext
  2286. .MergeCells = False
  2287. End With
  2288. myExcel.Selection.Merge
  2289. xlSheet.Range("E3:H3").Select()
  2290. With myExcel.Selection
  2291. .HorizontalAlignment = xlRight
  2292. .VerticalAlignment = xlCenter
  2293. .WrapText = False
  2294. .Orientation = 0
  2295. .AddIndent = False
  2296. .IndentLevel = 0
  2297. .ShrinkToFit = False
  2298. .ReadingOrder = xlContext
  2299. .MergeCells = False
  2300. End With
  2301. myExcel.Selection.Merge
  2302. xlSheet.Range("A4:B4").Select()
  2303. With myExcel.Selection
  2304. .HorizontalAlignment = xlLeft
  2305. .VerticalAlignment = xlCenter
  2306. .WrapText = False
  2307. .Orientation = 0
  2308. .AddIndent = False
  2309. .IndentLevel = 0
  2310. .ShrinkToFit = False
  2311. .ReadingOrder = xlContext
  2312. .MergeCells = False
  2313. End With
  2314. myExcel.Selection.Merge
  2315. xlSheet.Range("C4:D4").Select()
  2316. With myExcel.Selection
  2317. .HorizontalAlignment = xlLeft
  2318. .VerticalAlignment = xlCenter
  2319. .WrapText = False
  2320. .Orientation = 0
  2321. .AddIndent = False
  2322. .IndentLevel = 0
  2323. .ShrinkToFit = False
  2324. .ReadingOrder = xlContext
  2325. .MergeCells = False
  2326. End With
  2327. myExcel.Selection.Merge
  2328. xlSheet.Range("E4:F4").Select()
  2329. With myExcel.Selection
  2330. .HorizontalAlignment = xlLeft
  2331. .VerticalAlignment = xlCenter
  2332. .WrapText = False
  2333. .Orientation = 0
  2334. .AddIndent = False
  2335. .IndentLevel = 0
  2336. .ShrinkToFit = False
  2337. .ReadingOrder = xlContext
  2338. .MergeCells = False
  2339. End With
  2340. myExcel.Selection.Merge
  2341. xlSheet.Range("G4:H4").Select()
  2342. With myExcel.Selection
  2343. .HorizontalAlignment = xlLeft
  2344. .VerticalAlignment = xlCenter
  2345. .WrapText = False
  2346. .Orientation = 0
  2347. .AddIndent = False
  2348. .IndentLevel = 0
  2349. .ShrinkToFit = False
  2350. .ReadingOrder = xlContext
  2351. .MergeCells = False
  2352. End With
  2353. myExcel.Selection.Merge
  2354. xlSheet.Range("A5:D5").Select()
  2355. With myExcel.Selection
  2356. .HorizontalAlignment = xlLeft
  2357. .VerticalAlignment = xlCenter
  2358. .WrapText = False
  2359. .Orientation = 0
  2360. .AddIndent = False
  2361. .IndentLevel = 0
  2362. .ShrinkToFit = False
  2363. .ReadingOrder = xlContext
  2364. .MergeCells = False
  2365. End With
  2366. myExcel.Selection.Merge
  2367. xlSheet.Range("E5:F5").Select()
  2368. With myExcel.Selection
  2369. .HorizontalAlignment = xlLeft
  2370. .VerticalAlignment = xlCenter
  2371. .WrapText = False
  2372. .Orientation = 0
  2373. .AddIndent = False
  2374. .IndentLevel = 0
  2375. .ShrinkToFit = False
  2376. .ReadingOrder = xlContext
  2377. .MergeCells = False
  2378. End With
  2379. myExcel.Selection.Merge
  2380. xlSheet.Range("G5:H5").Select()
  2381. With myExcel.Selection
  2382. .HorizontalAlignment = xlLeft
  2383. .VerticalAlignment = xlCenter
  2384. .WrapText = False
  2385. .Orientation = 0
  2386. .AddIndent = False
  2387. .IndentLevel = 0
  2388. .ShrinkToFit = False
  2389. .ReadingOrder = xlContext
  2390. .MergeCells = False
  2391. End With
  2392. myExcel.Selection.Merge
  2393. xlSheet.Range("A6:B6").Select()
  2394. With myExcel.Selection
  2395. .HorizontalAlignment = xlLeft
  2396. .VerticalAlignment = xlCenter
  2397. .WrapText = False
  2398. .Orientation = 0
  2399. .AddIndent = False
  2400. .IndentLevel = 0
  2401. .ShrinkToFit = False
  2402. .ReadingOrder = xlContext
  2403. .MergeCells = False
  2404. End With
  2405. myExcel.Selection.Merge
  2406. xlSheet.Range("C6:D6").Select()
  2407. With myExcel.Selection
  2408. .HorizontalAlignment = xlLeft
  2409. .VerticalAlignment = xlCenter
  2410. .WrapText = False
  2411. .Orientation = 0
  2412. .AddIndent = False
  2413. .IndentLevel = 0
  2414. .ShrinkToFit = False
  2415. .ReadingOrder = xlContext
  2416. .MergeCells = False
  2417. End With
  2418. myExcel.Selection.Merge
  2419. xlSheet.Range("E6:F6").Select()
  2420. With myExcel.Selection
  2421. .HorizontalAlignment = xlLeft
  2422. .VerticalAlignment = xlCenter
  2423. .WrapText = False
  2424. .Orientation = 0
  2425. .AddIndent = False
  2426. .IndentLevel = 0
  2427. .ShrinkToFit = False
  2428. .ReadingOrder = xlContext
  2429. .MergeCells = False
  2430. End With
  2431. myExcel.Selection.Merge
  2432. xlSheet.Range("G6:H6").Select()
  2433. With myExcel.Selection
  2434. .HorizontalAlignment = xlLeft
  2435. .VerticalAlignment = xlCenter
  2436. .WrapText = False
  2437. .Orientation = 0
  2438. .AddIndent = False
  2439. .IndentLevel = 0
  2440. .ShrinkToFit = False
  2441. .ReadingOrder = xlContext
  2442. .MergeCells = False
  2443. End With
  2444. myExcel.Selection.Merge
  2445. xlSheet.Range("A7:B7").Select()
  2446. With myExcel.Selection
  2447. .HorizontalAlignment = xlLeft
  2448. .VerticalAlignment = xlCenter
  2449. .WrapText = False
  2450. .Orientation = 0
  2451. .AddIndent = False
  2452. .IndentLevel = 0
  2453. .ShrinkToFit = False
  2454. .ReadingOrder = xlContext
  2455. .MergeCells = False
  2456. End With
  2457. myExcel.Selection.Merge
  2458. xlSheet.Range("D7:E7").Select()
  2459. With myExcel.Selection
  2460. .HorizontalAlignment = xlLeft
  2461. .VerticalAlignment = xlCenter
  2462. .WrapText = False
  2463. .Orientation = 0
  2464. .AddIndent = False
  2465. .IndentLevel = 0
  2466. .ShrinkToFit = False
  2467. .ReadingOrder = xlContext
  2468. .MergeCells = False
  2469. End With
  2470. myExcel.Selection.Merge
  2471. For i As Integer = 8 To N2
  2472. xlSheet.Range("A" & i & ":B" & i).Select()
  2473. With myExcel.Selection
  2474. .HorizontalAlignment = xlLeft
  2475. .VerticalAlignment = xlCenter
  2476. .WrapText = False
  2477. .Orientation = 0
  2478. .AddIndent = False
  2479. .IndentLevel = 0
  2480. .ShrinkToFit = False
  2481. .ReadingOrder = xlContext
  2482. .MergeCells = False
  2483. End With
  2484. myExcel.Selection.Merge
  2485. xlSheet.Range("D" & i & ":E" & i).Select()
  2486. With myExcel.Selection
  2487. .HorizontalAlignment = xlLeft
  2488. .VerticalAlignment = xlCenter
  2489. .WrapText = True
  2490. .Orientation = 0
  2491. .AddIndent = False
  2492. .IndentLevel = 0
  2493. .ShrinkToFit = False
  2494. .ReadingOrder = xlContext
  2495. .MergeCells = False
  2496. End With
  2497. myExcel.Selection.Merge
  2498. xlSheet.Rows(i & ":" & i).EntireRow.AutoFit
  2499. Next i
  2500. xlSheet.Range("F8:F" & N2).Select()
  2501. With myExcel.Selection
  2502. .HorizontalAlignment = xlRight
  2503. .VerticalAlignment = xlCenter
  2504. .WrapText = False
  2505. .Orientation = 0
  2506. .AddIndent = False
  2507. .IndentLevel = 0
  2508. .ShrinkToFit = False
  2509. .ReadingOrder = xlContext
  2510. .MergeCells = False
  2511. End With
  2512. xlSheet.Range("F" & N2 + 1 & ":H" & N2 + 1).Select()
  2513. With myExcel.Selection
  2514. .HorizontalAlignment = xlCenter
  2515. .VerticalAlignment = xlCenter
  2516. .WrapText = False
  2517. .Orientation = 0
  2518. .AddIndent = False
  2519. .IndentLevel = 0
  2520. .ShrinkToFit = False
  2521. .ReadingOrder = xlContext
  2522. .MergeCells = False
  2523. End With
  2524. myExcel.Selection.Merge
  2525. xlSheet.Range("E" & N2 + 2 & ":H" & N2 + 2).Select()
  2526. With myExcel.Selection
  2527. .HorizontalAlignment = xlLeft
  2528. .VerticalAlignment = xlCenter
  2529. .WrapText = False
  2530. .Orientation = 0
  2531. .AddIndent = False
  2532. .IndentLevel = 0
  2533. .ShrinkToFit = False
  2534. .ReadingOrder = xlContext
  2535. .MergeCells = False
  2536. End With
  2537. myExcel.Selection.Merge
  2538. xlSheet.Range("E" & N2 + 3 & ":H" & N2 + 4).Select()
  2539. With myExcel.Selection
  2540. .HorizontalAlignment = xlCenter
  2541. .VerticalAlignment = xlCenter
  2542. .WrapText = False
  2543. .Orientation = 0
  2544. .AddIndent = False
  2545. .IndentLevel = 0
  2546. .ShrinkToFit = False
  2547. .ReadingOrder = xlContext
  2548. .MergeCells = False
  2549. End With
  2550. myExcel.Selection.Merge
  2551. xlSheet.Range("A" & N2 + 5 & ":E" & N2 + 5).Select()
  2552. With myExcel.Selection
  2553. .HorizontalAlignment = xlLeft
  2554. .VerticalAlignment = xlCenter
  2555. .WrapText = True
  2556. .Orientation = 0
  2557. .AddIndent = False
  2558. .IndentLevel = 0
  2559. .ShrinkToFit = False
  2560. .ReadingOrder = xlContext
  2561. .MergeCells = False
  2562. End With
  2563. myExcel.Selection.Merge
  2564. xlSheet.Range("F" & N2 + 5 & ":H" & N2 + 5).Select()
  2565. With myExcel.Selection
  2566. .HorizontalAlignment = xlLeft
  2567. .VerticalAlignment = xlCenter
  2568. .WrapText = True
  2569. .Orientation = 0
  2570. .AddIndent = False
  2571. .IndentLevel = 0
  2572. .ShrinkToFit = False
  2573. .ReadingOrder = xlContext
  2574. .MergeCells = False
  2575. End With
  2576. myExcel.Selection.Merge
  2577. xlSheet.Range("A" & N2 + 6 & ":H" & N2 + 6).Select()
  2578. With myExcel.Selection
  2579. .HorizontalAlignment = xlLeft
  2580. .VerticalAlignment = xlCenter
  2581. .WrapText = True
  2582. .Orientation = 0
  2583. .AddIndent = False
  2584. .IndentLevel = 0
  2585. .ShrinkToFit = False
  2586. .ReadingOrder = xlContext
  2587. .MergeCells = False
  2588. End With
  2589. myExcel.Selection.Merge
  2590. xlSheet.Range("A7:B7,C7,D7:E7,F7,G7,H7,A" & N2 + 1 & ",A" & N2 + 2 & ",A" & N2 + 3 & ",A" & N2 + 4 & ",C" & N2 + 1 &
  2591. ",C" & N2 + 2 & ",C" & N2 + 3 & ",C" & N2 + 4 & ",E" & N2 + 1 & ",E" & N2 + 2 & ":H" & N2 + 2).Select()
  2592. With myExcel.Selection
  2593. .HorizontalAlignment = xlDistributed
  2594. .VerticalAlignment = xlCenter
  2595. .WrapText = False
  2596. .Orientation = 0
  2597. .AddIndent = False
  2598. .ShrinkToFit = False
  2599. .ReadingOrder = xlContext
  2600. End With
  2601. xlSheet.Columns("I:I").ColumnWidth = 0
  2602. myExcel.Application.PrintCommunication = False
  2603. With myExcel.ActiveSheet.PageSetup
  2604. .PrintTitleRows = ""
  2605. .PrintTitleColumns = ""
  2606. End With
  2607. myExcel.Application.PrintCommunication = True
  2608. myExcel.ActiveSheet.PageSetup.PrintArea = ""
  2609. myExcel.Application.PrintCommunication = False
  2610. With myExcel.ActiveSheet.PageSetup
  2611. .LeftHeader = ""
  2612. .CenterHeader = ""
  2613. .RightHeader = ""
  2614. .LeftFooter = ""
  2615. .CenterFooter = ""
  2616. .RightFooter = ""
  2617. .LeftMargin = myExcel.Application.InchesToPoints(0.25)
  2618. .RightMargin = myExcel.Application.InchesToPoints(0.25)
  2619. .TopMargin = myExcel.Application.InchesToPoints(0.75)
  2620. .BottomMargin = myExcel.Application.InchesToPoints(0.75)
  2621. .HeaderMargin = myExcel.Application.InchesToPoints(0.3)
  2622. .FooterMargin = myExcel.Application.InchesToPoints(0.3)
  2623. .PrintHeadings = False
  2624. .PrintGridlines = False
  2625. .CenterHorizontally = False
  2626. .CenterVertically = False
  2627. .Draft = False
  2628. .FirstPageNumber = xlAutomatic
  2629. .BlackAndWhite = False
  2630. .Zoom = False
  2631. .FitToPagesWide = 1
  2632. .FitToPagesTall = False
  2633. .OddAndEvenPagesHeaderFooter = False
  2634. .DifferentFirstPageHeaderFooter = False
  2635. .ScaleWithDocHeaderFooter = True
  2636. .AlignMarginsHeaderFooter = True
  2637. .EvenPage.LeftHeader.Text = ""
  2638. .EvenPage.CenterHeader.Text = ""
  2639. .EvenPage.RightHeader.Text = ""
  2640. .EvenPage.LeftFooter.Text = ""
  2641. .EvenPage.CenterFooter.Text = ""
  2642. .EvenPage.RightFooter.Text = ""
  2643. .FirstPage.LeftHeader.Text = ""
  2644. .FirstPage.CenterHeader.Text = ""
  2645. .FirstPage.RightHeader.Text = ""
  2646. .FirstPage.LeftFooter.Text = ""
  2647. .FirstPage.CenterFooter.Text = ""
  2648. .FirstPage.RightFooter.Text = ""
  2649. End With
  2650. myExcel.Application.PrintCommunication = True
  2651. End Sub
  2652. Private Shared Function NewMethod(xlBook As Microsoft.Office.Interop.Excel.Workbook) As Microsoft.Office.Interop.Excel.Worksheet
  2653. Return CType(xlBook.Worksheets.Add, Microsoft.Office.Interop.Excel.Worksheet)
  2654. End Function
  2655. End Class