Board logo

標題: [發問] excel用vba依序開啟檔案 [打印本頁]

作者: xoofer    時間: 2014-12-27 12:31     標題: excel用vba依序開啟檔案

不好意思想請問如何在excel用vba依序開啟檔案

原想法是用迴圈的方式去依序開啟儲存格中的路徑
路徑寫在工作表中sheet1的A1 和A2 ( C:\vbatest1.xls 和 C:\vbatest2.xls )
vba如下, 但無法順利run, 不知可否幫忙解答 / 修改錯誤的地方
感激!!!

Dim filename As String
Dim i As Integer

For i = 1 To 2

i = i + 0

Worksheets("Sheet1").Cells(i, 1) = filename

Workbooks.Open "filename"

Next
作者: owen06    時間: 2014-12-27 13:20

回復 1# xoofer


    試試看
  1. Sub test()
  2. Dim filename As String
  3. Dim i As Integer
  4. For i = 1 To 2
  5. filename = Workbooks("book1.xls").Sheets("sheet1").Cells(i, 1).Value
  6. Workbooks.Open filename
  7. Next
  8. End Sub
複製代碼

作者: xoofer    時間: 2014-12-27 14:36

回復 2# owen06


    它出現  subscript out of range

   click "debug" 出現下述語法被 highlight...

  filename = Workbooks("book8.xls").Sheets("Sheet1").Cells(i, 1).Value

   謝謝
作者: xoofer    時間: 2014-12-29 15:39

回復 3# xoofer

我另外改了下面的方式
結果是vbatest1 檔案開了 ,但迴圈跑第二次vbatest2 時失敗

可否麻煩指導一下該如何修正

謝謝

Sub fpath()

Dim total As Integer
Dim fpath As String

Do While i < 3
i = i + 1

fpath = Cells(i, 1)
MsgBox (fpath)

Workbooks.Open (fpath)

Loop

End Sub
作者: ashan0418    時間: 2014-12-29 17:48

回復 4# xoofer

略做修改,您試試!!
  1. Sub fpath()
  2.     Dim total As Integer
  3.     Dim fpath As String
  4.    
  5.     For i = 1 To 2
  6.         fpath = ThisWorkbook.ActiveSheet.Cells(i, 1)
  7.         Workbooks.Open (fpath)
  8.     Next
  9. End Sub
複製代碼

作者: owen06    時間: 2014-12-30 08:37

回復 4# xoofer


    先說一下workbooks("xxxxx")抓不到的原因,應該是因為你這個檔只是一個暫時新增的檔案,
    並未儲存在電腦中,所以才會造成這種狀況,如果是已經有儲存的excel表,就不會了。
    再來你每次的語法都有一個盲點,就是你都沒有指定是要哪一個檔案的某格值,所以你雖然開了第一個檔案vbatest1,
    但是系統已經跳開了你原本的檔案,而執行到vbatest1上了,但vbatest1上並沒有你想要的路徑,所以vbatest2就開不了了。
    所以你如果要在不同檔案或工作表間切換執行的時候,記得要給個明確的指令,才不會造成混亂。
  1. Sub test()
  2. Dim filename As String
  3. Dim i As Integer
  4. For i = 1 To 2
  5. filename = ThisWorkbook.Sheets("sheet1").Cells(i, 1).Value
  6. Workbooks.Open filename
  7. Next
  8. End Sub
複製代碼

作者: xoofer    時間: 2014-12-30 10:38

回復 6# owen06

感謝指導

語法可行了




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)