用vb编程,怎么将csv文件中的数据的某一列取出来(假设n行8列,我要第二列的所有数据),要一个一个取

 我来答
mafan8
推荐于2018-03-26 · TA获得超过1.7万个赞
知道小有建树答主
回答量:927
采纳率:0%
帮助的人:778万
展开全部
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
追问
用不用在vb中添加: Microsoft Excel XX.X Object Library的引用
追答
不用的,这个是直接以文本格式打开的,只适用CSV格式的文件
d(i)这个数组里放的是你需要的数据
dllgdx_2000
2012-09-26 · TA获得超过922个赞
知道小有建树答主
回答量:1202
采纳率:0%
帮助的人:755万
展开全部
就是和读文件一个道理
只不过csv是固定用逗号分隔而已
百度一下“VB 读文件” 例子很多
然后循环读取的时候
做一个双层循环
固定读第二列就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
money0_04c351c2
推荐于2017-12-16 · TA获得超过4142个赞
知道大有可为答主
回答量:5505
采纳率:49%
帮助的人:1612万
展开全部
示意:(注意,不是示例)
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
大概意思是这样了。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
nsdjk0
2012-09-26
知道答主
回答量:14
采纳率:0%
帮助的人:4.7万
展开全部
  可以解压啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式