「StiLL」Excel情報541 関数-指定した範囲の配列をカンマ形式にする方法
【テーマ】
表から必要なデータだけCSV形式(カンマ形式)で保存したい事はありませんか。
CSV形式(カンマ形式)のデータを簡単に作成できる方法をご紹介します。
【方法】
Excel for Microsoft 365 から使用することができるARRAYTOTEXT関数を使います。
【参考】
ARRAYTOTEXT関数の機能と似た関数としてCONCAT関数、TEXTJOIN関数があります。
以下のような売上などデータを他システムに登録するため、CSV形式への編集作業で困ったことはありませんか。
今回は、ARRAYTOTEXT関数を使って、CSV(カンマ)形式に変換する方法をご紹介します。
■売上表■
■ARRAYTOTEXT関数のご説明
   =ARRAYTOTEXT(配列,[書式])
      構文と引数
配列 文字列として返す配列
書式 省略できます
0 既定値 簡潔(単純なカンマ形式)
1 正確  エスケープ文字と行の区切り文字を含む厳格な形式で返されます。
     数式バーに入力したときに解析できる文字列を生成します。
     返された文字列は、ブーリアン、数値、エラーを除き、引用符でカプセル化されます。
■使用例1 (行方向)
〇書式 0 の場合(簡潔)
     =ARRAYTOTEXT(B3:P3)
     20150401, 1001, 1, 1, 喫茶たいむましん, 1, 011, 葛城 孝史, A104, ぬいぐるみ, 110, 70, 1100, 706, 
〇書式 1 の場合(正確)
     =ARRAYTOTEXT(B3:P3,1)
     {20150401,"1001",1,1,"喫茶たいむましん",1,"011","葛城 孝史","A104","ぬいぐるみ",110,70,1100,706,}
■使用例2 (行列混在)
〇書式 0 の場合(簡潔)
     =ARRAYTOTEXT(K3:L8)
     ぬいぐるみ, 110, 布団, 64, 枕, 1111, ぬいぐるみ, 110, 布団, 64, 枕, 1111
〇書式 1 の場合(正確)
     =ARRAYTOTEXT(K3:L8,1)
     {"ぬいぐるみ",110;"布団",64;"枕",1111;"ぬいぐるみ",110;"布団",64;"枕",1111}
【参考】
 ARRAYTOTEXT関数の機能と似た関数としてCONCAT関数、TEXTJOIN関数があります。
 CONCAT関数、TEXTJOIN関数は、配列にエラー値が含まれていた場合、正常処理できませんが、
 ARRAYTOTEXT関数は、エラー値(文字)を含めて処理します。
   ARRAYTOTEXT関数
=ARRAYTOTEXT(B3:E3) => あいおうえ, abcde, 12345, #VALUE!
 
   CONCAT関数
=CONCAT(B3:E3) => #VALUE!
   TEXTJOIN関数
=TEXTJOIN(",",TRUE,B3:E3) => #VALUE!
Copyright(C) アイエルアイ総合研究所 無断転載を禁じます