web-dev-qa-db-ja.com

ArrayFormulaで文字列を連結します

H列とI列に次の文字列があります。

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

自動生成されたJ列が必要です。この結果は次のようになります。

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

そこで、次の式をJ1に入れます。

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

しかし、私が得た結果は次のとおりです。

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

私の式で何が問題になっていますか?

8
srjohnhuang

これはあなたが探しているものです:

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

Googleスプレッドシートで最も簡単な解決策は、CONCATENATEではなくCONCATを使用することです。

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

CONCATは2つの値のみを返し、この方法で配列数式に使用できます。 CONCATENATEを使用することはできません(他の人が述べたように)CONCATENATEは配列全体を返すためです。

6
craig_in_jp