Googleスプレッドシート - 配列式を使用して区切り文字を使用して別々の列のデータを結合する

okwaves2024-01-25  7

これはサンプルシートです。

セル V1!A1 には、数式 ={"Languages";ARRAYFORMULA(TRANSPOSE(QUERY(TRANSPOSE(B2:F&","),,COLUMNS(B2:F)))) があります。 。 B2:F のデータを区切り文字 , で結合する必要があります。ただし、不要な区切り文字を削除する必要があります。 シート V2 で、 ={"Languages";ARRAYFORMULA(REGEXREPLACE(REGEXREPLACE(TRANSPOSE(QUERY(TRANSPOSE(B2:F&","),,COLUMNS(B2:F))),"(^ (,(\s,){4})$)|(^(,\s)+)|(,(\s,)?\s?$)",""),"(, \s,)+\s?",", "))} ですが、一貫性がなく、出力に区切り文字が残ります。

これを行うより良い方法はありますか?



------------------------

「Erik Help」というシートを追加しました。これにより、式が次のように置き換えられます。

=ARRAYFORMULA({"Languages";SUBSTITUTE(TRIM(TRANSPOSE(QUERY(TRANSPOSE(B2:F&" "),,COLUMNS(B2:F))))," ",", ")})

基本的に、B2:F の範囲の要素にカンマを追加する代わりに、スペースを追加しました。次に、結果に TRIM を適用しました。これにより、各連結の前後にスペースがなくなり、各要素の間にスペースが 1 つだけ残ります。これに、カンマスペースを使用した単一スペースの SUBSTITUTE を適用しました。

総合生活情報サイト - OKWAVES
総合生活情報サイト - OKWAVES
生活総合情報サイトokwaves(オールアバウト)。その道のプロ(専門家)が、日常生活をより豊かに快適にするノウハウから業界の最新動向、読み物コラムまで、多彩なコンテンツを発信。