好了,言归正传。某些文件常日保存为CSV,TXT或PRN格式,输入的每行数据由逗号,Tab或者空格分隔。这种类型的文件用Input # 语句可以比前面先容的Line Input #语句读取更快些。Input # 语句许可你从一个打开的文件中读取数据到几个变量中。下面我以CSV文件为例讲解一下这类文件利用Input #的读取过程。大家是否还记得我在之前的文章中讲过的顺序文件的整行读取呢?整行的读取用的是Line Input #语句,而我们本日用的是Input #语句。
该函数如下所示: Input #filenumber, variablelist
参数:

① Filenumber是用Open语句打开文件时的同一个号码
② variablelist是一个以逗号分开的变量清单,用来储存读取的的数据。(注1)
下面的截图例子是一个用逗号分隔数据的顺序文件:
对付CSV文件,实在它的构造是这样的:
型号,分类,数量
A123,优,12
A124,良,15
A125,优,18
A126,优,21
要读取该格式的文本的话,你可以直接明确给出每组数据的变量:型号,分类,数量
。我们看下面的代码:
Sub mynzCSV()
Dim name As String, class As String, num As Integer
Open \"大众E:\nz\work\文章\举例CSV.CSV\"大众 For Input As #1
Do While Not EOF(1)
Input #1, name, class, num
MsgBox name & \"大众, \"大众 & class & \"大众, \公众 & num
Loop
Close #1
End Sub
看看代码截图:
程序实行过程:上面的程序首先打开文件\"大众E:\nz\work\文章\举例CSV.CSV\公众读取数据;并且建立一个Do…While循环,在全体文件里循环运行,直到文件的结尾;Input #1语句用来将每行的内容读取到三个变量:name, class, num,也便是说有针对性的每次读取三个值;然后,用信息框将这三个变量的内容分组显示出来;程序末了关闭文件E:\nz\work\文章\举例CSV.CSV 。
下面见地式的运行:
1 :第一组数据:
第二组数据:
好了就举出这两组数据了。
今日内容分回向:
1 什么是CSV文件?
2 如何读取CSC文件更加方便呢?
3 上述的程序运行截图中为什么\"大众数量\"大众没有显示出来呢(赤色箭头处)?
注1:关于此变量在《VBA代码办理方案》中还会有进一步的代码实测内容。