【发布时间】:2019-03-29 15:38:30
【问题描述】:
我有一个简单的宏需要打开一个带有分号分隔符的 .csv 文件,但是当我运行我的代码时,所有数据都在第一列中,字符串中有 ;,但没有分隔。
我为 workbooks.open 方法尝试了不同的可选设置。下面我包括了我最近的尝试。
我的区域设置是英语(英国),, 作为数字分组分隔符,. 作为小数分隔符。
到目前为止我的代码:
Sub OpenCSV()
Dim FilePath as String
Dim LikeFile as String
FilePath = " C:\" ' Name of file path to fetch data from
LikeFile = Dir(FilePath & "*.csv") ' Finding file
If LikeFile <> "" Then
Workbooks.Open Filename:=FilePath & LikeFile, Format:=4, Delimiter:=";", ReadOnly:=True, Local:=True
End if
End sub
我的实际结果是它打开文件没有分隔。
我的 .csv 文件片段:
Nav as per;基金 ID;基金名称;股票类型;货币;ISIN 代码;价格 (NAV);总资产净值;优秀;Tis;Tid;份额 ccy;分享价格; TNA 份额 ccy;汇率 20190321;XX9999;NamedFund;EUI;美元;XX123123;204.563000000;165061156.750000000;806896.369000000;;欧元;180.070000000;145293919.06;1.136050000 20190321; XX9999; NamedFund; EUR; USD; XX123124; 193.437000000; 352547.160000000; 1822.538000000 ;;; EUR; 170.270000000; 310327.15; 1.136050000 20190321; XX9999; NamedFund; USI; USD; XX123125; 104.942000000; 37779152.540000000; 360000.000000000 ;;;;;; 20190321;XX9999;NamedFund;USR;USD;XX123126;0.000000000;0.000000000;0.000000000;;;;;;
【问题讨论】:
-
你能发布几行 CSV 数据的样本吗?
-
一般来说,
IMPORT一个非标准的 csv 文件比OPEN它更容易。然后你可以很容易地指定各种东西,包括分隔符。在执行宏时录制宏以获得各种选项。根据您的 Excel 版本,最好使用 VBA 或 Power Query (Get&Transform)。