Googleスプレッドシート(新バージョン)のSPLIT
およびJOIN
関数を使用して一部のデータを操作しようとしていSPLIT
ます。空白のエントリが保持されていないため、問題が発生しています。
データソースは、基本的に次のように設定されています。
| A B C D
-----------------------
1 | q 5 r 2
2 | s t 4
3 | u 8 v
4 | w 3 x 6
(このデータセットの空白のエントリは、「測定なし」を表します。これはの測定とは異なります0
)
列A
とではC
、次の式を使用して必要な結果を取得しています。
=SPLIT(JOIN("~",A1:A4,C1:C4),"~")
これにより、予想どおりq
s
u
w
r
t
v
x
、それぞれのセルに行が作成されます。
ただし、このメソッドは列B
とでは機能しませんD
。JOIN
期待どおりに機能し、出力が得られます。
5~~8~3~2~4~~6
SPLIT
ただし、その出力で実行すると、問題が発生します。5
8
3
2
4
6
空のセルなしで5
、8
またはの間4
、またはの間で残ります6
。これは、ペアが分割されることを意味します(たとえばs
、v
空のセルに対応する必要がw
ありx
ますが、代わりに、そうします)。問題は、2つの区切り文字の間にヌルエントリが存在するのではなく、1つの区切り文字としてSPLIT
解釈~~
されることです。
このようなシナリオで空白のエントリを保持する方法を知っている人はいますか?
望ましい出力は次のようになります
q s u w r t v x
5 8 3 2 4 6
IF()
、空のフィールドをスペースに自動変換することで何かができるでしょう。
=ARRAYFORMULA(IF(ISBLANK(B1:B4)," ",B1:B4))
、空白セルに ""を含む列のダミーセットを作成するためにを使用して、すぐに計算を実行できるようにSPLIT
なりましたJOIN
。これは、およびに使用されます。しかし、誰かがよりエレガントな解決策を持っていることを願っています:これは私のドキュメントにたくさんの余分なものを追加し、さらにデータセットに測定が追加されるので、いくつかの異なる場所で行番号を更新する必要があります。(少なくとも今のところデータを