標題:
[發問]
兩個excel以上,查詢方法
[打印本頁]
作者:
swtseng
時間:
2012-10-17 14:58
標題:
兩個excel以上,查詢方法
請問我有兩個excel(甲和乙)
甲是用來當資料庫使用
裡面的a欄事項次。ex1-99
乙是用來查詢的
點選項次1可查詢到甲excel內的a2-f2的資料
目前小弟的程式碼是將甲excel打開,用迴圈的方式搜尋
但當資料越來越多的時候,這樣有點慢....
還有查詢的excel增加到丙、丁、戊.....等,這樣會衝突
請問有人知道比較好的方法嗎??
作者:
swtseng
時間:
2012-10-17 15:09
附上附件,感謝~~
作者:
swtseng
時間:
2012-10-17 15:13
對了,我還有用過VLOOKUP函數直接指定檔案路徑及欄位
但隨著資料庫越來越大,查詢的種類也增多
用VLOOKUP函數檔案會變得很大.....
請問可以用VBA程式碼不用開檔案,直接搜尋指定的嗎??
作者:
swtseng
時間:
2012-10-18 09:01
拜託.....有人可以回答我嗎??
是不是我問得太籠統?
作者:
GBKEE
時間:
2012-10-18 09:23
回復
1#
swtseng
目前小弟的程式碼是將甲excel打開,用迴圈的方式搜尋
你2#的附檔是沒有VBA的檔案
作者:
swtseng
時間:
2012-10-18 13:56
回復
5#
GBKEE
附件裡有兩個方法
方法一的程式碼隨手key,所以變數沒宣告
實際在使用的情況類似,但檔案量越來越大
有時候又有連結時間上的問題,看能不能不需要開檔案,用程式碼連線讀取
作者:
Hsieh
時間:
2012-10-18 14:14
回復
6#
swtseng
參數資料庫查詢
[attach]12814[/attach]
作者:
swtseng
時間:
2012-10-18 15:44
受教了,我在試試看可不可以用錄的方式,以程式碼來呈現
因為路徑會做更改.......
作者:
swtseng
時間:
2012-10-18 17:37
請問Hsieh版主,可以用程式碼來呈現嗎??
我用錄製的方式,出現"陣列索引超出範圍",無法執行..
作者:
swtseng
時間:
2012-10-19 16:26
可以了,原本已連線的資料不可以刪除
加路徑和檔名的變數後就可以使用了
另外,這種方法,檔案就1mb以上......
不知道各位高手們,有沒有其他的方法??
作者:
mark15jill
時間:
2012-10-19 17:10
本帖最後由 mark15jill 於 2012-10-19 17:11 編輯
回復
10#
swtseng
比較簡略的方法..
簡單判斷
Windows("乙.xlsm").Activate
daa = [d2]
ChDir "C:\Users\user\Desktop\swtseng"
Workbooks.Open Filename:="C:\Users\user\Desktop\swtseng\甲.xlsx"
For paa = 1 To ActiveSheet.Range("a2").CurrentRegion.Rows.Count
If Cells(paa, 1) = daa Then
spad = Cells(paa, 1)
spbd = Cells(paa, 2)
spcd = Cells(paa, 3)
spdd = Cells(paa, 4)
sped = Cells(paa, 5)
spfd = Cells(paa, 6)
Windows("乙.xlsm").Activate
[e2] = spbd
[f2] = spcd
[g2] = spdd
[h2] = sped
[i2] = spfd
Windows("甲.xlsx").Activate
End If
Next
ActiveWorkbook.Save
ActiveWindow.Close
作者:
mark15jill
時間:
2012-10-19 17:20
上文 也可改寫成多筆資料比對,甚至可不用特定欄位對照..
作者:
dakiu
時間:
2012-10-19 21:00
回復
7#
Hsieh
版大:
試過了,真的好用,但是如果是10位元只取其中5位元近似資料的話,那要怎麼做.....用星號無法替代.....謝謝了.
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)