iT邦幫忙

0

sumif跨sheet的問題

我用sumif函數
統計各部門每月費用

例如統計BD部門的時候 https://imgur.com/a/eow3e9E

=SUMIF('201904'!$B:$B,$A$9,'201904'!$AR:$AR)
=SUMIF('201905'!$B:$B,$A$9,'201905'!$AR:$AR)
=SUMIF('201906'!$B:$B,$A$9,'201906'!$AR:$AR)

...

=SUMIF('201912'!$B:$B,$A$9,'201912'!$AR:$AR)

請問sheet的名稱 有辦法變成數值嗎?
讓我可以用手拉 就自動遞延數字

201904、201905、201906 .....201912

不然現在都要一個一個手動好麻煩

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
ccenjor
iT邦高手 1 級 ‧ 2019-10-22 22:42:36
最佳解答

請參考B2儲存格公式:
=SUMIF(INDIRECT(CONCAT("'",B1,"'!$B:$B")),$A$8,INDIRECT(CONCAT("'",B1,"'!$AR:$AR")))
https://ithelp.ithome.com.tw/upload/images/20191022/201098818s0OJAWuYo.png

Jimokji iT邦新手 5 級 ‧ 2019-10-23 11:26:14 檢舉

太厲害了,感謝大大,解決我的問題

0
海綿寶寶
iT邦大神 1 級 ‧ 2019-10-22 20:57:44

1.沒辦法
2.就算有辦法,201912 數字遞增的下一個也是 201913 而不是 202001
3.可能寫 VBA 比較容易

選我正解

1
paicheng0111
iT邦大師 5 級 ‧ 2019-10-23 08:43:56

如果沒有CONCAT的話,可以用CONCATENATE

=SUMIF(INDIRECT(CONCATENATE("'",B8,"'!B:B")),$A$9,INDIRECT(CONCATENATE("'",B8,"'!AR:AR")))

基本作法是
=SUMIF('201904'!$B:$B,$A$9,'201904'!$AR:$AR)
'201904'!$B:$B'201904'!$AR:$ARINDIRECT()函數取代

image

Jimokji iT邦新手 5 級 ‧ 2019-10-23 11:27:34 檢舉

感謝大大指教,您的說明很清楚。
不過因為上面的大大先回覆了,最佳解答會給他。
但您仍然讓我了解為什麼這麼設計函數,一樣感謝。

我要發表回答

立即登入回答