看板 Visual_Basic 關於我們 聯絡資訊
※ 引述《hsiangtai (請您幫幫我 !!!)》之銘言: : 不好意思~因為我試著用vba下去寫東西~ : 可是執行的時候會出錯,偵測的結果『輸入已超過檔案結尾』 : 就是下面程式碼『Input #1, O11(i,j)』這一行 : 請問一下問題出在哪邊? : 因為我是照著書這樣子打的~可以告訴我錯在哪嗎 : Private Sub UserForm_Activate() : Dim i, j As Integer : Open "C:\O11.CSV.xls" For Input As #1 : i = 0 : While Not EOF(1) ---------------- 迴圈 :   For j = 1 To 9 -------------- 迴圈 :     Input #1, O11(i, j) :   Next j :   i = i + 1 : Wend : Close #1 while 迴圈通過檔案結尾的檢查,但 for 迴圈忽視檔案結尾限制, 仍然要讀固定長度的資料. 在這段資料讀取中,可能會有檔案結尾. 其實只要用 while 控制迴圈就好,迴圈內用 i, j 變數調整陣列位置. 大概如下: i = 0 : j = 1 while not eof(1) input #1, O11(i, j) j = j + 1 if j > 9 then i = i + 1 j = 0 end if wend -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.231.16.157