在 Excel 中使用這 6 個矩陣公式可以有效地執行複雜的計算。

Excel 的基本函數非常適合簡單的計算,但在處理複雜的資料分析時,它們很快就會變得複雜。最終,您將獲得難以閱讀的巢狀公式、使電子表格變得雜亂無章的多個輔助列,以及在資料更改時公式可能會中斷的情況。這時,Excel 中的陣列公式就派上用場了。

在 Excel 中使用這 6 個陣列方程式可以有效地執行複雜的計算。

陣列公式可讓您使用單一公式對整個資料範圍執行計算。 因此,您可以 執行閃電般快速的搜索、過濾和排序,使用一個強大的表達式,而不必為每一行或每一列編寫單獨的公式。 這對 Excel 來說並不新鮮,但是當這些功能可以讓他們的工作更簡單、更有效率時,有些人仍然堅持舊的做事方式。

5. X查找

每次都優於 VLOOKUP。

Excel 中的機械庫存電子表格。

XLOOKUP 是一個從一開始就應該存在的查找函數。與強制計算列數並僅向右搜尋的 VLOOKUP 不同,XLOOKUP 可以向任意方向查找,並使用實際的欄位參考。它的語法如下:

=XLOOKUP(查找值,查找數組,返回數組,[如果找不到],[匹配模式],[搜尋模式])

每個參數的意義如下:

  • 查找值: 您要尋找的具體值。這可以是零件編號、產品代碼或資料集中的任何識別碼。
  • 查找數組: Excel 搜尋的範圍 Lookup_Array中 您的。這通常是包含您的搜尋條件的單列或單行。
  • 返回數組: 包含要檢索的值的範圍。這可以是單列、多列,甚至是整個表格部分。
  • if_not_found(可選): 未找到符合項目時顯示的自訂文字或值。它可以消除煩人的 #N/A 錯誤,並允許您顯示“未找到”或“檢查零件編號”。
  • match_mode(可選): 控制匹配類型。 0 表示完全匹配(預設),-1 表示下一個完全匹配或更小的匹配,1 表示下一個完全匹配或更大匹配,2 表示通配符匹配。
  • 搜尋模式(可選): 指定搜尋方向。使用 1 表示從頭到尾搜尋(預設),使用 -1 表示從頭到尾搜索,使用 2 表示對已排序資料進行二分搜尋。

我們以一個機械庫存電子表格為例。以下公式在一系列零件 ID 中搜尋零件號碼“BRG-002”,並傳回對應的資料。如果該零件不存在,則顯示“未找到零件”而不是錯誤。

=XLOOKUP("BRG-002", A:A, A:H, "找不到零件")

Excel 中的 XLOOKUP 公式用於尋找零件中的資料。

XLOOKUP 允許您從不同的列中提取數據,而無需像 VLOOKUP 那樣進行繁瑣的列計算,這使其成為最重要的 Excel 函數快速找出數據.

4. SUMPRODUCT

發電站條件計算

Excel 中的 SUMPRODUCT 公式顯示 Acme Corp. 備件庫存的總價值。

SUMPRODUCT 不僅可以對數字進行加法運算,還可以對矩陣進行乘法運算並對結果求和。這對於需要多個輔助列的複雜條件計算非常有用。

其公式如下:

=SUMPRODUCT(array1, [array2], [array3], ...)

這裡, 數組1 這是第一個要相乘的值範圍-通常是您的主要資料列,例如數量或成本。 數組2 它是乘法的可選第二個範圍,通常包含使用比較運算子的條件或條件邏輯。

當我們在陣列中使用邏輯運算子時,它們會變得更加有用。例如,當我們輸入諸如 (supplier="Siemens") 之類的條件時,Excel 會將 TRUE/FALSE 結果轉換為 1/0,以便進行計算。

例如,以下公式計算僅由西門子供應的零件的總庫存價值。此公式將數量乘以單位成本,但僅適用於供應商符合條件的行。

=SUMPRODUCT(D2:D100*H2:H100*(G2:G100="Siemens"))

類似地,以下公式可以計算出庫存充足的軸承的總成本:

=SUMPRODUCT((C2:C100="Bearings")*(D2:D100>=15)*H2:H100)

兩個條件同時適用 - 類別必須是“軸承”,庫存水準必須為 15 個單位或更高,這有助於我們識別具有足夠庫存覆蓋率的軸承類別。

Excel 中的 SUMPRODUCT 公式顯示可用性良好的備件庫存的總價值。

與具有多個條件的傳統 SUM 函數不同,SUMPRODUCT 不需要複雜的巢狀結構,因為它可以在單一可讀的公式中處理多個條件。 Excel 中的 SUM 函數, 與 SUMIF 和 SUMIFS 一樣,它們非常適合簡單的條件求和,但是當您需要在求和之前將值相乘或處理更複雜的邏輯運算時,SUMPRODUCT 函數表現出色。

3. 篩選

讓動態資料擷取變得簡單

Excel 中的 FILTER 函數顯示 Timken 軸承的資料。

FILTER 根據您指定的條件從資料集中提取行。與手動過濾不同,此函數會產生動態結果,並在來源資料變更時自動更新。 FILTER 語法如下:

=過濾器(數組,包括,[if_empty])

以下是每個輸入控制的內容:

  • 數組(範圍): 您想要過濾的全部資料範圍。這包括您想要在結果中顯示的所有列,而不僅僅是條件列。
  • 包括(包括): 指定傳回哪些行的邏輯條件 - 使用比較運算子為每一行建立 TRUE/FALSE 陣列。
  • if_empty(可選): 當沒有符合條件的行時顯示自訂訊息。避免出現 #CALC! 錯誤,並顯示有意義的文本,例如「未找到匹配結果」。

此函數的工作原理是針對範圍內的每一行評估您的條件。當條件回傳 TRUE 時,整行都會顯示在篩選結果中。以下是機械庫存電子表格的範例:

=FILTER(A2:H101, (C2:C101="Bearings")*(G2:G101="Timken"))

此公式提取資源為「Timken」且類別為「軸承」的所有行。星號 (*) 透過將邏輯數組相乘來建立 AND 條件。

當您向來源範圍新增資料時, 在 Excel 中使用 FILTER 函數 它比手動排序和臨時表更有意義,因為過濾結果會自動更新。這對於建立即時儀表板和報告非常有用。

2. 獨特

提取不重複的唯一值

Excel 中的 UNIQUE 函數顯示兩個唯一的供應商。

UNIQUE 從您的資料範圍中提取唯一值,並自動避免重複。如果您要建立下拉清單、分析資料類別以及建立總計報告,此功能非常重要。公式為:

=UNIQUE(array, [by_col], [exactly_once])

每個輸入的工作原理如下:

  • 數組(範圍): 包含要從中刪除重複項的資料的範圍 - 可以是單列、多列或表格的整個部分。
  • by_col(可選): FALSE 表示比較行以決定唯一性(預設),而 TRUE 表示比較列。不過,大多數情況下都使用預設的行比較。
  • exactly_once(可選): FALSE 傳回所有唯一值,包括出現多次的值(預設),TRUE 僅傳回資料集中恰好出現一次的值。

UNIQUE 函數會計算陣列中的每一行或每個值,並只傳回每個唯一元素的第一次出現。其順序與原始資料序列一致。以下是範例:

=UNIQUE(G2:G22)

此公式從「供應商」列 G 中提取所有唯一供應商名稱,並建立一個乾淨的重複清單。我用它來建立供應商下拉清單或匯總報表。

您也可以在整個表格中使用它,如下所示:

=UNIQUE(A2:F100)

傳回所有欄位(A 至 F)中的唯一組合,顯示不同的庫存記錄。如果兩個零件在每列中的值相同,則結果只會顯示一個。

處理大型資料集時,UNIQUE 省去了手動刪除重複項的繁瑣過程。動態結果會隨著新資料的到來而更新,而且由於 UNIQUE 會建立溢出矩陣,因此這種方法可以自動縮放以容納所有唯一值,從而省去了調整表格大小的麻煩。我用它來維護乾淨的參考清單並建立可靠的資料驗證範圍。

1. SORT 和 SORTBY

在不損害原始數據的情況下組織您的數據

Excel 中的 SORT 函數顯示按庫存水準排序的庫存。

SORT 和 SORTBY 函數可在保持資料來源完整的情況下動態組織資料。 SORT 函數按列位置進行基本排序,而 SORTBY 函數則根據不同列中的值進行排序,從而為您提供更靈活的複雜排序功能。

SORT 使用以下結構:

=排序(數組,[sort_index],[sort_order],[by_col])

以下是每個參數控制的內容:

  • 數組: 您要排序的資料範圍 - 包括應出現在排序結果中的所有欄位。
  • 排序索引(可選): 數組中用於排序的列號。第一列使用 1,第二列使用 2,依此類推(預設為 1)。
  • 排序順序(可選): 使用 1 表示升序(預設),使用 -1 表示降序。
  • by_col(可選): FALSE 表示按行排序(預設),TRUE 表示按列排序-大多數情況下使用行排序。

SORTBY 函數採用以下形式:

=SORTBY(陣列, by_array1, [sort_order1], [by_array2], [sort_order2], ...)

其交易包括:

  • 數組: 要排序的資料範圍 - 類似於 SORT 函數,它包含您想要在結果中顯示的所有欄位。
  • 按數組1: 包含確定排序順序的值的範圍-可以是任何列,甚至在主數組的範圍之外。
  • sort_order1(可選): 1 表示升序(預設),-1 表示降序。
  • by_array2,sort_order2(可選): 多級排序的附加排序標準。

查看機械庫存電子表格中的範例,這些函數可處理現實世界的排序場景:

=SORT(A2:H22, 4, -1)

這會按庫存水準降序對整個庫存進行排序,庫存水準最高的商品會顯示在最前面。公式按第 4 列(庫存水準)排序,同時保留行之間的所有關係。

我正在使用 SORTBY 函數。 您可以使用它來代替 SORT,以便更好地控制排序條件和多個排序層級。例如,以下公式首先按類別的字母順序排序,然後按每個類別中的庫存水準從高到低排序。

=排序(A2:H22, C2:C22, 1, D2:D22, -1)

Excel 中的 SORTBY 函數顯示按字母順序排序然後按庫存水準排序的庫存。

有序的電子表格,更聰明的結果

陣列公式消除了輔助列和巢狀函數帶來的雜亂,避免了電子表格維護的難題。您只需一個公式即可處理多項操作,讓工作簿更簡潔、更專業。

動態函數的一大顯著優勢是,當來源資料發生變化時,結果會自動更新。這消除了手動更新或公式字串損壞的麻煩,使您的電子表格在持續分析中更加可靠。

Excel 的陣列函式庫不斷擴展,超越了這些基本工具。當我需要合併來自多個來源的資料時,我會使用 VSTACK 和 HSTACK 函數來合併範圍。這些函數共同創建了強大的資料處理工作流程,這是傳統公式無法實現的。

轉到頂部按鈕