看板 Office 關於我們 聯絡資訊
軟體:office 365 excel 版本:office 365 excel 大師們求救 我有1個表A,N個檔案,檔案內容也很多筆 請問如何用vba按一個按扭,載入一個不指定路徑的檔案(手選),而且不打開複製來源檔, 只選擇要的欄位並篩選需要的值? 如圖1 我要C欄的值,條件是F欄是Y組的才要(如圖1),然後貼到表A的B2開始,大概變成(圖2)的樣 子,感謝。 圖1 https://imgur.com/SBMfGRx 圖2 https://imgur.com/lFGKdiV -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.125.160.144 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1569323869.A.5D1.html
soyoso: 不開檔的話,ado range.copyfromrecordset 09/24 20:45
ptguitar: 我都是開了後再close掉 09/25 09:52
hyvi: 求救,請問這樣還可以怎麼改?https://imgur.com/aC6QoVd 09/25 17:34
soyoso: 原po是要selecteditems這個屬性吧,是的話先.show,選取檔 09/25 18:08
soyoso: 案後,用個變數=.selecteditems(1)來取得所選取檔案的資料 09/25 18:10
soyoso: (路徑和完整檔名) 09/25 18:12
soyoso: 以連結巨集來看,在迴圈前應是還要在加上開檔workbooks. 09/25 18:30
soyoso: open的動作 09/25 18:30
soyoso: 不開檔的話也可用個儲存格,以公式='完整路徑[完整檔名]工 09/25 18:40
soyoso: 作表名稱'!儲存格的方式帶入值,再判斷該儲存格,符合,帶 09/25 18:41
soyoso: 入其他儲存格內的資料(同回文以公式),之後不要該公式的話 09/25 18:42
soyoso: 再選擇性貼上(值) 09/25 18:42
hyvi: 好難懂,我改這樣還是不能https://imgur.com/Wtn6h52 09/25 18:43
soyoso: 不是"filename"這個字串,而是.selecteditems(1)所取得的 09/25 19:06
soyoso: 字串 09/25 19:06
soyoso: 而這個字串包含了路徑和完整檔名,而workbooks()括號內要 09/25 19:08
soyoso: 的是完整檔名 09/25 19:08
soyoso: 如果不要還在那裡取出完整檔名的話,set 變數 = workbooks 09/25 19:09
soyoso: .open,變數.worksheets(..)的方式來做 09/25 19:10
hyvi: 用最後的方式改無法,https://imgur.com/FsPAcNx 09/25 20:17
soyoso: 不是,原本巨集內就寫了workbooks.open filename:=... 09/25 20:33
soyoso: set 變數 = workbooks.open 09/25 20:33
soyoso: 原本參引數不用括號,set時要加上 09/25 20:35
hyvi: 謝謝指導,但太深奧了,我看不懂. 09/26 16:22
soyoso: 就是workbooks.open filename:=.selecteditems(1) 09/26 16:24
soyoso: 改為set book2 = workbooks.open(filename:=.selecteditem 09/26 16:25
soyoso: s(1)) 09/26 16:25
soyoso: 而set book2 = workbooks.open這行就刪除 09/26 16:25
hyvi: 謝謝,這行過了下半段還是一堆問題 09/27 17:21