Ignorer komma
Jeg bruger følgende kode til at læse en fil ind, hvor posterne er adskilt med nogle gruppenumre og derefter de enkelte felter med liniskift - det fungerer fint, bortset fra når felterne indeholder et komma...så bliver det tolket som et nyt felt - og det skal det ikke! :-) Hvordan håndterer man lige det?Public Function impTextfile(strFile As String)
Close #1
strFile = "c:\stdImportTest2.STD"
Dim strInput As String, strConc As String, i As Integer
Open strFile For Input As #1
While Not EOF(1)
Input #1, strInput
If Trim(strInput) = "DATA" Then
GOData = True
ElseIf Trim(strInput) = "END DATA" Then
GOData = False
End If
If GOData = True Then
If StrGroup = 4305 And i <= 6 Then
insertStr = insertStr & "'" & Trim(strInput) & "', "
End If
If StrGroup = 4306 And i <= 5 Then
insertStr = insertStr & "'" & Trim(strInput) & "', "
End If
If StrGroup = 4377 And i <= 4 Then
insertStr = insertStr & "'" & Trim(strInput) & "', "
End If
If Trim(strInput) = "GROUP 00004305" Then
If Not Trim(insertStr) = "" Then
CurrentDb.Execute (Left(insertStr, Len(insertStr) - 2) & ")")
End If
StrGroup = 4305
i = 0
insertStr = "insert into GROUP4305(601, 101, 95, 599, 600, 1450, 100) values("
ElseIf Trim(strInput) = "GROUP 00004306" Then
If Not Trim(insertStr) = "" Then
CurrentDb.Execute (Left(insertStr, Len(insertStr) - 2) & ")")
End If
getRefID = CurrentDb.OpenRecordset("select id from GROUP4305 order by id desc")
strRefID = getRefID!id
StrGroup = 4306
i = 0
insertStr = "insert into GROUP4306(refid, 2092, 2125, 2165, 2091, 599, 600) values(" & strRefID & ", "
ElseIf Trim(strInput) = "GROUP 00004377" Then
If Not Trim(insertStr) = "" Then
CurrentDb.Execute (Left(insertStr, Len(insertStr) - 2) & ")")
End If
getRefID = CurrentDb.OpenRecordset("select id from GROUP4306 order by id desc")
strRefID = getRefID!id
StrGroup = 4377
i = 0
insertStr = "insert into GROUP4377(refid, 1884, 622, 100, 445, 1114) values(" & strRefID & ", "
Else
i = i + 1
End If
End If
Wend
Close
End Function
