通过VBA将CSV文件导入Excel不会将数据分成不同的列

我有一个包含以下内容的CSV文件filename.csv

UID;Datum;Klasse;Sendungsnr
6177;14.08.20;624;00340434299338038179
6178;14.08.20;624;00340434299338038186
6179;14.08.20;624;00340434299338038193

据我了解(hereherehere for the MS reference等...),这应该导入文件并将数据插入不同的列:

Public Sub OpenCsvFile()
    filepath = "C:\folder 1\folder 2\filename.csv"
    Workbooks.OpenText Filename:=filepath,DataType:=xlDelimited,Semicolon:=True
    End Sub

但是没有(请参阅下面的“ 更新”-文件名似乎有问题),它仅使用A列:

通过VBA将CSV文件导入Excel不会将数据分成不同的列

我尝试在其他标志上指定它,但结果保持不变:

Workbooks.OpenText Filename:=filepath,Other:=True,OtherChar:=";"

由于这不是那么困难,我想我今天只是“盲目”,问题出在哪里?

更新:我发现将“ .csv”更改为“ .txt”似乎可以解决问题:将其打开到单独的列中。这是错误还是所需的行为?我是否忽略了MS reference中的任何内容?现在的问题是,如何在不重命名文件的情况下使其正常工作(如果可以做到的话)?

Update2 :无论出于何种原因,该解决方案都是使用Local:=True作为参数(请参见重复通知中的第二个link,其中一些信息为{{3 }})。为什么这与我无法理解的文件后缀有关。

iCMS 回答:通过VBA将CSV文件导入Excel不会将数据分成不同的列

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/1737517.html

大家都在问