Cách sử dụng công thức mảng trong Google Trang tính


Đầu năm 2023, Google giới thiệu một số chức năng mới dành cho Trang tính, bao gồm 8 trang để làm việc với mảng. Khi sử dụng các hàm này, bạn có thể chuyển đổi một mảng thành một hàng hoặc cột, tạo một mảng mới từ một hàng hoặc cột hoặc nối thêm một mảng hiện tại.

Với sự linh hoạt hơn khi làm việc với mảng và vượt xa hàm ARRAYFORMULA cơ bản, hãy xem cách sử dụng các hàm mảng này với công thức trong Google Trang tính.

Mẹo: Một số hàm này có thể quen thuộc với bạn nếu bạn cũng sử dụng Microsoft Excel.

Biến đổi một mảng: TOROW và TOCOL

Nếu bạn có một mảng trong tập dữ liệu mà bạn muốn chuyển đổi thành một hàng hoặc cột, bạn có thể sử dụng hàm TOROW và TOCOL.

Cú pháp cho mỗi hàm đều giống nhau, TOROW(array, bypass, scan)TOCOL(array, bypass, scan)trong đó chỉ cần đối số đầu tiên cho cả hai.

  • Mảng: Mảng bạn muốn chuyển đổi, có định dạng là “A1:D4.”
  • Bỏ qua: Theo mặc định, không có tham số nào bị bỏ qua (0), nhưng bạn có thể sử dụng 1 để bỏ qua khoảng trống, 2 để bỏ qua lỗi hoặc 3 để bỏ qua khoảng trống và lỗi.
  • Quét: Đối số này xác định cách đọc các giá trị trong mảng. Theo mặc định, hàm sẽ quét theo hàng hoặc sử dụng giá trị Sai, nhưng bạn có thể sử dụng True để quét theo cột nếu muốn.
  • Hãy xem qua một số ví dụ sử dụng hàm TOROW và TOCOL cũng như công thức của chúng.

    Trong ví dụ đầu tiên này, chúng ta sẽ lấy mảng từ A1 đến C3 và biến nó thành một hàng bằng cách sử dụng các đối số mặc định có công thức sau:

    =TOROW(A1:C3)

    Như bạn có thể thấy, mảng hiện đã xếp thành một hàng. Vì chúng tôi đã sử dụng đối số scanmặc định nên hàm sẽ đọc từ trái sang phải (A, D, G), xuống, rồi lại từ trái sang phải (B, E, H) cho đến khi hoàn tất—được quét bởi hàng.

    Để đọc mảng theo cột thay vì hàng, chúng ta có thể sử dụng Truecho đối số scan. Chúng tôi sẽ để trống đối số bỏ qua. Đây là công thức:

    =TOROW(A1:C3,,TRUE)

    Bây giờ bạn thấy hàm đọc mảng từ trên xuống dưới (A, B, C), từ trên xuống dưới (D, E, F) và từ trên xuống dưới (G, H, I)..

    Hàm TOCOL hoạt động theo cách tương tự nhưng chuyển mảng thành cột. Sử dụng cùng một phạm vi, từ A1 đến C3, đây là công thức sử dụng các đối số mặc định:

    =TOCOL(A1:C3)

    Một lần nữa, sử dụng mặc định cho đối số scan, hàm sẽ đọc từ trái sang phải và cung cấp kết quả như vậy.

    Để đọc mảng theo cột thay vì hàng, hãy chèn Truecho đối số scannhư sau:

    =TOCOL(A1:C3,,TRUE)

    Bây giờ bạn thấy hàm đọc mảng từ trên xuống dưới.

    Tạo một mảng mới từ hàng hoặc cột: CHOOSEOWS và CHOOSECOLS

    Bạn có thể muốn tạo một mảng mới từ một mảng hiện có. Điều này cho phép bạn tạo một phạm vi ô mới chỉ với các giá trị cụ thể từ một phạm vi ô khác. Để làm điều này, bạn sẽ sử dụng CHOOSEOWS và CHOOSECOLS Các chức năng của Google Trang tính.

    Cú pháp của mỗi hàm đều giống nhau, CHOOSEROWS (array, row_num, row_num_opt)CHOOSECOLS (array, col_num, col_num_opt),trong đó bắt buộc phải có hai đối số đầu tiên cho cả hai.

    • Mảng: Mảng hiện có, được định dạng là “A1:D4.”
    • Row_numhoặc Col_num: Số hàng hoặc cột đầu tiên bạn muốn trả về.
    • Row_num_opthoặc Col_num_opt: Số cho các hàng hoặc cột bổ sung mà bạn muốn trả về. Google đề nghị bạn sử dụng số âm trả về các hàng từ dưới lên hoặc các cột từ phải sang trái.
    • Hãy xem một số ví dụ sử dụng CHOOSEOWS và CHOOSECOLS cũng như công thức của chúng.

      Trong ví dụ đầu tiên này, chúng ta sẽ sử dụng mảng từ A1 đến B6. Chúng tôi muốn trả về các giá trị ở hàng 1, 2 và 6. Đây là công thức:

      =CHOOSEROWS(A1:B6,1,2,6)

      Như bạn có thể thấy, chúng tôi đã nhận được ba hàng đó để tạo mảng mới.

      Đối với một ví dụ khác, chúng ta sẽ sử dụng cùng một mảng. Lần này, chúng tôi muốn trả về hàng 1, 2 và 6 nhưng với thứ tự ngược lại là 2 và 6. Bạn có thể sử dụng số dương hoặc số âm để nhận được kết quả tương tự.

      Nếu sử dụng số âm, bạn sẽ sử dụng công thức này:

      =CHOOSEROWS(A1:B6,1,-1,-5).

      Để giải thích, 1 là hàng đầu tiên trả về, -1 là hàng thứ hai trả về, là hàng đầu tiên bắt đầu từ dưới cùng và -5 là hàng thứ năm từ dưới lên.

      Nếu sử dụng số dương, bạn sẽ sử dụng công thức này để thu được kết quả tương tự:

      =CHOOSEROWS(A1:B6,1,6,2)

      Hàm CHOOSECOLS hoạt động tương tự, ngoại trừ việc bạn sử dụng nó khi muốn tạo một mảng mới từ các cột thay vì hàng.

      Sử dụng mảng từ A1 đến D6, chúng ta có thể trả về cột 1 (cột A) và 4 (cột D) với công thức sau:

      =CHOOSECOLS(A1:D6,1,4)

      Bây giờ chúng ta có mảng mới chỉ có hai cột đó.

      Một ví dụ khác, chúng tôi sẽ sử dụng cùng một mảng bắt đầu từ cột 4. Sau đó, trước tiên chúng tôi sẽ thêm cột 1 và 2 với 2 (cột B). Bạn có thể sử dụng số dương hoặc số âm:

      =CHOOSECOLS(A1:D6,4,2,1)

      =CHOOSECOLS(A1:D6,4,-3,-4)

      Như bạn có thể thấy trong ảnh chụp màn hình ở trên, với các công thức trong ô thay vì Thanh công thức, chúng tôi nhận được kết quả tương tự khi sử dụng cả hai tùy chọn.

      Lưu ý: Vì Google gợi ý sử dụng số âm sẽ đảo ngược vị trí của kết quả, hãy ghi nhớ điều này nếu bạn không nhận được kết quả chính xác khi sử dụng số dương.

      Bọc để tạo một mảng mới: WRAPROWS và WRAPCOLS

      Nếu bạn muốn tạo một mảng mới từ một mảng hiện có nhưng bao bọc các cột hoặc hàng bằng một số giá trị nhất định trong mỗi mảng, bạn có thể sử dụng các hàm WRAPROWS và WRAPCOLS.

      Cú pháp cho mỗi hàm đều giống nhau, WRAPROWS (phạm vi, số lượng, phần đệm)WRAPCOLS (phạm vi, số lượng, phần đệm),trong đó hai đối số đầu tiên là cần thiết cho cả hai.

      • Phạm vi: Phạm vi ô hiện có mà bạn muốn sử dụng cho một mảng, được định dạng là “A1:D4.”
      • Đếm: Số lượng ô cho mỗi hàng hoặc cột.
      • Pad: Bạn có thể sử dụng đối số này để đặt văn bản hoặc một giá trị vào các ô trống. Điều này thay thế lỗi #N/A mà bạn sẽ nhận được đối với các ô trống. Bao gồm văn bản hoặc giá trị trong dấu ngoặc kép.
      • Hãy xem qua một số ví dụ sử dụng hàm WRAPROWS và WRAPCOLS cũng như công thức của chúng..

        Trong ví dụ đầu tiên này, chúng tôi sẽ sử dụng phạm vi ô từ A1 đến E1. Chúng ta sẽ tạo một mảng mới bao bọc các hàng với ba giá trị trong mỗi hàng. Đây là công thức:

        =WRAPROWS(A1:E1,3)

        Như bạn có thể thấy, chúng ta có một mảng mới với kết quả chính xác, ba giá trị trên mỗi hàng. Bởi vì chúng ta có một ô trống trong mảng nên lỗi #N/A sẽ hiển thị. Đối với ví dụ tiếp theo, chúng tôi sẽ sử dụng đối số padđể thay thế lỗi bằng văn bản “Không có”. Đây là công thức:

        =WRAPROWS(A1:E1,3,”None”)

        Bây giờ, chúng ta có thể thấy một từ thay vì lỗi trên Google Trang tính.

        Hàm WRAPCOLS thực hiện điều tương tự bằng cách tạo một mảng mới từ một dải ô hiện có, nhưng làm như vậy bằng cách gói các cột thay vì các hàng.

        Ở đây, chúng ta sẽ sử dụng cùng một mảng, từ A1 đến E3, gói các cột bằng ba giá trị trong mỗi cột:

        =WRAPCOLS(A1:E1,3)

        Giống như ví dụ WRAPROWS, chúng ta nhận được kết quả đúng nhưng cũng có lỗi do ô trống. Với công thức này, bạn có thể sử dụng đối số padđể thêm từ “Empty”:

        =WRAPCOLS(A1:E1,3,”Empty”)

        Mảng mới này trông đẹp hơn nhiều khi có một từ thay vì có lỗi.

        Kết hợp tạo mảng mới: HSTACK và VSTACK

        Hai hàm cuối cùng chúng ta sẽ xem xét là nối thêm mảng. Với HSTACK và VSTACK, bạn có thể thêm hai hoặc nhiều phạm vi ô lại với nhau để tạo thành một mảng duy nhất, theo chiều ngang hoặc chiều dọc.

        Cú pháp cho mỗi hàm giống nhau, HSTACK (range1, range2,…)VSTACK (range1, range2,…),trong đó chỉ có đối số đầu tiên yêu cầu. Tuy nhiên, hầu như bạn sẽ luôn sử dụng đối số thứ hai, đối số này kết hợp một phạm vi khác với đối số thứ nhất.

        • Phạm vi1: Phạm vi ô đầu tiên bạn muốn sử dụng cho mảng, được định dạng là “A1:D4.”
        • Range2,…: Dải ô thứ hai bạn muốn thêm vào dải ô đầu tiên để tạo mảng. Bạn có thể kết hợp nhiều hơn hai phạm vi ô.
        • Hãy xem một số ví dụ sử dụng HSTACK và VSTACK cũng như công thức của chúng.

          Trong ví dụ đầu tiên này, chúng tôi sẽ kết hợp các phạm vi từ A1 đến D2 với A3 đến D4 bằng công thức sau:.

          =HSTACK(A1:D2,A3:D4)

          Bạn có thể thấy phạm vi dữ liệu kết hợp của chúng tôi tạo thành một mảng ngang duy nhất.

          Đối với ví dụ về hàm VSTACK, chúng tôi kết hợp ba phạm vi. Bằng công thức sau, chúng ta sẽ sử dụng các phạm vi từ A2 đến C4, A6 đến C8 và A10 đến C12:

          =VSTACK(A2:C4,A6:C8,A10:C12)

          Bây giờ, chúng ta có một mảng chứa tất cả dữ liệu sử dụng công thức trong một ô.

          Thao tác mảng một cách dễ dàng

          Mặc dù bạn có thể sử dụng CÔNG THỨC Mảng trong một số trường hợp nhất định, chẳng hạn như với hàm SUM hoặc hàm IF, nhưng các công thức mảng bổ sung này trên Google Trang tính có thể giúp bạn tiết kiệm thời gian. Chúng giúp bạn sắp xếp trang tính chính xác như bạn muốn và với một công thức mảng duy nhất.

          Để biết thêm hướng dẫn như thế này nhưng với các hàm không phải mảng, hãy xem cách sử dụng COUNTIF hoặc Hàm SUMIF trong Google Trang tính.

          .

          bài viết liên quan:


          10.06.2023