Toán tử giao cắt ngầm: @

Áp dụng cho
Excel cho Microsoft 365 Excel cho Microsoft 365 dành cho máy Mac Excel 2024 Excel 2021 Excel 2019 Excel 2016

Toán tử giao cắt ngầm được giới thiệu như một phần trong quá trình nâng cấp đáng kể ngôn ngữ công thức của Excel để hỗ trợ các mảng động. Mảng động mang đến khả năng tính toán và chức năng mới đáng kể cho Excel.

Ngôn ngữ Công thức được nâng cấp

Ngôn ngữ công thức được nâng cấp của Excel gần như giống với ngôn ngữ cũ, ngoại trừ việc sử dụng toán tử @ để chỉ rõ nơi có thể xảy ra giao điểm ẩn, trong khi ngôn ngữ cũ lại thực hiện điều này một cách im lặng. Do đó, bạn có thể nhận thấy @'s appear in some formulas when opened in dynamic array Excel. It'điều quan trọng cần lưu ý là các công thức của bạn sẽ tiếp tục tính toán theo cách mà chúng vẫn thường có.  

Giao điểm ẩn là gì?

Lô-gic giao cắt ngầm giúp giảm nhiều giá trị thành một giá trị duy nhất. Excel thực hiện điều này để buộc công thức trả về một giá trị duy nhất, vì ô chỉ có thể chứa một giá trị duy nhất. Nếu công thức của bạn trả về một giá trị đơn thì giao điểm ẩn không có tác dụng gì (dù về mặt kỹ thuật là giao điểm ngầm được thực hiện ở nền). Lô-gic hoạt động như sau:

  • Nếu giá trị là một mục đơn thì trả về mặt hàng đó.
  • Nếu giá trị là một phạm vi thì trả về giá trị từ ô trên cùng một hàng hoặc cột với công thức.
  • Nếu giá trị là một mảng, hãy chọn giá trị trên cùng bên trái.

Với sự xuất hiện của mảng động, Excel không còn bị giới hạn ở việc trả về các giá trị đơn từ công thức, do đó, giao điểm ẩn lặng không còn cần thiết. Trong khi một công thức cũ có thể kích hoạt giao điểm ẩn một cách vô hình, Excel cho phép mảng động hiển thị nơi nó sẽ xảy ra với @.  

Tại sao lại có ký hiệu @?

Ký hiệu @ đã được sử dụng trong tham chiếu bảng để biểu thị giao điểm ẩn. Hãy cân nhắc công thức sau đây trong bảng =[@Column1]. Ở đây, @ cho biết rằng công thức nên sử dụng giao điểm ẩn để truy xuất giá trị trên cùng một hàng từ [Column1].  

Bạn có thể loại bỏ ký tự @ không?

Thường thì bạn có thể. Điều này phụ thuộc vào phần công thức ở bên phải của @ trả về những gì:

  • Nếu nó trả về một giá trị đơn (trường hợp phổ biến nhất), sẽ không có thay đổi nào khi loại bỏ @.
  • Nếu nó trả về một phạm vi hoặc mảng, việc loại bỏ @ sẽ khiến nó tràn sang các ô lân cận.

Nếu bạn loại bỏ @ được tự động thêm vào, rồi sau đó mở sổ làm việc trong phiên bản Excel cũ hơn, nó sẽ xuất hiện dưới dạng công thức mảng kế thừa (được bao trong dấu ngoặc nhọn {}), điều này được thực hiện nhằm đảm bảo phiên bản cũ hơn sẽ không kích hoạt giao điểm ẩn.

Khi nào chúng ta thêm @ vào công thức cũ?

Nhìn chung, các hàm trả về các dải ô hoặc mảng đa ô sẽ có tiền tố @ nếu chúng được tạo ra trong phiên bản Excel cũ hơn. Điều quan trọng cần lưu ý là không có thay đổi nào đối với cách hoạt động của công thức — giờ đây bạn chỉ có thể nhìn thấy giao điểm ẩn không nhìn thấy trước đây. Các hàm phổ biến có thể trả về nhiều dải ô bao gồm INDEX, OFFSET và Hàm do người dùng xác định (UDF).  Một ngoại lệ phổ biến là khi chúng được bao bọc trong một hàm chấp nhận một mảng hoặc một phạm vi (ví dụ: SUM() hoặc AVERAGE()). 

Hãy xem các hàm Excel trả về phạm vi hoặc mảng để biết thêm chi tiết.

Ví dụ

Công thức gốc Như trong Excel mảng động Giải thích
=SUM(A1:A10) =SUM(A1:A10) Không có thay đổi - Không có giao điểm ẩn có thể xảy ra, vì hàm SUM yêu cầu có các dải ô hoặc mảng.
=A1+A2 =A1+A2 Không có thay đổi - Không có giao cắt ngầm có thể xảy ra.
=A1:A10 =@A1:A10 Giao điểm ẩn sẽ xảy ra và Excel sẽ trả về giá trị liên kết với hàng có công thức.
=INDEX(A1:A10,B1) =@INDEX(A1:A10,B1) Giao cắt ngầm có thể xảy ra. Hàm INDEX có thể trả về một mảng hoặc dải ô khi tham đối thứ hai hoặc thứ ba của nó bằng 0.
=OFFSET(A1:A2,1,1) =@OFFSET(A1:A2,1,1) Giao cắt ngầm có thể xảy ra. Hàm OFFSET có thể trả về dải ô đa ô. Khi nó xảy ra, giao cắt ngầm sẽ được kích hoạt.
=MYUDF() =@MYUDF() Giao cắt ngầm có thể xảy ra. Hàm do người dùng xác định có thể trả về mảng. Khi chúng làm như vậy, công thức ban đầu sẽ kích hoạt giao điểm ẩn.

Sử dụng toán tử @ trong các công thức mới

Nếu bạn tạo hoặc sửa công thức trong Excel mảng động có chứa toán tử @, công thức có thể xuất hiện dưới dạng _xlfn. SINGLE() trong Excel mảng tiền động.

Điều này xảy ra khi bạn cam kết một công thức hỗn hợp. Công thức hỗn hợp là công thức dựa vào cả tính toán mảng và giao điểm ẩn, điều này không được hỗ trợ bởi Excel mảng tiền động. Mảng tiền động chỉ hỗ trợ các công thức thực hiện i) giao điểm ẩn hoặc ii) tính toán mảng xuyên suốt.

Khi kích hoạt mảng động, Excel phát hiện việc tạo ra một "công thức hỗn hợp", nó sẽ đề xuất một biến thể của công thức có giao điểm ẩn xuyên suốt. Ví dụ: nếu bạn nhập =A1:A10+@A1:A10,, bạn sẽ thấy hộp thoại sau:

Một hộp thoại hỏi liệu bạn có thích fromula =@A1:A10 + @A1:A10 thay vào đó không.

Nếu bạn chọn từ chối công thức được đề xuất bởi hộp thoại, công thức =A1:A10+@A1:A10 hỗn hợp sẽ được cam kết. Nếu sau đó bạn mở công thức này trong Excel mảng tiền động, nó sẽ xuất hiện như =A1:A10+_xlfn.SINGLE(A1:A10) với @ trong công thức hỗn hợp xuất hiện là: _xlfn.SINGLE(). Khi công thức này được đánh giá bởi Excel mảng tiền động, công thức sẽ trả về #NAME! . 

Bạn cần thêm trợ giúp?

Bạn luôn có thể hỏi chuyên gia trong Cộng đồng kỹ thuật Excel hoặc nhận hỗ trợ trong Cộng đồng.

Xem thêm

Hàm FILTER

Hàm RANDARRAY

Hàm SEQUENCE

Hàm SORT

Hàm SORTBY

Hàm UNIQUE

Lỗi #SPILL! trong Excel

Các mảng động và hành vi mảng bị tràn