Toán tử giao cắt ngầm được giới thiệu như một phần trong việc nâng cấp đáng kể lên ngôn ngữ công thức của Excel để hỗ trợ mảng động. Mảng động mang lại khả năng và chức năng tính toán mới đáng kể cho Excel.
Ngôn ngữ Công thức đã nâng cấp
Ngôn ngữ công thức đã nâng cấp của Excel gần như giống với ngôn ngữ cũ, ngoại trừ việc ngôn ngữ đó sử dụng toán tử @ để cho biết nơi có thể xảy ra giao điểm ẩn, trong khi ngôn ngữ cũ đã thực hiện điều này một cách im lặng. Kết quả là, bạn có thể nhận thấy @xuất hiện trong một số công thức khi mở trong mảng động Excel. Đ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 giống như thông thường.
Giao điểm ẩn là gì?
Lô-gic giao điểm ẩn làm giảm nhiều giá trị thành một giá trị duy nhất. Excel đã làm điều này để buộc công thức trả về một giá trị duy nhất, vì một ô 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ị duy nhất thì giao điểm ẩn không làm gì cả (mặc dù về mặt kỹ thuật, nó đã được thực hiện trong nền). Lô-gic hoạt động như sau:
-
Nếu giá trị là một mục đơn lẻ, thì trả về mục đó.
-
Nếu giá trị là một phạm vi, thì trả về giá trị từ ô đó trên cùng 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ự ra đời của mảng động, Excel không còn giới hạn ở việc trả về các giá trị duy nhất từ các công thức, vì vậy không còn cần giao điểm ẩn im lặng nữa. Trong trường hợp một công thức cũ có thể kích hoạt giao điểm ẩn một cách vô hình, thì mảng động cho phép Excel hiển thị vị trí công thức sẽ xảy ra với @.
Tại sao lại là biểu tượng @?
Ký hiệu @ đã được sử dụng trong tham chiếu bảng để chỉ ra giao điểm ẩn. Hãy cân nhắc công thức sau đây trong bảng =[@Column1]. Tại đâ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ể xóa @?
Thường thì bạn có thể. Nó phụ thuộc vào phần nào của công thức ở bên phải của @ trả về:
-
Nếu nó trả về một giá trị duy nhất (trường hợp phổ biến nhất), sẽ không có thay đổi nào bằng cách loại bỏ @.
-
Nếu nó trả về một dải ô hoặc mảng, việc loại bỏ @ sẽ khiến nó tràn đếncác ô bên cạnh.
Nếu bạn loại bỏ một @ tự động được thêm vào và 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 một công thức mảng thừa tự (được bọc bằng dấu ngoặc nhọn {}), điều này được thực hiện để đảm bảo phiên bản cũ hơn sẽ không kích hoạt giao điểm ngầm.
Khi nào chúng ta thêm @ vào công thức cũ?
Nói chung, các hàm trả về các dải ô hoặc mảng đa ô sẽ được tiền tố với @ nếu chúng được tạo 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 thức hoạt động của bạn — bạn chỉ cần nhìn thấy giao điểm ẩn ẩn trước đây ngay bây giờ. Các hàm phổ biến có thể trả về các dải ô đa ô bao gồm hàm INDEX, OFFSET và Hàm do Người dùng Xác định (UDFs). Một ngoại lệ phổ biến là nếu chúng được ngắt trong một hàm chấp nhận một mảng hoặc phạm vi (ví dụ như SUM() hoặc AVERAGE()).
Hãy xem mục Các hàm Excel trả về các dải ô hoặc mảng để biết thêm chi tiết.
Ví dụ
Công thức gốc |
Như hiển thị trong mảng động Excel |
Giải thích |
---|---|---|
=SUM(A1:A10) |
=SUM(A1:A10) |
Không có thay đổi - Không có giao điểm ẩn nào có thể xảy ra, vì hàm SUM mong đợi các dải ô hoặc mảng. |
=A1+A2 |
=A1+A2 |
Không có thay đổi - Không có giao điểm 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 chứa công thức. |
=INDEX(A1:A10,B1) |
=@INDEX(A1:A10,B1) |
Giao điểm ngầm có thể xảy ra. Hàm INDEX có thể trả về một mảng hoặc phạm vi khi đối số thứ hai hoặc thứ ba của nó bằng 0. |
=OFFSET(A1:A2,1,1) |
=@OFFSET(A1:A2,1,1) |
Giao điểm ngầm có thể xảy ra. Hàm OFFSET có thể trả về dải ô đa ô. Khi đó, giao điểm ẩn sẽ được kích hoạt. |
=MYUDF() |
=@MYUDF() |
Giao điểm ngầm có thể xảy ra. Hàm do Người dùng Xác định có thể trả về mảng. Khi 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 mảng động Excel có chứa toán tử @ thì công thức đó có thể xuất hiện dưới dạng _xlfn. SINGLE() trong Excel mảng động trước.
Đ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, excel không hỗ trợ tính năng này bằng mảng trước động. Mảng động trước chỉ hỗ trợ các công thức đã làm i) giao điểm ẩn hoặc ii) tính toán mảng trong suốt.
Khi mảng động được bật 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 ẩn giao cắt 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 đây:
Nếu bạn chọn từ chối công thức do hộp thoại đề xuất, công thức hỗn hợp =A1:A10+@A1:A10 sẽ được cam kết. Nếu sau đó bạn mở công thức này trong Excel mảng động trước, công thức sẽ xuất hiện dưới dạng =A1:A10+_xlfn. SINGLE(A1:A10) với dấu @trong công thức hỗn hợp xuất hiện dưới dạng số _xlfn. SINGLE(). Khi công thức này được Excel đánh giá bằng mảng động trước, Excel sẽ trả về giá #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.