この数式を更新して、「arrayformula」内で機能するようにしています。
これは単独で機能し、私がそれを埋めるときに機能します。
=if(E2>0,CONCATENATE(B2, " | ",C2," | ",D2), "")
これは、スプレッドシートに行が追加されている場合は機能しません。
=arrayformula(if(E2:E>0,CONCATENATE(B2, " | ",C2," | ",D2), ""))
行2の値を何度も繰り返します。
行の数が増えるにつれてrow3、4、5などに合わせて調整するには、「b2」、「c2」、「d2」をどのように記述する必要がありますか?
してみてください:
=ArrayFormula(if(E2:E>0,B2:B&" | "&C2:C&" | "&D2:D,""))
私は期待していただろう:
=arrayformula(if(E2:E>0,CONCATENATE(B2:B," | ",C2:C," | ",D2:D),""))
上記と同じ結果を生成しますが、そうではありません。通常、CONCATENATEではなく&
は個人的な好みの問題ですが、完全に互換性はないようです。 CONCATENATE でそれについて言及していません。
ただし、Google Spreadsheetsには CONCAT があり、「&
演算子と同等」isが記載されています。この:
2つの値の連結を返します。
したがって、&
の代わりになります... ...一度に1つの「ペア」を連結するために提供されます。したがって:
=arrayformula(if(E2:E>0,(concat(concat(concat(B2:B," | "),concat(C2:C," | ")),D2:D)),""))
上記と同じ結果が得られます。
Excel 2016でリリースされたCONCATを支持するCONCATENATEのM $の非推奨(同様にdoesがより多くの結合を許可するように) 2つの文字列を合わせて)。