Re: [算表] 在不同工作表中抓取資料
可以參考這個方法囉
=VLOOKUP(C6,INDIRECT("'"&INDEX({"Sheet1";"Sheet2";"Sheet3"},
MATCH(1,--(COUNTIF(INDIRECT("'"&{"Sheet1";"Sheet2";"Sheet3"}&"'!A1:A500"),
C6)>0),0))&"'!A1:B500"),2,0)
如果你的工作表名稱都是Sheet加數字可以改成
=VLOOKUP(C6,INDIRECT("'Sheet"&INDEX({1;2;3},MATCH(1,--(COUNTIF(
INDIRECT("'Sheet"&{1;2;3}&"'!A1:A500"),C6)>0),0))&"'!A1:B500"),2,0)
※ 引述《EM (神!速!愛!)》之銘言:
: 軟體: EXCEL
: 版本:2003
: 小弟遇到一個問題,想請問版上各位高手如何解決,
: 假設資料如下,
: Sheet1 Sheet2 Sheet3
: A B A B A B
: 1 a 11 1 d 44 1 g 77
: 2 b 22 2 e 55 2 h 88
: 3 c 33 3 f 66 3 i 99
: 希望能夠輸入a就帶出11,輸入e帶出55,輸入g帶出77,
: a,b,c~i原則上不會重複,只會在一個sheet出現一次
: 也不會在不同的sheet重複出現
: 有點像vlookup的功能,但是要比對的範圍卻在不同的工作表
: 我原本寫的公式如下(假設在cell C6輸入input a,e or g)
: =SUM(
: IF(ISERROR(VLOOKUP(C6,Sheet1!A1:B3,2,FALSE)),0,
: VLOOKUP(C6,Sheet1!A1:B3,2,FALSE)),
: IF(ISERROR(VLOOKUP(C6,Sheet2!A1:B3,2,FALSE)),0,
: VLOOKUP(C6,Sheet2!A1:B3,2,FALSE)),
: IF(ISERROR(VLOOKUP(C6,Sheet3!A1:B3,2,FALSE)),0,
: VLOOKUP(C6,Sheet3!A1:B3,2,FALSE))
: )
: 但是實際上原始資料有將近20個sheets,
: 用這個方式處理會出現公式太長的訊息;
: 所以想請問是否能在不使用巨集,不用輔助欄的的情況下直接透過公式處理?
: 謝謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.146.144
推
11/26 00:21, , 1F
11/26 00:21, 1F
推
11/26 22:59, , 2F
11/26 22:59, 2F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Office 近期熱門文章
PTT數位生活區 即時熱門文章