当前位置:  开发笔记 > 后端 > 正文

打开分号分隔的CSV文件

如何解决《打开分号分隔的CSV文件》经验,为你挑选了0个好方法。

如何在Excel 2000中使用VBA打开以分号分隔的CSV文件?

样本数据

An ID;TEST20090222
A Name;Firstname Surname
A Date;11.05.2000

Country:;SomeCountryName
Currency;EUR
CostA;
CostB;
CostC;
Part1;10;20;30
Part2;;;;
Part3;34;56;87

在带有VBA 6.5.1025的Excel 2003 11.8231.8221 SP3中,我可以使用以下VBA代码打开以分号分隔的文件:

Workbooks.OpenText filename:=myFilename, _
    DataType:=xlDelimited, Semicolon:=True, Local:=True

但是,当在带有VBA 6.5.1025的Excel 2000 9.0.8961 SP1中运行相同的代码时,我收到以下错误:

编译错误:找不到命名参数

那是 - 我认为 - 因为Excel 2000不知道命名参数"Local".

因此,我删除了"Local:= True"部分.但问题是,CSV文件中的整行被写入一个单元格而不是分成单独的分号分隔部分.

我在互联网上搜索了一个解决方案,但没有发现任何有用和简洁的内容.

有任何想法吗?

[更新17.02.2009]

我尝试了用户lc和宏录制器的建议.然而,结果令人困惑.

当我使用菜单File-> Open ...打开CSV文件,然后选择CSV文件时,正确分析分号分隔数据.录制的代码非常简单:

Workbooks.Open filename:= _
               "D:\testdata\Example 01 CSV\input.csv"

但是,当我在宏中使用该VBA代码时,每一行最终会再次出现在一个单元格中.

根据用户barrowc的建议,我还将Windows"区域和语言选项"设置从"德语(瑞士)"更改为"英语(美国)".即使重启Excel后,没有任何改变,同样的问题.

我想知道为什么它正在使用用户Remou的系统.您有哪些区域和语言设置?

推荐阅读
sx-March23
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有