Excel 的函數日新月異,提供了越來越強大的功能。許多新函數能夠取代原本需手動操作的工作,讓你能夠透過公式快速處理資料。不論來源資料如何變動,結果都不需重新操作。這不僅能大幅節省操作時間,還能減少錯誤的發生。舉例來說,排序和篩選等工作原本需手動處理,現在都可以透過公式來自動完成。
利用動態陣列函數,可以取代手動的重複操作,同時避免錯誤的產生。這些函數能夠自動擴展範圍並在一個公式中處理多個數值,使你能夠更有效率地處理資料。這種方式不僅可以節省時間,還能降低因手動操作而引起的錯誤。透過動態陣列函數,您可以快速執行複雜的計算、篩選和排序等任務,使你的工作更加輕鬆和準確。
本篇以「篩選」操作為例,利用以下的資料表來示範。你可以學到:
*動態陣列的使用
*下拉式清單的設計
*INDIRECT函數的應用
*FILTER函數的應用
*UNIQUE函數的應用
傳統上以「篩選」方式,手動取得一月份信義店的液晶電視銷售總額,你會這樣做:
1. 篩選「日期:一月」
2. 篩選「店名:信義店」
3. 篩選「產品:液晶電視」
結果如下:(相當於執行三個條件的邏輯 AND 運算)
4. 計算三個「單價X數量」,再予以加總。
雖然你已經得到一個結果,但是如果原始資料有所改變,你必須重新執行這些步驟後,重新再加總。
現在,利用 Excel 的動態陣列函數,你可以改成以下的操作,不用怕來源資料有所異動。
1. 定義儲存格範圍名稱
選取所有資料,按 Ctrl+Shift+F3 鍵,勾選「頂端列」,
定義名稱:序號、日期、店名、業務員、產品、代碼、機型、單價、數量
2. 產生店名清單
儲存格K2:=UNIQUE(INDIRECT(K1))
3. 產生產品清單
儲存格L2:=UNIQUE(INDIRECT(L1))
4. 設定「店名」的下拉式清單
利用「資料驗證」的準則設定為「清單」來設計下拉式清單。
將來源設定:$K$2#,其中「#」是因為來源為動態陣列(結果非固定資料)。
5. 設定「產品」的下拉式清單
6. 篩選並計算加總
儲存格L19:
=SUM(FILTER(單價*數量,(店名=$K$13)*(產品=$L$13)*(MONTH(日期)=K19)))
(1) MONTH(日期)=K19
利用 MONTH 函數取出日期中的月份並判斷和儲存格K19是否相符。
(2) (店名=$K$13)*(產品=$L$13)*(MONTH(日期)=K19)
利用三個條件執行邏輯 AND 運算,判斷是否三個條件完全相符。
(3) FILTER(單價*數量,(店名=$K$13)*(產品=$L$13)*(MONTH(日期)=K19))
在 FILTER函數中依三個條件相符者取出的結果,執行「單價*數量」。
(4) SUM(FILTER(單價*數量,(店名=$K$13)*(產品=$L$13)*(MONTH(日期)=K19)))
最後以 SUM 函數將 FILTER 函數的篩選結果予以加總。
7. 複製儲存格L19,複製到儲存格L19:L26。
當來源有變動時,結果會自動更新。
【延伸學習】
留言列表