CONCATENATE sebuah string dengan ArrayFormula

9

Saya memiliki string berikut di kolom H dan I.

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

Saya ingin memiliki kolom J yang dibuat secara otomatis, yang hasilnya seperti:

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

Jadi saya menaruh rumus berikut di J1:

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

Tapi hasil yang saya dapatkan adalah:

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

Apa yang salah dengan formula saya?

srjohnhuang
sumber

Jawaban:

14

Inilah yang Anda cari:

=ARRAYFORMULA((IF(ROW(J:J)=1,"formulaTest",H1:H & I1:I)))
Jacob Jan Tuinstra
sumber
3
Bagus! Akhirnya berhasil sekarang !. Meskipun saya masih tidak tahu mengapa saya tidak dapat menggunakan "CONCATENATE", saya harus menggunakan "&" dalam formula ini.
3
@ srjohnhuang Dengan CONCATNATE, rentang kolom lengkap diumpankan ke ARRAYFORMULA. Dengan menggunakan ampersand, hanya entri tunggal yang diumpankan, memberikan Anda hasil yang diinginkan.
Jacob Jan Tuinstra
3
Alasan Anda dapat menggunakan & tetapi tidak concatenate () adalah concatenate dapat mengambil rentang sedangkan & hanya dapat bergabung dengan nilai-nilai rahasia tertentu.
8

Di Google Sheets, solusi paling sederhana adalah dengan menggunakan CONCAT dan bukannya CONCATENATE.

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

CONCAT hanya akan mengembalikan dua nilai dan dapat digunakan dengan cara ini untuk rumus array. Anda tidak dapat menggunakan CONCATENATE karena (seperti yang disebutkan oleh orang lain) itu akan mengembalikan seluruh array.

craig_in_jp
sumber
2
Atau bahkan lebih pendek,=arrayformula(H1:H & I1:I)