[算表] VBA 抓取不同excel的不同sheet資料

看板Office作者 (小猛)時間13年前 (2013/04/03 00:44), 編輯推噓1(1016)
留言17則, 3人參與, 最新討論串1/1
軟體:EXCEL 版本:2013 之前搜尋過相關主題,Cidolfas文章剛好是我想要的VBA程式, 但還是有誤麻煩哪位高手幫我看哪邊有錯,謝謝。 我現在有一個資料夾裡有不同EXCEL檔,每個EXCEL檔只有一個Sheet, 而我會用VBA把這些檔合併在同一個EXCEL裡,且每個sheet名稱都依公司名稱命名, EX.1101台泥 1102亞泥....等等依此類推,而每個Sheet我只要最後一筆資料(整行EX.270) 最後在新的Sheet排列下來,或者先不合併使用Cidolfa大大的 [VBA 抓取同excel的不同sheet資料]最後討論的程式去執行, 但在Set xlWrk = xlapp.Workbooks.Open(OpenFld & "A" & i & ".xls")有誤? 我稍為改的程式碼如下: Option Explicit Sub 從不同excel抓取固定欄位的值() Dim ISht As Worksheet, i&, OpenFld$, n& Dim sht As Worksheet Dim xlapp As Excel.Application Dim xlWrk As Excel.Workbook Dim xlSht As Excel.Worksheet Set xlapp = New Excel.Application Set ISht = Sheets("sheet1") OpenFld = "C:\Users\jason\Desktop\1\" For i = 1 To 50 Set xlWrk = xlapp.Workbooks.Open(OpenFld & "A" & i & ".xls") For Each sht In xlWrk.Sheets sht.Select n = n + 1 ISht.Range("C" & n) = sht.[C270] Next xlWrk.Close Next End Sub 只改讀取路徑和ISht.Range("C" & n) = sht.[C270]此行資料 希望哪位高手可以幫我指正一下,萬分感謝QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.41.21.77

04/03 08:27, , 1F
開啟檔名也是A1.xls,A2.xls...嗎?
04/03 08:27, 1F

04/03 12:14, , 2F
對的,1101台泥.Xls 1102亞泥.Xls。
04/03 12:14, 2F

04/03 12:16, , 3F
如果是.Xlsx的我是放另一個資料夾,在改成.Xlsx檔在跑
04/03 12:16, 3F

04/03 12:17, , 4F
偵錯的位置都一樣@@
04/03 12:17, 4F

04/03 12:22, , 5F
我要的那行(C270:BO270或整行)
04/03 12:22, 5F

04/03 12:25, , 6F
都是用公式=某個欄位的數字或文字,會有影響嗎?
04/03 12:25, 6F

04/03 12:36, , 7F
那原本寫的是開檔名A1.xls,A2.xls來對應您的台泥,亞泥就
04/03 12:36, 7F

04/03 12:36, , 8F
對應不到
04/03 12:36, 8F

04/03 12:36, , 9F
可用Dir()的方式
04/03 12:36, 9F

04/03 12:37, , 10F
應可對應您要的子目錄下的Excel檔案
04/03 12:37, 10F

04/03 14:19, , 11F
Dir()我比較不懂要翻書一下,我是先測試兩個EXCEL檔
04/03 14:19, 11F

04/03 14:21, , 12F
兩個檔名改成A1.xls,A2.xls然後執行,遇到C1儲存格出現
04/03 14:21, 12F

04/03 14:22, , 13F
台泥,然後程式就一直跑當掉的樣子,也一直出現
04/03 14:22, 13F

04/03 14:24, , 14F
Microsoft Excel 正在等待其它應用程式完成OLE動作,
04/03 14:24, 14F

04/03 14:28, , 15F
只有C1出現我要的文字,其他一直在跑沒東西出現><
04/03 14:28, 15F

05/20 19:55, , 16F
要先把原本的workbook active
05/20 19:55, 16F

09/19 17:05, , 17F
activate
09/19 17:05, 17F
文章代碼(AID): #1HMmhrjC (Office)
文章代碼(AID): #1HMmhrjC (Office)