web-dev-qa-db-ja.com

googleスプレッドシート:関数NOT CODEを使用して配列を結合

アレイが1つあります

1 
2
3

別のアレイ

4
5
6

1つの関数を使用して2つの配列を結合するにはどうすればよいですか?

1
2
3
4
5
6
22
jason

配列が次のとおりだとします。

A1:A3 = {1;2;3}およびB1:B3 = {4;5;6}

どこかに書いてください:={A1:A3;B1:B3}

セミコロン;は行を区切るために使用され、カンマ,は列用です。

これがドキュメントです: Google Sheetsでの配列の使用

61
Luchostein
TRANSPOSE() //takes matrix as argument and returns transposed matrix
SPLIT() //breaks apart a string based on a delimiter character (char(13) here)
ARRAYFORMULA() //applies the formula within to array vs cell
CONCATENATE() //joins each cell in each range with a char(13), then the next cell...then the next matrix of cells (to which the first process also happens)
//note char(13) is a carriage return, i will call CR for ease

したがって、マトリックスAがある場合:1、2、3およびマトリックスB:4、5、6

手順は次のようになります。

TRANSPOSE(SPLIT(ARRAYFORMULA(CONCATENATE("1CR2CR3CR" ; "4CR5CR6CR")), CR))
TRANSPOSE(SPLIT("1CR2CR3CR4CR5CR6CR", "CR"))
TRANSPOSE({"1","2","3","4","5","6"})

最終的に:

1
2
3
4
5
6
7
Mr.Monshaw
=filter({A1:A;B1:B}, {A1:A;B1:B}<>"")
2
Masato Egami

これは古い質問であるため、以前の回答が書かれたときには存在しなかった可能性があります。

JOIN()数式を探しています。

ドキュメントリンク

使用例

JOIN(" and-a ",{1,2,"1 2 3 4"})

JOIN(",",{1,2,3},{4;5;6})

JOIN("-",A1:A100)

構文

JOIN(delimiter, value_or_array1, [value_or_array2, ...])

delimiter-連結された各値の間に配置する文字または文字列。

区切り文字は空白として指定できます。 JOIN(、{1,2,3})。 value_or_array1-区切り文字を使用して追加される1つまたは複数の値。

value_or_array2、...-[省略可]-区切り文字を使用して追加される追加の値または配列。

1
Patrick_K

私はこれがさらに簡単だと思った...

=ARRAYFORMULA({A:A;B:B})
1
harvest316

モンショー氏から提供された情報を踏まえて、私はこれを理解しました。

与えられた値 "1,2,3"はスプレッドシートのセルA1:A3にあり、値 "4,5,6,7"はセルB1:B4にあります。使用する数式は次のとおりです。

= TRANSPOSE(SPLIT(ARRAYFORMULA(CONCATENATE(concat(A1:A3、 "、"); concat(B1:B4、 "、"))))、 "、"))

説明。連結式は、指定されたセパレータ「、」を使用して値の文字列を作成します。したがって、concat(A1:A3、 "、")は "1,2,3"になります。

Concatenateは、指定された配列の値を1つの文字列として結合します。したがって、CONCATENATE(concat(A1:A3、 "、"); concat(B1:B4、 "、"))は "1,2,3,4,5,6,7"になります

ここでのSplit関数は、「、」を配列の値ではなく区切り文字として識別するために使用されます。転置により、結果が行ではなく列に表示されます。

0
user2054049