Applies ToExcel for Microsoft 365 Excel for Microsoft 365 for Mac Excel for the web Excel 2024 Excel 2021 Excel 2019 Excel 2016

隱含交集運算子是在大幅升級 Excel 公式語言以支援 動態陣列時引入的。 動態陣列為Excel帶來顯著的新計算能力和功能。

已升級的公式語言

Excel 的升級公式語言幾乎與舊的語言相同,但它會使用 @ 運算符來指出隱含交集可能發生的位置,而舊語言則是以無訊息的方式執行此動作。 因此,您可能會注意到在動態陣列Excel中開啟時,某些公式中出現 @。 請務必注意, 您的公式會繼續以一如往常的相同方式計算。  

什麼是隱含交集?

隱含交集邏輯會將許多值縮減為單一值。 Excel 這麼做會強制公式傳回單一值,因為單元格只能包含單一值。 如果您的公式傳回單一值,那麼隱含交集 (沒有執行任何動作,即使技術上是在背景) 完成。 邏輯的運作方式如下:

  • 如果值是單一專案,則傳回專案。

  • 如果值是範圍,則傳回與公式同一列或同一欄的單元格值。

  • 如果值是陣列,請挑選左上角的值。

隨著動態數位的出現,Excel 不再局限於從公式傳回單一值,因此不再需要無訊息的隱含交集。 當舊公式可能明顯觸發隱含交集時,啟用動態數位的 Excel 會顯示使用 @发生的位置。  

為什麼是 @ 符號? 

@ 符號已用於表格參照以表示隱含交集。 請在數據表 =[@Column1] 中考慮下列公式。 在此,@ 表示公式應使用隱含交集從 [欄1] 擷取同一列的值。  

您可以移除 @吗? 

您通常可以。 這取決於 @ 右邊公式的哪個部分傳回: 

  • 如果傳回 (最常見案例) 單一值,則移除 @将不会有任何变更。

  • 如果傳回範圍或陣列,移除 @ 會造成其 溢出至相鄰的儲存格。

如果您在舊版 Excel 中移除自動新增的 @ 後再開啟活頁簿,活頁簿會顯示為舊版陣列公式 , (用括弧 {}) 括住,這麼做可確保舊版不會觸發隱含交集。

何時要將 @ 新增至舊公式? 

一般而言,如果傳回多單元格範圍或陣列的函數是在舊版 Excel 中撰寫,則會使用 @ 預先設定。 請務必注意,公式的行為方式並不會改變,您現在只能看到先前隱藏的隱含交集。 可傳回多儲存格範圍的一般函數包括 INDEX、OFFSET 和使用者定義函數 (UDF) 。  常見的例外是,它們會換成接受數位或範圍 (的函數,例如 SUM () 或 AVERAGE () ) 。 

如需詳細資訊,請參閱 傳回範圍或陣列的Excel函 數。

範例

原始公式

如動態陣列Excel中所示 

說明

=SUM (A1:A10)  

=SUM (A1:A10)  

沒有變更 - 不會發生隱含交集,因為 SUM 函數預期的範圍或陣列。 

=A1+A2 

=A1+A2 

沒有變更 - 不會發生隱含交集。 

=A1:A10 

=@A1:A10 

會出現隱含交集,而Excel會傳回與公式所在的列相關聯的值。

=INDEX (A1:A10,B1)  

=@INDEX (A1:A10,B1)  

可能發生隱含交集。 INDEX 函數在第二個或第三個自變數為 0 時,可以傳回數位或範圍。  

=OFFSET (A1:A2,1,1)  

=@OFFSET (A1:A2,1,1)  

可能發生隱含交集。 OFFSET 函數可以傳回多單元格範圍。 當出現隱含交集時,就會觸發隱含交集。 

=MYUDF ()  

=@MYUDF ()  

可能發生隱含交集。 用戶定義函數可以傳回數位列。 當它們出現時,原本的公式會觸發隱含交集。 

在新公式中使用 @ 運算符

如果您在包含 @ 運算符的動態數位 Excel 中撰寫或編輯公式,公式可能會顯示為_xlfn。EXCEL 前動態陣列中的SINGLE () 。

當您認可混合公式時,就會發生這種情況。 混合公式是依靠數位計算和隱含交集的公式,前動態陣列 Excel 不支援此公式。 前動態數位僅支援 i) 隱含交集或 ii) 陣列計算的公式。

啟用動態數位時,Excel 會偵測到「混合公式」的建立,它會建議整個公式隱含交集的公式變化。 例如,如果您輸入 =A1:A10+@A1:A10,您會看到下列對話框:

詢問您是否要改用fromula =@A1:A10 + @A1:A10 的對話框。

如果您選擇拒絕對話框建議的公式,則會確認混合公式 =A1:A10+@A1:A10 。 如果您稍後在前動態陣列Excel中開啟此公式,公式會顯示為 =A1:A10+_xlfn。SINGLE (A1:A10) ,混合公式中的 @'s 會顯示為_xlfn。SINGLE () 。 當此公式由前動態陣列Excel評估時,會傳回 #NAME! 的錯誤值。 

需要更多協助嗎?

您可以隨時詢問 Excel 技術社群中的專家,或在社群中取得支援。

另請參閱

FILTER 函數

RANDARRAY 函數

SEQUENCE 函數

SORT 函數

SORTBY 函數

UNIQUE 函數

Excel 中的 #溢出! 錯誤

動態陣列與溢出陣列行為

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。