2017-01-09 78 views
1

我想要的是:將記事本中的數據複製到工作表(從範圍A1開始)。Excel VBA將文本從文件放到工作表中

Test

我的嘗試:

Sub Test() 
Dim testfile, textline 

testfile = Application.GetOpenFilename() 
Open testfile For Input As #1 

Do Until EOF(1) 
    Line Input #1, textline 
Loop 
Close #1 

ActiveWorkbook.Sheets("Sheet1").Range("A1").Value = textline 
End Sub 

結果: enter image description here

任何建議,爲什麼我做錯了,它不會搶在記事本中的所有文本,只是第一行?謝謝。

+0

您只使用A1的範圍,它只是每次覆蓋它。 –

+0

實際上,它只會寫入'A1' *一次* - 它需要進入循環。 – Comintern

+0

如果沒有編碼,您可以將記事本文件拖放到Excel中,並將其放入所有行中。它應該由標籤自動描繪,但您可以使用數據 - >文本到列並指定其他參數。 – Cyril

回答

3

你幾乎在那裏:)。只需要將每個textline我分開寫一行,因爲現在您只更改Range("A1").Value

Sub Test() 
Dim testfile, textline 

testfile = Application.GetOpenFilename() 
Open testfile For Input As #1 

i = 1 
Do Until EOF(1) 
    Line Input #1, textline 
    ActiveWorkbook.Sheets("Sheet1").Range("A" & i).Value = textline 
    i = i + 1 
Loop 
Close #1 

End Sub 
相關問題