编程论坛
注册
登录
编程论坛
→
VB6论坛
VB6如何提取CSV文件首行第12个字段内容(即L1单元格)
alickluo
发布于 2023-04-22 15:31, 761 次点击
各位老师:
VB6如何提取FR.CSV文件首行第12个字段内容(即L1单元格),L1单元格由公式构成,想提取计算后的结果到TEXT1文本框中
谢谢!
2 回复
#2
风吹过b
2023-04-22 17:57
如果 CSV 文件里保存的是公式,那就得想想办法运行公式,再得出结果
方法一:使用 EXCEL 打开文件,然后读单元格值。建议这种。这种方法还有变种,使用类似EXCEL 的控件,如 CELL 来做。
方法二:自己解析公式,自己写调整函数名(VBS提供了的函数)或自己写运算函数(VBS未提供的函数),根据参数表,取对应单元格的值填充进去,再调用 vbs 的 Eval 运算。
方法三:自己完整写出一个VBA来
。
#3
东海ECS
2023-04-24 18:57
可以使用VB6内置的FileSystemObject以及Split函数来读取CSV文件中的数据,并提取出指定的单元格内容。
下面是一个简单的示例代码,假设CSV文件名为FR.csv,待提取的单元格为L1,将结果显示在TEXT1文本框中:
程序代码:
Private
Sub
Command1_Click()
Dim
fso
As
New
FileSystemObject
Dim
ts
As
TextStream
Dim
csvText
As
String
Dim
csvArray()
As
String
Dim
l1Text
As
String
'
打开文件并读取内容到字符串变量
Set
ts = fso.OpenTextFile(
"
FR.csv
"
, ForReading)
csvText = ts.ReadAll
'
关闭文件
ts.Close
'
将字符串按行分割为数组
csvArray =
Split
(csvText, vbCrLf)
'
提取第一行的数据
Dim
row1()
As
String
row1 =
Split
(csvArray(
0
),
"
,
"
)
'
提取第12个字段(即L1单元格)的内容
l1Text = row1(
11
)
'
将提取的结果显示在TEXT1文本框中
Text1.Text = l1Text
End Sub
在代码中,首先创建一个FileSystemObject对象,打开CSV文件并读取其中的内容到一个字符串变量中。然后,使用Split函数将字符串按行分割为一个数组,并提取出其中第一行的数据。再从第一行中提取出第12个字段(即L1单元格)的内容,并将结果显示在TEXT1文本框中。
1