- 帖子
- 234
- 主題
- 19
- 精華
- 0
- 積分
- 276
- 點名
- 0
- 作業系統
- Windows XP
- 軟體版本
- office 2003
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2013-1-7
- 最後登錄
- 2021-10-7
|
2#
發表於 2019-12-2 14:20
| 只看該作者
回復 1# boomf2
功力沒很好,試試看!!
Sub ex()
Application.ScreenUpdating = False
Source1 = Application.GetOpenFilename
x = InputBox("查詢位置")
Workbooks.Open Source1
Windows("Workbook2.xlsm").Activate
r = [a65535].End(3).Row
[N2].Resize(r - 1) = "=VLOOKUP(A2,[" & Dir(Source1) & "]Sheet1!A:F," & x & ",FALSE)"
[M2].Resize(r - 1) = "=VLOOKUP(A2,[" & Dir(Source1) & "]Sheet1!A:F," & x + 1 & ",FALSE)"
[L2].Resize(r - 1) = "=VLOOKUP(A2,[" & Dir(Source1) & "]Sheet1!A:F," & x + 2 & ",FALSE)"
Workbooks(Dir(Source1)).Close False
Application.ScreenUpdating = True
End Sub
我是用M2 & L2,如果要改為M3 & L3,請將M2 & L2改成M3 & L3即可
而空格M3等於N2回傳資料範圍欄數+1 => VLOOKUP($A:$A,[Database.xlsx]Sheet1!$A:$F,3,0) 來回傳值.
而空格L3等於N2回傳資料範圍欄數+2 => VLOOKUP($A:$A,[Database.xlsx]Sheet1!$A:$F,4,0) 來回傳值. |
|