CONCATENATE một chuỗi với ArrayFormula


9

Tôi có chuỗi sau trong cột H và I.

H2="http://"
I2="aaa"
H3="http://"
I3="bbb"

Tôi muốn có một cột J được tạo tự động, kết quả như sau:

J2="http://aaa"
J3="http://bbb"

Vì vậy, tôi đặt công thức sau trong J1:

= ARRAYFORMULA (IF(ROW(J:J)=1;"formulaTest";CONCATENATE(H:H1, I:I1 ) ))

Nhưng kết quả tôi nhận được là:

J2="http://http://aaabbb"
J3="http://http://aaabbb"

Điều gì đang xảy ra với công thức của tôi?

Câu trả lời:


13

Đây là những gì bạn đang tìm kiếm:

=ARRAYFORMULA((IF(ROW(J:J)=1,"formulaTest",H1:H & I1:I)))

3
Tuyệt quá! Cuối cùng nó cũng hoạt động! Mặc dù tôi vẫn không biết tại sao tôi không thể sử dụng "CONCATENATE", thay vào đó tôi cần sử dụng "&" trong công thức này.

2
@srjohnhuang Với CONCATNATE, phạm vi cột hoàn chỉnh được đưa đến ARRAYFORMULA. Sử dụng ký hiệu, chỉ các mục duy nhất được cung cấp, cho bạn kết quả mong muốn.
Jacob Jan Tuinstra

3
Lý do bạn có thể sử dụng & nhưng không concatenate () là vì concatenate có thể mất một phạm vi trong khi & chỉ có thể tham gia các giá trị kín đáo cụ thể.

8

Trong Google Sheets, giải pháp đơn giản nhất là chỉ sử dụng CONCAT thay vì CONCATENATE.

=ARRAYFORMULA(CONCAT(H1:H,I1:I))

CONCAT sẽ chỉ trả về hai giá trị và có thể được sử dụng theo cách này cho một công thức mảng. Bạn không thể sử dụng CONCATENATE vì (như đã đề cập bởi những người khác) nó sẽ trả về toàn bộ mảng.


2
Hoặc thậm chí ngắn hơn,=arrayformula(H1:H & I1:I)
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.