【发布时间】:2016-07-17 07:03:51
【问题描述】:
在 VBA 中,我需要导入一些 R 生成的 CSV 文件。但是split函数没有正常工作,给了Type mismatch。我最好的猜测是:VBA 在每个导入的行之间添加了双引号。所以第一行变成" 47.27284, 130.5583, 44.826609, 189.905367"。我尝试使用replace 或remove the first and last character 删除双引号,但错误仍然存在。有什么建议可以解决这个问题吗?
CSV 文件
dose_BMD_r, dose_ED_r, dose_BMD_c, dose_ED_c
47.27284, 130.5583, 44.826609, 189.905367
47.27284, 130.5583, 52.226171, 233.338840
47.27284, 130.5583, 8.484266, 6.887616
VBA 代码
lin_ind = 1
Open text_fn For Input As #1
Do Until EOF(1)
Line Input #1, textline
If lin_ind = 1 Then
'Do nothing
Else
textline_1 = Split(textline, ",")
End If
lin_ind = lin_ind + 1
Loop
Close #1
【问题讨论】:
-
textline_1是如何声明的? -
我将它声明为字符串。
-
你能包括你的声明吗?您是否验证了您对双引号的怀疑?如果它添加引号,我会感到惊讶。
-
感谢您的建议。使用
Dim textline As String, textline_1 As Variant可以解决问题。