我正在使用ADO查詢文本文件以將數據導入Excel。ADO文本文件查詢 - 通過逗號分隔的結果
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & filePath & ";" & _
"Extended Properties='text';"
rs.Open "SELECT * FROM " & fileName, cn
wsImport.Range("A1").CopyFromRecordset rs
我正面臨的問題是查詢結果被拆分,用逗號作爲分隔符。這意味着當我將數據寫入工作表時,它會跨越多個列輸出。
我已經確認它在查詢階段被拆分,而不是在將數據寫入工作表階段。當我希望在創建的記錄集的第一個字段(允許將數據寫入工作表的A列)中訪問所有數據時,我必須使用rs.Fields(0)
和rs.Fields(1)
訪問某些數據行。
任何人都可以澄清我如何查詢文本文件,而不是任何分隔符分裂數據?
我也試過在擴展屬性中使用下面的內容。
Extended Properties='text;HDR=Yes;FMT=Delimited';
和
Extended Properties='text;HDR=Yes;FMT=FixedLength';
你需要創建一個schema.ini文件,但我真的不能明白爲什麼你會使用ADO的一切都在這裏,而不僅僅是閱讀的文本文件轉換成一個變量,分裂成一個數組在每個換行符,然後將數組放入工作表中。 – Rory
感謝您的輸入@Rory。如果你能提供一個如何工作的例子,很高興考慮你的建議?我一直以這種方式處理文本文件,假設它是從文本文件和Excel中獲取數據的最快方法。 –