當前位置: 妍妍網 > 辦公

動態切換的excel報表,竟然只需一個超簡單的indirect公式

2024-06-29辦公

在實際工作中,我們經常需要做動態查詢的報表,如下圖所示切換日期就可以生成應的日報表:

你是不是在想,要多復雜的excel公式才能實作這麽「高級」切換功能。等蘭色亮出公式估計很多人驚到大牙:原來公式這麽簡單:

=INDIRECT($C$2&"!RC",0)&""

嘿嘿,公式就這麽短。只是.....能看懂這個公式的估計不到十分之一。 C2 是參照工作表名稱, RC 又是什麽鬼? &"" 又是什麽作用?

想看懂這個公式,要先明白indirect函式的兩種參照模式:

1、A1模式 列標 + 行號 的參照模式

=indirect("b1") 可以把單元格b1的值提取出來

2、R1C1模式 R行數C列數 的參照模式,第2個參數為false或0

=indirect("R1C2",0) 也是提取B1的值

但如果R和C後都沒有數位: RC ,則表示當前行當前列。相當於row()和cloumn()

=indirect("RC",0) 表示參照公式所在單元格的值,即自身的值,會形成迴圈參照。如果參照另一個表則不會形成迴圈參照。如在A表中參照B表相同行列單元格的值:

=indirect("B!RC",0)

本例中,查詢表和1日、2日...的日報表格式完全相同,都是從第4行第1列開始查詢的。所以 =INDIRECT($C$2&"!RC",0) 就可以查詢對應日報表相同位置的值。

&"" 有什麽用?

公式參照的如果是空格會返回很多無意義的0,用&""則可以去掉它們。

蘭色說 :一個簡單的公式竟然藏著這麽多用法,這也是Excel函式的魅力所在

想跟蘭色學習函式、圖表的同學可以購買四合一大全套課程( 包括 Excel表格92個函式用法 119個使用技巧 透視表從入門到精通50集 圖表從入門到精通185集) 。詳情點選下方連結