将文本文件导入到Excel数据表中:
Sub ImportFromTextFile()
Dim fso AsObject, sFile AsObject, blnExist AsBoolean
Dim FileName AsString, LineText AsVariant, i AsInteger, iCol AsInteger
Const ForReading = 1
Set fso = CreateObject("Scripting.FileSystemObject") '创建FileSystemObject对象
FileName = "C:/FSOTest/testfile.txt" '指定文本文件名
blnExist = fso.FileExists(FileName) '判断文件是否存在,如果不存在,则退出过程
IfNot blnExist Then MsgBox"文件不存在!": ExitSub
Set sFile = fso.OpenTextFile(FileName,ForReading) '创建并打开名为sFile的TextStream对象
'读取第一行数据
Sheet2.Range("A1").Value= Replace(Replace(sFile.ReadLine, "[",""), "]", "")
sFile.SkipLine '跳过第二行的空行
i = 2 '设置输入单元格的起始行号
DoWhileNot sFile.AtEndOfStream '如果不是文本文件的尾端,则读取数据
LineText = Split(sFile.ReadLine, "|") '拆分读取到的数据到数组中
ForiCol = LBound(LineText) To UBound(LineText) '从数组中读取数据并写入对应的单元格
Sheet2.Cells(i, iCol + 1).Value =LineText(iCol)
NextiCol
i = i + 1 '滚动到下一个单元格行
Loop
'#这里可以加入设置单元格格式的代码
sFile.Close
Set fso = Nothing
Set sFile = Nothing
EndSub