自定义SkipLine同时读取文件vba

时间:2017-02-15 10:06:30

标签: vba ms-access access-vba

我已经写了一些vba代码来读取文本文件但是没有回车符或制表符来分隔我正在阅读的文件。

我正在使用MS Access并将文件的每一行插入到我的数据库中,当我手动将回车放入文本文件时,该数据库有效,但是当收到数据时,它不是这种格式。

对于Instance,数据当前就像

Record115022017ABCDRecord216022017DCBA

我希望数据为:

  • 第1行:Record1 15022017 ABCD
  • 第2行:Record2 16022017 DCBA

代码:

Dim file As String

file = ("C:\data.txt")

Open file For Input As #1

i = 1

While EOF(1) = False

Line Input #1, strLine


DATABASE INSERT STATEMENT

**Start reading New Line of File**

i = i + 1


Wend
Close #1

所以我只需要帮助就用有效代码替换文本开始阅读新文件行。非常感谢任何帮助

1 个答案:

答案 0 :(得分:1)

您可以使用Mid:

将线分割成两行
s = "Record115022017ABCDRecord216022017DCBA"
l1 = "Line" & Str(i) & ": " & Mid(s, 1, 6) & " " & Mid(s, 7, 1) & " " & Mid(s, 8, 8) & " " & Mid(s, 16, 4) 
l2 = "Line" & Str(i + 1) & ": " & Mid(s, 20, 6) & " " & Mid(s, 26, 1) & " " & Mid(s, 27, 8) & " " & Mid(s, 35, 4)

将输出两行:

Line 0: Record 1 15022017 ABCD
Line 1: Record 2 16022017 DCBA

调整你的循环以让步骤2。