gpt4 book ai didi

excel - 使用 ws.QueryTables.Add 导入 CSV 时遇到问题

转载 作者:行者123 更新时间:2023-12-04 20:12:38 25 4
gpt4 key购买 nike

我无法导入 csv 文件。第一行工作正常,但其余的都是靠不住的。这是 csv 中第一行和第二行的示例:

"Order # ","Purchased From (Store)","Purchased On","Bill to Name","Ship to Name","G.T. (Base)","G.T. (Purchased)",Status
202366,"RaD.com
Ra D
Ra D Default View
","Dec 26, 2015 12:07:25 PM","John Smith","John Smith",$70.00,$70.00,Pending

订单号进入正确的单元格,但它将 RaD.com Ra D 和 Ra D 默认 View 拆分到不同单元格中的不同行。日期也被分成两个单元格,为 [,Dec 19][ 2015 12:07:25 PM"]

这是我正在使用的代码。
Sub ImportCSV(fname)
Set ws = Worksheets.Add(After:=Worksheets(Worksheets.Count))
ws.Name = "temp" & Worksheets.Count + 1


With ws.QueryTables.Add( _
Connection:="TEXT;" & fname, _
Destination:=Range("A1"))
.Name = "Temp" & Worksheets.Count + 1
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.TextFilePromptOnRefresh = False
.TextFilePlatform = xlMacintosh
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = False
.Refresh BackgroundQuery:=False
'.UseListObject = False
End With
End Sub

RaD.com 单元格不必完美格式化,它只需要在一个单元格中即可。我无法更改文本文件的格式,因为它们有数千个。

最佳答案

我测试了你的 csv 文件,一切都是正确的。只有字段"Purchased From (Store)"是多行的(如果正确引用是允许的,这里就是这种情况)。

所以你需要一个像 .TextFile 这样的参数多线什么的。我看看能不能找到一个。

日期不应该被删减,因为它也被正确引用:

"Dec 26, 2015 12:07:25 PM"

...

查找 QueryTable 的参数,但找不到多行的参数.. 奇怪。

但是您可能必须设置 QueryType xlTextImport .否则,您将不得不使用另一种方法。但是多行 csv 肯定是有效的,任何像样的 csv 解析器都不应该有问题。

So it can be multline as long as its in a cell?



是的,如果引用正确:
field1, "field
2
more data
end field2", rest of fields

如果你真的需要用 QueryTable 来做,你可以尝试使用 ODBC 连接字符串而不是 Connection:="TEXT;" .见 here .

关于excel - 使用 ws.QueryTables.Add 导入 CSV 时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34569941/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com