制作動態查詢考勤表的方法,動態考勤表是什么樣子的?我們先來看看~,選擇不同的月份,就會生成不同月份的考勤表!具體顯示效果如下:

是不覺得很牛逼,其實做法不并難。第1步:在B3單元格中設置下拉菜單,顯示月份。(和工作表名稱一致),數據驗證(有效性) - 允許 - 序列,在文本框中輸入1月,2月,3月,4月,5月,6月,7月,8月 (英文逗號分隔)

第2步 在單元格D4中設置公式并復制到其他單元格中

考勤表的查詢最關鍵就是這個查詢公式:=INDIRECT($B$3&"!"&ADDRESS(ROW(D3),COLUMN(D3)))
公式說明:ROW(D3),COLUMN(D3) : Row取得單元格所在行數,Column函數到得單元格所在列數。使用這兩個函數的目的是在公式復制時可以返回動態的行號和列數。ADDRESS:可以根據行號和列數返回單元格地址,如Address(3,3) 返回第3行第3列的地址$C$3,($B$3&"!"& :用單元格B3(工作表名稱)連接后面的地址,正好可以根據選取不同的工作表名稱,生成對應的工作表地址。如B3的值為1月,那么會返回 1月!$D$3!

INDIRECT :用&連接成的引用地址只是字符串,無法取得單元格的值,這時用indirect函數可以從字符串地址中取得值。

其實完成動態查詢就是 下拉菜單 + Indirect公式,而難點在后者。這個查詢功能適合于所有類型表格,所以同學們一定要掌握這個Excel技能。