ขอบคุณมากครับ ก็ได้ความรู้เพิ่มขึ้นอีกมากมาย
ขออนุญาตอาจารย์ไม่ตั้งกระทู้ใหม่นะครับ
ผมบันทึกมาโครในการนำเข้าข้อมูลจากภายนอก คือข้อมูลจากTable ที่ชื่อ FILEA จากACCESS ดังนี้
Sheets("FileA").Activate
Columns("A:V").Select
Selection.ClearContents
Selection.QueryTable.Delete
With ActiveSheet.QueryTables.Add(Connection:=Array( _
"OLEDB;Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=C:\Program Files\DumP\DATA\PALM.mdb;Mode=Share Deny Write" _
, _
";Extended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Password="""";Jet OLEDB:Engine " _
, _
"Type=5;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New " _
, _
"Database Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Comp" _
, "act=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False" _
), Destination:=Range("A1"))
.CommandType = xlCmdTable
.CommandText = Array("FILEA")
.Name = "PALM_12"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.SourceDataFile = "C:\Program Files\DumP\DATA\PALM.mdb"
.Refresh BackgroundQuery:=False
End With
Columns("A:A").Select
Selection.Delete Shift:=xlToLeft
Range("K1").Select
ActiveCell.FormulaR1C1 = "µÃÍ¡"
With ActiveCell.Characters(Start:=1, Length:=4).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("L1").Select
ActiveCell.FormulaR1C1 = "«ÍÂ"
With ActiveCell.Characters(Start:=1, Length:=3).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("M1").Select
ActiveCell.FormulaR1C1 = "¶¹¹"
With ActiveCell.Characters(Start:=1, Length:=3).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("N1").Select
ActiveCell.FormulaR1C1 = "µÓºÅ"
With ActiveCell.Characters(Start:=1, Length:=5).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("O1").Select
ActiveCell.FormulaR1C1 = "ÍÓàÀÍ"
With ActiveCell.Characters(Start:=1, Length:=6).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("P1").Select
ActiveCell.FormulaR1C1 = "¨Ñ§ËÇÑ´"
With ActiveCell.Characters(Start:=1, Length:=7).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("Q1").Select
ActiveCell.FormulaR1C1 = "àÅ¢·ÕèºÑµÃ»ÃЪҪ¹"
With ActiveCell.Characters(Start:=1, Length:=17).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("R1").Select
ActiveCell.FormulaR1C1 = "µÓá˹è§"
With ActiveCell.Characters(Start:=1, Length:=8).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("S1").Select
ActiveCell.FormulaR1C1 = "àÅ¢·Õè¤Ùèâ͹"
With ActiveCell.Characters(Start:=1, Length:=12).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("T1").Select
ActiveCell.FormulaR1C1 = "àºÍÃìâ·ÃµÔ´µèÍ"
With ActiveCell.Characters(Start:=1, Length:=14).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("U1").Select
ActiveCell.FormulaR1C1 = "ÃËÑÊä»ÃɳÕÂì"
With ActiveCell.Characters(Start:=1, Length:=12).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("V1").Select
ActiveCell.FormulaR1C1 = "´Ñª¹Õ"
With ActiveCell.Characters(Start:=1, Length:=5).Font
.Name = "Arial"
.FontStyle = "µÑÇ˹Ò"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
Range("V:V").Value = Range("A:A").Value
End With
บรรทัดนี้อยากให้มีคำสั่งให้หยุดการเชื่อมต่อข้อมูลหรือความสัมพันธ์ใดๆกับ Table ที่ชื่อFILEA (ไม่ให้เกี่ยวข้องกันอีกต่อไป)
End Sub
ผมต้องการให้นำเข้ามาแล้วก็จบ ไม่มีการเชื่อมโยงระหว่างกันอีก เพราะผมมีอีกหนึ่งคำสั่งที่ใช้โหลดข้อมูลไฟล์ธนาคารเมื่อต้องการข้อมุลที่เป็นปัจจุบัน
คำสั่งดังกล่าวจะทำการล้างข้อมูลใน PALM.mdb ทุกtable มีคำสั่งดังนี้
Sub mReadFile(sFile As String)
'On Error Resume Next
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim cData As String
Dim cSQL As String
Dim oPROG2 As Object
Dim sFileOpen As String
Dim iLine, iMAX As Long
Dim sTemp As String
Dim iInstr As Byte
iLine = 1
iMAX = 1
sFileOpen = frmMain.txtFolder & "\" & sFile
cData = ThisWorkbook.Path + "\data\PALM.mdb"
'=============================
frmbranch.ProgressBar2.BorderStyle = ccFixedSingle
Select Case sFile
Case "FILEA" '---------------------------------------------------------------------------------------------
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + cData 'ãªé OLEDB ¢Í§ Jet Engine ADO 2.7 Libraly
cn.Execute "DELETE * FROM FILEA"
'ล้างข้อมูลทั้งหมด ตำแน่งที่Debug ไม่สามารถล้างได้เพราะtableดังกล่าวถูกใช้ข้อมูลอยู่จากคำสั่งแรก
cSQL = "select * from FILEA"
rs.Open cSQL, cn, adUseClient, adLockPessimistic, adCmdText
Set oPROG2 = frmbranch.ProgressBar2
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
iMAX = iMAX + 1
Wend
Close #1
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
rs.AddNew
rs.Fields(0).Value = Mid(sTemp, 1, 4) ' ˹èÇ rs ¤ÍÅÑÁ¹ìááàÃÔèÁµé¹ 0
rs.Fields(1).Value = (Mid(sTemp, 5, 5)) ' àÅ¢·ÐàºÕ¹
rs.Fields(2).Value = (Mid(sTemp, 10, 3)) ' ¡ÅØèÁ
rs.Fields(3).Value = Mid(sTemp, 13, 2) ' ࢵ
rs.Fields(4).Value = fClass(Mid(sTemp, 15, 1)) ' ÃËÑÊ˹Õé ªÑé¹ÅÙ¡¤éÒ
rs.Fields(5).Value = Trim(Mid(sTemp, 16, 35)) 'ª×èÍÊ¡ØÅ
rs.Fields(6).Value = Trim(Mid(sTemp, 51, 14)) '¤ÙèÊÁÃÊ
rs.Fields(7).Value = Trim(Mid(sTemp, 65, 26)) '·ÕèÍÂÙè
rs.Fields(8).Value = Mid(sTemp, 91, 1) ' ʶҹÐ
'᡺éÒ¹àÅ¢·ÕèáÅÐËÁÙè¤Ñè¹´éÇ #
sTemp = fCutAdress(rs.Fields(7)) '·ÕèÍÂÙè
iInstr = InStrRev(sTemp, "#")
rs.Fields(9).Value = Mid(sTemp, 1, iInstr - 1) 'ºéÒ¹àÅ¢·Õè text
rs.Fields(10).Value = Val(Mid(sTemp, iInstr + 1)) 'ËÁÙè Num ãªé cLng äÁè¼èÒ¹
iLine = iLine + 1
oPROG2 = iLine / iMAX * 100
Wend
Close #1
rs.Update
oPROG2 = 0
rs.Close: cn.Close
Case "FILEB" '---------------------------------------------------------------------------------------------
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + cData
cn.Execute "DELETE * FROM FILEB" 'ÅéÒ§¢éÍÁÙÅ·Ñé§ËÁ´
cSQL = "select * from FILEB"
rs.Open cSQL, cn, adUseClient, adLockPessimistic, adCmdText
Set oPROG2 = frmbranch.ProgressBar2
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
iMAX = iMAX + 1
Wend
Close #1
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
rs.AddNew
'Cells(iLine + 5, 1) = sTemp
rs.Fields(0).Value = Mid(sTemp, 1, 8) 'ÊÑÒ
rs.Fields(1).Value = Mid(sTemp, 9, 4) '˹èÇÂ
rs.Fields(2).Value = Mid(sTemp, 13, 5) 'àÅ¢·ÐàºÕ¹
rs.Fields(3).Value = Mid(sTemp, 18, 3) '¡ÅØèÁ
rs.Fields(4).Value = Mid(sTemp, 21, 2) '»ÃÐàÀ·ÊÑÒ
rs.Fields(5).Value = fClass(Mid(sTemp, 23, 1)) 'ªÑé¹
rs.Fields(6).Value = Mid(sTemp, 24, 1) 'ËÅÑ¡»ÃСѹ
rs.Fields(7).Value = Mid(sTemp, 25, 9) 'ǧà§Ô¹¡Ùé
rs.Fields(8).Value = Mid(sTemp, 34, 9) 'â͹à§Ô¹¡Ùé
rs.Fields(9).Value = Mid(sTemp, 43, 4) 'ÊÑÒÊÔé¹ÊØ´
rs.Fields(10).Value = Mid(sTemp, 47, 5) / 1000 '
rs.Fields(11).Value = Mid(sTemp, 52, 9) '
rs.Fields(12).Value = Mid(sTemp, 61, 5) / 1000 '
rs.Fields(13).Value = Mid(sTemp, 66, 9) '
rs.Fields(14).Value = Mid(sTemp, 75, 1) '
rs.Fields(15).Value = Mid(sTemp, 76, 1) '
rs.Fields(16).Value = Mid(sTemp, 77, 2) '
rs.Fields(17).Value = Mid(sTemp, 79, 12) / 1000 '´Í¡àºÕéÂ
rs.Fields(18).Value = Mid(sTemp, 91, 12) '
iLine = iLine + 1
oPROG2 = iLine / iMAX * 100
Wend
Close #1
oPROG2 = 0
rs.Update
rs.Close: cn.Close
Case "FILEC" '----------------¤Òº----------------------------------------------------------------
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + cData
cn.Execute "DELETE * FROM FILEC_DUE " 'ÅéÒ§¢éÍÁÙÅ·Ñé§ËÁ´
cSQL = "select * from FILEC_DUE"
rs.Open cSQL, cn, adUseClient, adLockPessimistic, adCmdText
Set oPROG2 = frmbranch.ProgressBar2
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
iMAX = iMAX + 1
Wend
Dim sACC As String
Close #1
Open sFileOpen For Input As #1
Do While Not EOF(1)
Line Input #1, sTemp
sACC = Mid(sTemp, 1, 8)
If Mid(sTemp, 14, 7) = "0000000" Then GoTo DOLOOP
rs.AddNew
rs.Fields(0).Value = sACC
'rs.Fields(1).Value = Mid(sTemp, 10, 4) ' §Ç´µé¹
rs.Fields(1).Value = Mid(sTemp, 10, 2) '»Õ
rs.Fields(2).Value = Mid(sTemp, 12, 2) 'à´×͹
rs.Fields(3).Value = Mid(sTemp, 14, 7) ' à§Ô¹
rs.Fields(4).Value = Mid(sTemp, 21, 4) ' §Ç´´Í¡
If Mid(sTemp, 29, 7) = "0000000" Then GoTo DOLOOP
rs.AddNew
rs.Fields(0).Value = sACC
'rs.Fields(1).Value = Mid(sTemp, 25, 4) ' §Ç´µé¹
rs.Fields(1).Value = Mid(sTemp, 25, 2) ' »Õ
rs.Fields(2).Value = Mid(sTemp, 27, 2) ' à´×͹
rs.Fields(3).Value = Mid(sTemp, 29, 7) ' à§Ô¹
rs.Fields(4).Value = Mid(sTemp, 36, 4) ' §Ç´´Í¡
If Mid(sTemp, 44, 7) = "0000000" Then GoTo DOLOOP
rs.AddNew
rs.Fields(0).Value = sACC
'rs.Fields(1).Value = Mid(sTemp, 40, 4) ' §Ç´µé¹
rs.Fields(1).Value = Mid(sTemp, 40, 2) ' »Õ
rs.Fields(2).Value = Mid(sTemp, 42, 2) ' à´×͹
rs.Fields(3).Value = Mid(sTemp, 44, 7) ' à§Ô¹
rs.Fields(4).Value = Mid(sTemp, 51, 4) ' §Ç´´Í¡
If Mid(sTemp, 59, 7) = "0000000" Then GoTo DOLOOP
rs.AddNew
rs.Fields(0).Value = sACC
'rs.Fields(1).Value = Mid(sTemp, 55, 4) ' §Ç´µé¹
rs.Fields(1).Value = Mid(sTemp, 55, 2) ' »Õ
rs.Fields(2).Value = Mid(sTemp, 57, 2) ' à´×͹
rs.Fields(3).Value = Mid(sTemp, 59, 7) ' à§Ô¹
rs.Fields(4).Value = Mid(sTemp, 66, 4) ' §Ç´´Í¡
If Mid(sTemp, 74, 7) = "0000000" Then GoTo DOLOOP
rs.AddNew
rs.Fields(0).Value = sACC
'rs.Fields(1).Value = Mid(sTemp, 70, 4) ' §Ç´µé¹
rs.Fields(1).Value = Mid(sTemp, 70, 2) ' »Õ
rs.Fields(2).Value = Mid(sTemp, 72, 2) ' à´×͹
rs.Fields(3).Value = Mid(sTemp, 74, 7) ' à§Ô¹
rs.Fields(4).Value = Mid(sTemp, 81, 4) ' §Ç´´Í¡
If Mid(sTemp, 89, 7) = "0000000" Then GoTo DOLOOP
rs.AddNew
rs.Fields(0).Value = sACC
'rs.Fields(1).Value = Mid(sTemp, 85, 4) ' §Ç´µé¹
rs.Fields(1).Value = Mid(sTemp, 85, 2) ' »Õ
rs.Fields(2).Value = Mid(sTemp, 87, 2) ' à´×͹
rs.Fields(3).Value = Mid(sTemp, 89, 7) ' à§Ô¹
rs.Fields(4).Value = Mid(sTemp, 96, 4) ' §Ç´´Í¡
If Mid(sTemp, 104, 7) = "0000000" Then GoTo DOLOOP
rs.AddNew
rs.Fields(0).Value = sACC
'rs.Fields(1).Value = Mid(sTemp, 100, 4) ' §Ç´µé¹
rs.Fields(1).Value = Mid(sTemp, 100, 2) ' »Õ
rs.Fields(2).Value = Mid(sTemp, 102, 2) ' à´×͹
rs.Fields(3).Value = Mid(sTemp, 104, 7) ' à§Ô¹
rs.Fields(4).Value = Mid(sTemp, 111, 4) ' §Ç´´Í¡
If Mid(sTemp, 119, 7) = "0000000" Then GoTo DOLOOP
rs.AddNew
rs.Fields(0).Value = sACC
'rs.Fields(1).Value = Mid(sTemp, 115, 4) ' §Ç´µé¹
rs.Fields(1).Value = Mid(sTemp, 115, 2) ' »Õ
rs.Fields(2).Value = Mid(sTemp, 117, 2) ' à´×͹
rs.Fields(3).Value = Mid(sTemp, 119, 7) ' à§Ô¹
rs.Fields(4).Value = Mid(sTemp, 126, 4) ' §Ç´´Í¡
DOLOOP: 'ǹÅÙ»ãËÁè
iLine = iLine + 1
oPROG2 = iLine / iMAX * 100
Loop
Close #1
rs.Update
oPROG2 = 0
rs.Close: cn.Close
Case "FILED" '---------------------------------------------------------------------------------------------
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + cData 'ãªé OLEDB ¢Í§ Jet Engine ADO 2.7 Libraly
cn.Execute "DELETE * FROM FILED" 'ÅéÒ§¢éÍÁÙÅ·Ñé§ËÁ´
cSQL = "select * from FILED"
rs.Open cSQL, cn, adUseClient, adLockPessimistic, adCmdText
Set oPROG2 = frmbranch.ProgressBar2
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
iMAX = iMAX + 1
Wend
Close #1
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
rs.AddNew
rs.Fields(0).Value = Mid(sTemp, 1, 8)
rs.Fields(1).Value = Mid(sTemp, 9, 1)
rs.Fields(2).Value = Mid(sTemp, 10, 6)
iLine = iLine + 1
oPROG2 = iLine / iMAX * 100
Wend
Close #1
rs.Update
oPROG2 = 0
rs.Close: cn.Close
Case "CHKDUE" '---------¤ÕÂìµÒÁ˹Õé---------------------------------------------------------------------------
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + cData
cn.Execute "DELETE * FROM CHKDUE" 'ÅéÒ§¢éÍÁÙÅ·Ñé§ËÁ´
cSQL = "select * from CHKDUE"
rs.Open cSQL, cn, adUseClient, adLockPessimistic, adCmdText
Set oPROG2 = frmbranch.ProgressBar2
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
iMAX = iMAX + 1
Wend
Close #1
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
rs.AddNew
rs.Fields(0).Value = Mid(sTemp, 1, 4)
rs.Fields(1).Value = Mid(sTemp, 5, 5)
rs.Fields(2).Value = Mid(sTemp, 10, 3)
rs.Fields(3).Value = Mid(sTemp, 13, 7)
rs.Fields(4).Value = Mid(sTemp, 20, 6)
rs.Fields(5).Value = Mid(sTemp, 26, 6)
rs.Fields(6).Value = Mid(sTemp, 32, 9)
rs.Fields(7).Value = Mid(sTemp, 41, 7)
rs.Fields(8).Value = Trim(Mid(sTemp, 48, 50))
rs.Fields(9).Value = Mid(sTemp, 98, 2)
iLine = iLine + 1
oPROG2 = iLine / iMAX * 100
Wend
Close #1
rs.Update
oPROG2 = 0
rs.Close: cn.Close
Case "CHKMAN" '---------------------------------------------------------------------------------------------
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + cData
cn.Execute "DELETE * FROM CHKMAN"
cSQL = "select * from CHKMAN"
rs.Open cSQL, cn, adUseClient, adLockPessimistic, adCmdText
Set oPROG2 = frmbranch.ProgressBar2
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
iMAX = iMAX + 1
Wend
Close #1
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
rs.AddNew
rs.Fields(0).Value = Mid(sTemp, 1, 7)
rs.Fields(1).Value = Mid(sTemp, 8, 50)
iLine = iLine + 1
oPROG2 = iLine / iMAX * 100
Wend
Close #1
rs.Update
oPROG2 = 0
rs.Close: cn.Close
Case "PER1GARA" '---------------------------------------------------------------------------------------------
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + cData
cn.Execute "DELETE * FROM PER1GARA"
cSQL = "select * from PER1GARA"
rs.Open cSQL, cn, adUseClient, adLockPessimistic, adCmdText
Set oPROG2 = frmbranch.ProgressBar2
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
iMAX = iMAX + 1
Wend
Close #1
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
rs.AddNew
rs.Fields(0).Value = Mid(sTemp, 1, 8)
rs.Fields(1).Value = Mid(sTemp, 9, 4)
rs.Fields(2).Value = Mid(sTemp, 13, 5)
rs.Fields(3).Value = Mid(sTemp, 18, 4)
rs.Fields(4).Value = Mid(sTemp, 22, 5)
iLine = iLine + 1
oPROG2 = iLine / iMAX * 100
Wend
Close #1
rs.Update
oPROG2 = 0
rs.Close: cn.Close
Case "PERGARAN" '---------------------------------------------------------------------------------------------
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + cData
cn.Execute "DELETE * FROM PERGARAN"
cSQL = "select * from PERGARAN"
rs.Open cSQL, cn, adUseClient, adLockPessimistic, adCmdText
Set oPROG2 = frmbranch.ProgressBar2
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
iMAX = iMAX + 1
Wend
Close #1
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
rs.AddNew
rs.Fields(0).Value = Mid(sTemp, 1, 4)
rs.Fields(1).Value = Mid(sTemp, 5, 5)
rs.Fields(2).Value = Mid(sTemp, 10, 4)
rs.Fields(3).Value = Mid(sTemp, 14, 5)
rs.Fields(4).Value = Mid(sTemp, 19, 4)
rs.Fields(5).Value = Mid(sTemp, 23, 5)
iLine = iLine + 1
oPROG2 = iLine / iMAX * 100
Wend
Close #1
rs.Update
oPROG2 = 0
rs.Close: cn.Close
Case "REGASSET" '---------------------------------------------------------------------------------------------
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + cData
cn.Execute "DELETE * FROM REGASSET"
cSQL = "select * from REGASSET"
rs.Open cSQL, cn, adUseClient, adLockPessimistic, adCmdText
Set oPROG2 = frmbranch.ProgressBar2
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
iMAX = iMAX + 1
Wend
Close #1
Open sFileOpen For Input As #1
While Not EOF(1)
Line Input #1, sTemp
rs.AddNew
rs.Fields(0).Value = Mid(sTemp, 1, 4)
rs.Fields(1).Value = Mid(sTemp, 5, 5)
rs.Fields(2).Value = Mid(sTemp, 10, 3)
rs.Fields(3).Value = Mid(sTemp, 13, 1)
rs.Fields(4).Value = Mid(sTemp, 14, 2)
rs.Fields(5).Value = Mid(sTemp, 16, 4)
rs.Fields(6).Value = Mid(sTemp, 20, 1)
rs.Fields(7).Value = Mid(sTemp, 21, 2)
rs.Fields(8).Value = Mid(sTemp, 23, 9)
iLine = iLine + 1
oPROG2 = iLine / iMAX * 100
Wend
Close #1
rs.Update
oPROG2 = 0
rs.Close: cn.Close
'// Case "control" '-------------------------------
End Select
frmbranch.ProgressBar2.BorderStyle = ccNone
End Sub
อยากส่งไฟล์ให้อาจารย์แต่ไฟล์มันใหญ่ครับ ขออภัยด้วยครับ
ถามนอกเรื่องสักนิดนะครับ เวลาcoppy คำสั่งวีบี มาวางในฟอรั่มทำยังไงไม่ให้ภาษาไทยกลายเป็นภาษาต่างดาวครับ
