Công thức động để chọn mọi cột thứ n trong Truy vấn trong Google Sheets

Đôi khi, khi bạn muốn chọn mọi cột thứ hai hoặc cột thứ n trong một Truy vấn trong Google Sheets, bạn có thể sử dụng mệnh đề Select. Điều này rất dễ dàng nếu số cột trong tập dữ liệu của bạn giới hạn từ 5-10 cột.

Tuy nhiên, nếu có một số lượng lớn cột, việc viết công thức Truy vấn mà không gây lỗi là một nhiệm vụ khó khăn. Bạn phải sử dụng “tham chiếu cột động” trong mệnh đề select của truy vấn. Dưới đây là lý do tại sao tôi nói như vậy.

Hãy kiểm tra: Tìm hiểu công thức Truy vấn Google Sheets với ví dụ.

Trong ví dụ này, tôi có 10 cột và đã chọn mỗi cột thứ 3 bằng Truy vấn.

=query(A1:J,"Select C,F,I")

Công thức tương tự sẽ dễ dàng hơn nếu bạn sử dụng số cột làm các trình định danh cột.

=query({A1:J},"Select Col3,Col6,Col9")

Vậy còn về phạm vi A1: AZ? Bạn có thể kết thúc với một công thức Truy vấn như sau, đúng không?

=query({A1:AZ},"Select Col3, Col6, Col9, Col12, Col15, Col18, Col21, Col24, Col27, Col30, Col33, Col36, Col39, Col42, Col45, Col48, Col51")

Tổng cộng có 52 cột trong phạm vi A1: AZ. Công thức trên chọn mỗi cột thứ 3 trong phạm vi đó. Khi bạn thêm nhiều cột hoặc thay đổi phạm vi, đôi khi bạn có thể gặp vấn đề với công thức của mình.

Để giải quyết vấn đề này, tôi có một công thức động để chọn mọi cột thứ n trong Truy vấn. Với công thức đó, bạn có thể tự động hóa các số cột trong mệnh đề select của truy vấn.

Bạn có thể dễ dàng thay đổi cột thứ n theo ý thích của bạn, chẳng hạn như chọn mỗi cột thứ 2, cột thứ 3, cột thứ 4 và cứ tiếp tục như vậy.

Chọn mỗi cột thứ n trong Truy vấn trong Google Sheets (Công thức động)

Hãy xem công thức Truy vấn cuối cùng ở trên. Trong công thức đó, chúng ta muốn chọn động các số cột.

Vì vậy, trong công thức đó, đến phần dưới đây sẽ giống nhau.

Phần 1 công thức:

=query({A1:AZ},"Select 

Chúng ta muốn tìm một công thức để tạo ra mỗi cột thứ n.

Col3, Col6, Col9, Col12, Col15, Col18, Col21, Col24, Col27, Col30, Col33, Col36, Col39, Col42, Col45, Col48, Col51

Công thức dưới đây sẽ tạo ra các cột thứ n để sử dụng trong Truy vấn.

Phần 2 công thức:

=ArrayFormula(join(", ",text(query(transpose({column(C1:AZ1);mod(column(C1:AZ1)-column(C1),3)}),"Select Col1 where Col2=0"),"Col0")))

Sau đó, công thức Truy vấn cuối cùng sẽ là như sau.

Phần 1 & Phần 2 công thức:

=query({A1:AZ},"Select "&ArrayFormula(join(", ",text(query(transpose({column(C1:AZ1);mod(column(C1:AZ1)-column(C1),3)}),"Select Col1 where Col2=0"),"Col0"))))

Để chọn mỗi cột thứ 3 trong Truy vấn, bạn có thể sử dụng công thức trên. Để chứng minh cho tiêu đề của bài viết này, có nghĩa là Công thức Động để Chọn Mỗi cột thứ n trong Truy vấn, tôi phải giải thích cách sửa đổi công thức này.

Chọn mỗi cột thứ n trong Truy vấn, theo cách Động

Trong công thức trên, mệnh đề select chọn Col3, Col6, Col9 v.v. Để thay đổi danh sách này để bắt đầu từ Col1, Col4, Col7 tương tự, hãy thay đổi tham chiếu ô C1 trong công thức thành A1. Nó xuất hiện ba lần trong công thức.

Làm thế nào để thay đổi cột thứ ba thành cột thứ hai?

Nó được điều khiển bởi số chia trong công thức MOD. Hiện tại, nó được đặt thành 3. Hãy thay đổi thành 2 hoặc bất kỳ số khác.

Kết luận

Lần này tôi không đi vào giải thích công thức nào cả. Mục tiêu của tôi là giúp bạn chọn n cột động trong Truy vấn Google Sheets.

Tôi hy vọng rằng tôi đã thành công trong khía cạnh đó. Nếu bạn hỏi tôi về logic công thức, điều đó khá đơn giản để hiểu.

Với sự trợ giúp của công thức MOD, tôi đã tạo ra một mảng số và trong đó, các số cột thứ n là 0. Tương tự, tôi đã tạo ra các số cột theo thứ tự tuần tự bằng cách sử dụng hàm COLUMN.

Tôi đã sử dụng TRANSPOSE để tạo một mảng hai cột trong đó cột thứ nhất chứa các số tuần tự và cột thứ hai chứa kết quả MOD.

Sau đó, tôi đã lọc cột thứ nhất nếu cột thứ hai chứa 0. Đó là những cột thứ n. Sau đó, tôi đã thêm văn bản “Col” với sự trợ giúp của các hàm Text và Join.

Đọc thêm: Cách có tham chiếu cột động trong Truy vấn Google Sheets.

Related posts