用vb编程,怎么将csv文件中的数据的某一列取出来(假设n行8列,我要第二列的所有数据),要一个一个取
4个回答
展开全部
csv文件是带逗号格式的文本,所以直接读取即可,下面这个例子是读取出第二例数据放到一个数组中
Private Sub Command1_Click()
Dim csvfile As String
Dim d() As String
Dim i As Integer
i = 0
csvfile = "c:\file.csv" 'CSV文件路径与用户名
Open csvfile For Input As #1 '打开文件
Do While Not EOF(1) '判断是否到达文件尾部
ReDim Preserve d(i) '重新定义数组上标
Line Input #1, d(i) '读取整行数据
d(i) = Split(d(i), ",")(1) '读取这行数据按逗号分隔的第二个数据,0是第一个数据
d(i) = Replace(d(i), """", "") '如果数据希望去除两边的双引号可以添加这行代码
i = i + 1 '行数加1
Loop '循环
Close #1 '关闭文件
i = i - 1 '此时的i值是文件的行数
End Sub
Private Sub Command1_Click()
Dim csvfile As String
Dim d() As String
Dim i As Integer
i = 0
csvfile = "c:\file.csv" 'CSV文件路径与用户名
Open csvfile For Input As #1 '打开文件
Do While Not EOF(1) '判断是否到达文件尾部
ReDim Preserve d(i) '重新定义数组上标
Line Input #1, d(i) '读取整行数据
d(i) = Split(d(i), ",")(1) '读取这行数据按逗号分隔的第二个数据,0是第一个数据
d(i) = Replace(d(i), """", "") '如果数据希望去除两边的双引号可以添加这行代码
i = i + 1 '行数加1
Loop '循环
Close #1 '关闭文件
i = i - 1 '此时的i值是文件的行数
End Sub
追问
用不用在vb中添加: Microsoft Excel XX.X Object Library的引用
追答
不用的,这个是直接以文本格式打开的,只适用CSV格式的文件
d(i)这个数组里放的是你需要的数据
展开全部
就是和读文件一个道理
只不过csv是固定用逗号分隔而已
百度一下“VB 读文件” 例子很多
然后循环读取的时候
做一个双层循环
固定读第二列就可以了
只不过csv是固定用逗号分隔而已
百度一下“VB 读文件” 例子很多
然后循环读取的时候
做一个双层循环
固定读第二列就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
示意:(注意,不是示例)
Dim S(0) as String,Tmp() as String
Do While Not FileEnd '应该是 EOF
Tmp = Split(ReadNewLine,",") '读一行,并以逗号分切为字符串数组
If Ubound(Tmp)>=2 then '若存在第二列
s(Ubound(s)) = Tmp(2) '保存在S的最后一个元素中
ReDim Preserve S(Ubound(S)+1) 'S扩展一个
End If
Loop
大概意思是这样了。
Dim S(0) as String,Tmp() as String
Do While Not FileEnd '应该是 EOF
Tmp = Split(ReadNewLine,",") '读一行,并以逗号分切为字符串数组
If Ubound(Tmp)>=2 then '若存在第二列
s(Ubound(s)) = Tmp(2) '保存在S的最后一个元素中
ReDim Preserve S(Ubound(S)+1) 'S扩展一个
End If
Loop
大概意思是这样了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询