Mục lục
Để xem cách thức hoạt động của công thức này trong thực tế, vui lòng xem ảnh chụp màn hình bên dưới.
Trong C2, có một công thức mảng động hiển thị kết quả trong nhiều ô:
=UNIQUE(A2:A9)
Trong E2, hàm có tiền tố với ký tự @ gọi giao lộ ngầm. Do đó, chỉ giá trị duy nhất đầu tiên được trả về:
=@UNIQUE(A2:A9)
Để biết thêm thông tin, vui lòng xem Giao lộ ngầm trong Excel.
Ưu điểm của mảng động Excel
Không còn nghi ngờ gì nữa, mảng động là một trong những cải tiến tốt nhất của Excel trong nhiều năm. Giống như bất kỳ tính năng mới nào, chúng đều có điểm mạnh và điểm yếu. Thật may mắn cho chúng tôi, các điểm mạnh của công thức mảng động Excel mới là rất lớn!
Đơn giản và mạnh mẽ hơn
Mảng động giúp bạn có thể tạo các công thức mạnh mẽ hơn theo cách đơn giản hơn nhiều. Dưới đây là một số ví dụ:
- Trích xuất các giá trị duy nhất: công thức truyền thống
Do bản cập nhật mang tính cách mạng trong công cụ tính toán Excel 365, công thức mảng trở nên rất đơn giản và dễ hiểu đối với tất cả mọi người, không chỉ đối với người dùng cấp cao. Hướng dẫn giải thích khái niệm về mảng động Excel mới và chỉ ra cách chúng có thể làm cho trang tính của bạn hiệu quả hơn và dễ thiết lập hơn rất nhiều.
Công thức mảng Excel luôn được coi là đặc quyền của các chuyên gia và công thức Các chuyên gia. Nếu ai đó nói rằng "Điều này có thể được thực hiện với công thức mảng", phản ứng ngay lập tức của nhiều người dùng là "Ồ, không có cách nào khác à?".
Sự ra đời của mảng động được chờ đợi từ lâu và nhất chào mừng sự thay đổi. Do khả năng làm việc với nhiều giá trị một cách đơn giản, không có bất kỳ thủ thuật hay thủ thuật nào, công thức mảng động là thứ mà mọi người dùng Excel đều có thể hiểu và thích thú khi tạo.
Mảng động Excel
Mảng động là các mảng có thể thay đổi kích thước, tự động tính toán và trả về các giá trị vào nhiều ô dựa trên một công thức được nhập trong một ô.
Trải qua hơn 30 năm lịch sử, Microsoft Excel đã trải qua nhiều thay đổi, nhưng có một thứ không đổi - một công thức, một ô. Ngay cả với các công thức mảng truyền thống, bạn vẫn cần phải nhập công thức vào từng ô mà bạn muốn kết quả xuất hiện. Với mảng động, quy tắc này không còn đúng nữa. Bây giờ, bất kỳ công thức nào trả về một mảng giá trịđừng. Nếu một công thức có thể trả về nhiều giá trị, thì nó sẽ làm như vậy theo mặc định. Điều này cũng áp dụng cho các phép tính số học và các hàm kế thừa như được minh họa trong ví dụ này.
Hàm mảng động lồng nhau
Để tìm ra giải pháp cho các tác vụ phức tạp hơn, bạn có thể tự do kết hợp các hàm mảng động mới của Excel hoặc sử dụng chúng cùng với các tham chiếu cũ như được hiển thị tại đây và tại đây.
Tham chiếu tương đối và tuyệt đối ít quan trọng hơn
Nhờ phương pháp "một công thức, nhiều giá trị", không cần khóa phạm vi bằng dấu $ vì về mặt kỹ thuật, công thức chỉ nằm trong một ô. Vì vậy, đối với hầu hết các trường hợp, việc sử dụng tham chiếu ô tuyệt đối, tương đối hay hỗn hợp (vốn luôn là nguồn gây nhầm lẫn cho người dùng thiếu kinh nghiệm) không thực sự quan trọng - dù sao thì công thức mảng động cũng sẽ tạo ra kết quả chính xác!
Hạn chế của mảng động
Mảng động mới rất tuyệt, nhưng cũng như với bất kỳ tính năng mới nào, có một số cảnh báo và cân nhắc mà bạn nên biết.
Không thể sắp xếp kết quả theo thứ tự cách thông thường
Không thể sắp xếp phạm vi tràn được trả về bởi công thức mảng động bằng cách sử dụng tính năng Sắp xếp của Excel. Mọi nỗ lực như vậy sẽ dẫn đến lỗi " Bạn không thể thay đổi một phần của mảng ". Để sắp xếp kết quả từ nhỏ nhất đến lớn nhất hoặc ngược lại, hãy bọc công thức hiện tại của bạn trong hàm SORT. Ví dụ: đây là cách bạn có thể lọcvà sắp xếp cùng một lúc.
Không thể xóa bất kỳ giá trị nào trong phạm vi tràn
Không thể xóa giá trị nào trong phạm vi tràn vì cùng một lý do: bạn không thể thay đổi một phần của mảng. Hành vi này được mong đợi và hợp lý. Công thức mảng CSE truyền thống cũng hoạt động theo cách này.
Không được hỗ trợ trong bảng Excel
Tính năng này (hoặc lỗi?) khá bất ngờ. Công thức mảng động không hoạt động từ bên trong bảng Excel, chỉ trong phạm vi thông thường. Nếu bạn cố gắng chuyển đổi phạm vi tràn thành bảng, Excel sẽ thực hiện việc đó. Nhưng thay vì kết quả, bạn sẽ chỉ thấy #SPILL! lỗi.
Không hoạt động với Excel Power Query
Không thể tải kết quả của công thức mảng động vào Power Query. Giả sử, nếu bạn cố hợp nhất hai hoặc nhiều phạm vi tràn cùng nhau bằng cách sử dụng Power Query, điều này sẽ không hoạt động.
Mảng động so với công thức mảng CSE truyền thống
Với sự ra đời của mảng động, chúng ta có thể nói về hai loại Excel:
- Dynamic Excel hỗ trợ đầy đủ mảng động, hàm và công thức. Hiện tại, chỉ có Excel 365 và Excel 2021.
- Excel cũ , hay còn gọi là Excel truyền thống hoặc Excel tiền động, chỉ hỗ trợ Ctrl + Shift + Enter công thức mảng. Đó là Excel 2019, Excel 2016, Excel 2013 và các phiên bản cũ hơn.
Không cần phải nói rằng mảng động vượt trội hơn công thức mảng CSE về mọi mặt. Mặc dù mảng truyền thốngcông thức được giữ lại vì lý do tương thích, từ giờ trở đi, bạn nên sử dụng công thức mới.
Dưới đây là những điểm khác biệt cơ bản nhất:
- Công thức mảng động được nhập trong một ô và hoàn thành bằng cách nhấn phím Enter thông thường. Để hoàn thành công thức mảng kiểu cũ, bạn cần nhấn Ctrl + Shift + Enter .
- Công thức mảng mới tự động tràn ra nhiều ô. Công thức CSE phải được sao chép vào một dải ô để trả về nhiều kết quả.
- Đầu ra của công thức mảng động tự động thay đổi kích thước khi dữ liệu trong dải nguồn thay đổi. Các công thức CSE cắt bớt đầu ra nếu vùng trả về quá nhỏ và trả về lỗi trong các ô thừa nếu vùng trả về quá lớn.
- Có thể dễ dàng chỉnh sửa công thức mảng động trong một ô. Để sửa đổi công thức CSE, bạn cần chọn và chỉnh sửa toàn bộ phạm vi.
- Không thể xóa và chèn các hàng trong phạm vi công thức CSE - trước tiên bạn cần xóa tất cả các công thức hiện có. Với mảng động, việc chèn hoặc xóa hàng không phải là vấn đề.
Khả năng tương thích ngược: mảng động trong Excel cũ
Khi bạn mở sổ làm việc có chứa công thức mảng động trong Excel cũ, nó được tự động chuyển thành công thức mảng thông thường được đặt trong {dấu ngoặc nhọn}. Khi bạn mở lại trang tính trong Excel mới, dấu ngoặc nhọn sẽ bị xóa.
Trong Excel cũ, mảng động mớichức năng và tham chiếu phạm vi tràn có tiền tố _xlfn để cho biết rằng chức năng này không được hỗ trợ. Dấu hiệu giới thiệu phạm vi tràn (#) được thay thế bằng hàm ANCHORARRAY.
Ví dụ: đây là cách một công thức ĐỘC ĐÁO xuất hiện trong Excel 2013 :
Hầu hết các công thức mảng động (nhưng không phải tất cả!) sẽ tiếp tục hiển thị kết quả của chúng trong Excel cũ cho đến khi bạn thực hiện bất kỳ thay đổi nào đối với chúng. Việc chỉnh sửa công thức sẽ ngay lập tức phá vỡ công thức đó và hiển thị một hoặc nhiều #NAME? giá trị lỗi.
Công thức mảng động Excel không hoạt động
Tùy thuộc vào chức năng, các lỗi khác nhau có thể xảy ra nếu bạn sử dụng cú pháp sai hoặc đối số không hợp lệ. Dưới đây là 3 lỗi phổ biến nhất mà bạn có thể gặp phải với bất kỳ công thức mảng động nào.
#SPILL! lỗi
Khi một mảng động trả về nhiều kết quả, nhưng có thứ gì đó đang chặn phạm vi tràn, lỗi #SPILL! xảy ra lỗi.
Để khắc phục lỗi, bạn chỉ cần xóa hoặc xóa bất kỳ ô nào trong phạm vi tràn không hoàn toàn trống. Để nhanh chóng phát hiện tất cả các ô cản trở, hãy nhấp vào chỉ báo lỗi rồi nhấp vào Chọn các ô cản trở .
Ngoại trừ ô không phạm vi tràn trống, lỗi này có thể do một vài nguyên nhân khác. Để biết thêm thông tin, vui lòng xem:
- Lỗi #SPILL trong Excel - nguyên nhân và cách khắc phục
- Cách khắc phục lỗi #SPILL! lỗi với VLOOKUP, INDEX MATCH, SUMIF
#REF! lỗi
Dohỗ trợ hạn chế cho các tham chiếu bên ngoài giữa các sổ làm việc, các mảng động yêu cầu mở cả hai tệp. Nếu sổ làm việc nguồn bị đóng, lỗi #REF! lỗi được hiển thị.
#NAME? lỗi
#NAME? xảy ra lỗi nếu bạn cố gắng sử dụng hàm mảng động trong phiên bản Excel cũ hơn. Hãy nhớ rằng các hàm mới chỉ khả dụng trong Excel 365 và Excel 2021.
Nếu lỗi này xuất hiện trong các phiên bản Excel được hỗ trợ, hãy kiểm tra kỹ tên của hàm trong ô có vấn đề. Rất có thể là gõ nhầm :)
Đó là cách sử dụng mảng động trong Excel. Hy vọng, bạn sẽ thích chức năng mới tuyệt vời này! Dù sao thì, tôi cảm ơn bạn đã đọc và hy vọng được gặp bạn trên blog của chúng tôi vào tuần tới!
Tôi sẽ minh họa khái niệm này bằng một ví dụ rất cơ bản. Giả sử, bạn cần nhân hai nhóm số chẳng hạn để tính các tỷ lệ phần trăm khác nhau.
Trong các phiên bản Excel động trước, công thức dưới đây sẽ chỉ hoạt động cho ô đầu tiên, trừ khi bạn nhập nó vào nhiều ô các ô và nhấn Ctrl + Shift + Enter để biến nó thành công thức mảng một cách rõ ràng:
=A3:A5*B2:D2
Bây giờ, hãy xem điều gì sẽ xảy ra khi công thức tương tự được sử dụng trong Excel 365. Bạn chỉ cần nhập nó vào một ô (trong trường hợp của chúng tôi là ô B3), nhấn phím Enter… và có toàn bộ kết quả được lấp đầy cùng một lúc:
Điền nhiều ô có một công thức duy nhất được gọi là tràn ra và phạm vi ô đã điền được gọi là phạm vi tràn.
Điều quan trọng cần lưu ý là bản cập nhật gần đây không chỉ là một cách mới xử lý mảng trong Excel. Trên thực tế, đây là một thay đổi mang tính đột phá đối với toàn bộ công cụ tính toán. Với mảng động, một loạt các hàm mới đã được thêm vào Thư viện hàm Excel và những hàm hiện có bắt đầu hoạt động nhanh hơn và hiệu quả hơn. Cuối cùng, các mảng động mới được cho là sẽ thay thế hoàn toàn các công thức mảng kiểu cũ được nhập bằngPhím tắt Ctrl + Shift + Enter.
Tính khả dụng của mảng động Excel
Mảng động đã được giới thiệu tại Hội nghị Microsoft Ignite năm 2018 và được phát hành cho người đăng ký Office 365 vào tháng 1 năm 2020. Hiện tại, chúng có sẵn trong Đăng ký Microsoft 365 và Excel 2021.
Mảng động được hỗ trợ trong các phiên bản này:
- Excel 365 cho Windows
- Excel 365 cho Mac
- Excel 2021
- Excel 2021 cho Mac
- Excel cho iPad
- Excel cho iPhone
- Excel cho máy tính bảng Android
- Excel cho điện thoại Android
- Excel cho web
Các hàm mảng động của Excel
Là một phần của chức năng mới, 6 hàm mới đã được giới thiệu trong Excel 365 xử lý các mảng nguyên bản và xuất dữ liệu vào một dải ô. Đầu ra luôn động - khi có bất kỳ thay đổi nào xảy ra trong dữ liệu nguồn, kết quả sẽ tự động cập nhật. Do đó, tên nhóm - hàm mảng động .
Các hàm mới này dễ dàng xử lý một số tác vụ mà theo truyền thống được coi là khó giải quyết. Ví dụ: chúng có thể loại bỏ các giá trị trùng lặp, trích xuất và đếm các giá trị duy nhất, lọc ra các khoảng trống, tạo số nguyên và số thập phân ngẫu nhiên, sắp xếp theo thứ tự tăng dần hoặc giảm dần, v.v.
Bạn sẽ tìm thấy mô tả ngắn gọn bên dưới về chức năng của từng chức năng cũng như các liên kết đến các hướng dẫn chuyên sâu:
- ĐỘC ĐÁO - trích xuất các mục duy nhất từ mộtphạm vi ô.
- FILTER - lọc dữ liệu dựa trên tiêu chí bạn xác định.
- SORT - sắp xếp phạm vi ô theo cột đã chỉ định.
- SORTBY - sắp xếp phạm vi của các ô theo một dải ô hoặc mảng khác.
- RANDARRAY - tạo một mảng các số ngẫu nhiên.
- SEQUENCE - tạo một danh sách các số tuần tự.
- TEXTSPLIT - tách các chuỗi theo một dấu phân cách được chỉ định trên các cột hoặc/và hàng.
- TOCOL - chuyển đổi một mảng hoặc dải thành một cột.
- TOROW - chuyển đổi một dải hoặc mảng thành một hàng.
- WRAPCOLS - chuyển đổi hàng hoặc cột thành mảng 2D dựa trên số lượng giá trị được chỉ định trên mỗi hàng.
- WRAPROWS - định hình lại hàng hoặc cột thành mảng 2D dựa trên số lượng giá trị được chỉ định trên mỗi cột .
- TAKE - trích xuất một số hàng và/hoặc cột liền kề được chỉ định từ đầu hoặc cuối của một mảng.
Ngoài ra, có hai hàm thay thế hiện đại cho các hàm Excel phổ biến , không chính thức trong nhóm, nhưng tận dụng e tất cả các ưu điểm của mảng động:
XLOOKUP - là phiên bản kế thừa mạnh mẽ hơn của VLOOKUP, HLOOKUP và LOOKUP có thể tra cứu cả trong cột và hàng và trả về nhiều giá trị.
XMATCH - là một phiên bản kế tiếp linh hoạt hơn của hàm MATCH có thể thực hiện tra cứu theo chiều dọc và chiều ngang, đồng thời trả về vị trí tương đối của mục đã chỉ định.
Công thức mảng động Excel
Trongcác phiên bản Excel hiện đại, hành vi mảng động được tích hợp sâu và trở thành nguyên bản cho tất cả các hàm , ngay cả những hàm ban đầu không được thiết kế để hoạt động với mảng. Nói một cách đơn giản, đối với bất kỳ công thức nào trả về nhiều hơn một giá trị, Excel sẽ tự động tạo một phạm vi có thể thay đổi kích thước để xuất kết quả. Nhờ khả năng này, các hàm hiện có giờ đây có thể thực hiện phép thuật!
Các ví dụ dưới đây cho thấy các công thức mảng động mới đang hoạt động cũng như tác dụng của mảng động đối với các hàm hiện có.
Ví dụ 1. Hàm mảng động mới
Ví dụ này cho thấy giải pháp có thể được thực hiện nhanh hơn và đơn giản hơn bao nhiêu với các hàm mảng động của Excel.
Để trích xuất danh sách các giá trị duy nhất từ một cột, theo truyền thống, bạn sẽ sử dụng một công thức CSE phức tạp như thế này. Trong Excel động, tất cả những gì bạn cần là một công thức ĐỘC ĐÁO ở dạng cơ bản:
=UNIQUE(B2:B10)
Bạn nhập công thức vào bất kỳ ô trống nào rồi nhấn Enter. Excel ngay lập tức trích xuất tất cả các giá trị khác nhau trong danh sách và xuất chúng thành một dải ô bắt đầu từ ô mà bạn đã nhập công thức (trong trường hợp của chúng tôi là D2). Khi dữ liệu nguồn thay đổi, kết quả sẽ được tính toán lại và tự động cập nhật.
Ví dụ 2. Kết hợp nhiều hàm mảng động trong một công thức
Nếu không có cách để hoàn thành một nhiệm vụ với một chức năng, hãy xâu chuỗi một vài chức năng lại với nhau! Vìví dụ: để lọc dữ liệu dựa trên điều kiện và sắp xếp kết quả theo thứ tự bảng chữ cái, hãy bọc hàm SORT xung quanh FILTER như sau:
=SORT(FILTER(A2:C13, B2:B13=F1, "No results"))
Trong đó A2:C13 là dữ liệu nguồn, B2:B13 là dữ liệu nguồn các giá trị cần kiểm tra và F1 là tiêu chí.
Ví dụ 3. Sử dụng các hàm mảng động mới cùng với các hàm hiện có
Khi công cụ tính toán mới được triển khai trong Excel 365 có thể dễ dàng biến các công thức thông thường thành mảng, không gì có thể ngăn cản bạn kết hợp các hàm mới và hàm cũ với nhau.
Ví dụ: để đếm xem có bao nhiêu giá trị duy nhất trong một phạm vi nhất định, hãy lồng mảng động Hàm UNIQUE vào COUNTA cũ tốt:
=COUNTA(UNIQUE(B2:B10))
Ví dụ 4. Các hàm hiện tại hỗ trợ mảng động
Nếu bạn cung cấp một loạt các ô thành hàm TRIM trong phiên bản cũ hơn chẳng hạn như Excel 2016 hoặc Excel 2019, hàm này sẽ trả về một kết quả duy nhất cho ô đầu tiên:
=TRIM(A2:A6)
Trong Excel động, cùng một công thức sẽ xử lý tất cả của các ô và trả về nhiều kết quả, như hình bên dưới:
Ví dụ 5. Công thức VLOOKUP trả về nhiều giá trị
Như mọi người đã biết, hàm VLOOKUP được thiết kế để trả về một giá trị duy nhất giá trị dựa trên chỉ mục cột mà bạn chỉ định. Tuy nhiên, trong Excel 365, bạn có thể cung cấp một mảng số cột để trả về kết quả khớp từ một số cột:
=VLOOKUP(F1, A2:C6, {1,2,3}, FALSE)
Ví dụ 6. Công thức TRANSPOSE được thực hiệneasy
Trong các phiên bản Excel cũ hơn, cú pháp của hàm TRANSPOSE không có chỗ cho những lỗi sai. Để xoay dữ liệu trong trang tính của bạn, bạn cần đếm các cột và hàng ban đầu, chọn cùng một số lượng ô trống nhưng thay đổi hướng (một thao tác khó hiểu trong các trang tính lớn!), nhập công thức TRANSPOSE trong phạm vi đã chọn và nhấn Ctrl + Shift + Enter để hoàn thành chính xác. Phù!
Trong Excel động, bạn chỉ cần nhập công thức vào ô ngoài cùng bên trái của phạm vi đầu ra và nhấn Enter:
=TRANSPOSE(A1:B6)
Xong!
Phạm vi tràn - một công thức, nhiều ô
Phạm vi tràn là một dải ô chứa các giá trị được trả về bởi một công thức mảng động.
Khi bất kỳ ô nào trong phạm vi tràn được chọn, đường viền màu lam sẽ xuất hiện để cho biết rằng mọi thứ bên trong ô đó được tính toán theo công thức ở ô trên cùng bên trái. Nếu bạn xóa công thức trong ô đầu tiên, tất cả kết quả sẽ biến mất.
Phạm vi tràn là một điều thực sự tuyệt vời giúp cuộc sống của người dùng Excel dễ dàng hơn rất nhiều . Trước đây, với các công thức mảng CSE, chúng ta phải đoán có bao nhiêu ô để sao chép chúng vào. Bây giờ, bạn chỉ cần nhập công thức vào ô đầu tiên và để Excel lo phần còn lại.
Lưu ý. Nếu một số dữ liệu khác đang chặn phạm vi tràn, lỗi #SPILL sẽ xảy ra. Khi dữ liệu cản trở được loại bỏ, lỗi sẽ biến mất.
Để biết thêm thông tin, vui lòng xemPhạm vi tràn Excel.
Tham chiếu phạm vi tràn (ký hiệu #)
Để tham chiếu phạm vi tràn, hãy đặt thẻ băm hoặc ký hiệu thăng (#) sau địa chỉ của ô phía trên bên trái trong phạm vi.
Ví dụ: để biết có bao nhiêu số ngẫu nhiên được tạo bởi công thức RANDARRAY trong A2, hãy cung cấp tham chiếu phạm vi tràn cho hàm COUNTA:
=COUNTA(A2#)
Để cộng các giá trị trong phạm vi tràn, hãy sử dụng:
=SUM(A2#)
Mẹo:
- Để tham khảo nhanh một phạm vi tràn, chỉ cần chọn tất cả các ô bên trong hộp màu xanh lam bằng chuột và Excel sẽ tạo tham chiếu phạm vi tràn cho bạn.
- Không giống như tham chiếu phạm vi thông thường, tham chiếu phạm vi tràn là động và phản ứng với việc thay đổi kích thước phạm vi tự động.
Để biết thêm chi tiết, vui lòng xem Toán tử phạm vi tràn.
Giao điểm ẩn và ký tự @
Trong mảng động Excel, có thêm một thay đổi quan trọng trong ngôn ngữ công thức - sự ra đời của ký tự @, được gọi là toán tử giao nhau ngầm định .
Trong Microsoft Excel, giao lộ ngầm định là một hành vi công thức làm giảm nhiều giá trị thành một giá trị duy nhất. Trong Excel cũ, một ô chỉ có thể chứa một giá trị duy nhất, do đó, đó là hành vi mặc định và không cần toán tử đặc biệt nào cho ô đó.
Trong Excel mới, tất cả các công thức được coi là công thức mảng theo mặc định. Toán tử giao ngầm ẩn được sử dụng để ngăn chặn hành vi của mảng nếu bạn không muốn