我想使用VBA將文本文件中的內容複製到Excel單元格中。我可以從大多數文本文件成功做到這一點。但是在某些文件的情況下,代碼只將部分數據複製到excel文件中。使用VBA將文本文件複製到Excel中時出錯
這是我用來複制
FileName = folderpath & sFile Set mytextfile = Workbooks.Open(FileName) mytextfile.Sheets(1).Cells.CurrentRegion.Copy ThisWorkbook.Sheets("RawData").Range("A" & inputRow) 'mytextfile.Sheets(1).Range("A1").CurrentRegion.Copy ThisWorkbook.Sheets("RawData").Range("A" & inputRow) mytextfile.Close (False)
我已經明白什麼是問題的代碼。在打開某些文本文件爲excel文件時,某些內容出現在單元格A1中,其餘內容出現在單元格A2中。
我不知道它爲什麼打開。我張貼下面兩個文本文件的內容:
1)文本文件,其內容在Excel
FWI 3F5A 041 g1ksIpqub7J MCMILLAN J. PIIKKILA RAYMONDBERRY @ WEBTV打開時被包含在不同的細胞!! NET +001 061 477 130 F g3ktHqrwc9 CLE!g1ksIpqub7 CLEHS04C | PO BOX 171 SEARSPORT,ME納什維爾68800 AZ | | 5150 CTY RD 525 Raleigh 64292 | 18000000 0412CL0 1 N 2
當我使用上述文本文件時,我得到了以下輸出。
FWI 3F5A 041 g1ksIpqub7J MCMILLAN J. PIIKKILA [email protected] +001 061 477 130°F g3ktHqrwc9 CLE g1ksIpqub7 CLEHS04C!|!P.O。 BOX 171 SEARSPORT
2)文本文件,其內容包含在單個單元格A1
FSJ!3U68!071!gQloo3d5OGG普雷斯利Y.餡餅JR [email protected] +001 047 475273 M gQmqq6d8ME CVE!gQloo3d5OG CVEGF07C | 10001 SW 125TH CT RD Reno 88595 TN | | 10849 DEBORAH DRIVE Glendale 70958 | 97400000 0712CV0 0 N 0
當我使用上述文本文件時,我得到了以下輸出。
FSJ 3U68 071 gQloo3d5OGG普雷斯利Y.餡餅JR [email protected] +001 047 475273中號gQmqq6d8ME CVE gQloo3d5OG CVEGF07C!|!10001 SW 125 CT RD裏諾88595 TN | | 10849 DEBORAH DRIVE Glendale 70958 | 97400000 0712CV0 0 N 0
這兩個文件的內容沒有明顯的區別。
我也試過這個代碼,但沒有成功:
FileName = folderpath & sFile
Set mytextfile = Workbooks.Open(FileName)
mytextfile.Sheets(1).Range("A1").CurrentRegion.Copy ThisWorkbook.Sheets("RawData").Range("A" & inputRow)
mytextfile.Close (False)
部分數據在哪停止?請包括失敗的輸出,以及您嘗試(如果有的話)來調試它(例如,更改它凍結的字符,確保沒有隱藏的ascii字符等)。 – jmac
@jmac我更新了問題以包含我得到的輸出。我提到很多網站,都說只是複製單元格A1的內容以獲取整個文本文件在Excel中。對於大約50個文件,這看起來不錯,但對於其他3個文件則沒有。 – Foreever
如果您將此問題(對於破損的條目)的文本複製粘貼迴文本文件,您能否看到它是否有效?我不知道文本文件是如何生成的,但是文件中可能存在隱藏的字符而導致麻煩,或者以其他方式破壞文件。複製純文本可能會使其工作(或至少消除一個可能的原因)。 – jmac