• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:行にある文字をカンマ区切りでひとつのセルに)

エクセルのデータを指定の形式で表示する方法

このQ&Aのポイント
  • エクセルのデータを指定の形式で表示するには、関数やVBAを利用する方法があります。
  • 関数の場合、CONCATENATE関数やTEXTJOIN関数を使用して、指定の範囲のデータをカンマ区切りで結合することができます。
  • VBAの場合、マクロを作成して指定の範囲のデータを取得し、ループ処理を行ってカンマ区切りで結合することができます。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

>上記のイメージですがデータ的には900行、50列ほどあります 現実には50列ものデータをちんたら関数で書いていくのはタマリマセンので,次のようにしてみます。 方法1:関数 シート1にそういったデータがあるとして シート2のA1に =SUBSTITUTE(TRIM(Sheet1!A1&" "&B1)," ",",") と記入,シート1のデータ範囲をおおまかカバーするセル範囲にえいやっとコピー貼り付けてやると,シート2のA列にコタエが並びます。 必要に応じてA列を丸ごとコピーし,コタエを置きたい場所(シート3のA列でもいいし,シート1のはじっこ列でも)に形式を選んで貼り付けの値のみ貼り付けます。 方法2:マクロ シンプルに900行×50列の固定で。 sub macro1()  dim r as long  dim c as long  dim buf as string  for r = 1 to 900   buf = ""   for c = 1 to 50    if cells(r, c) <> "" then     buf = buf & "," & cells(r, c)    end if   next c   cells(r, 51) = mid(buf, 2, len(buf))  next r end sub

city21_kum
質問者

お礼

返答が遅くなり申し訳ありませんでした ありがとうございました。 助かります この考え頂戴させていただきます

その他の回答 (2)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

一例です。 関数で考えてみました。 E2に=SUBSTITUTE(TRIM(A1&" "&B1&" "&C1&" "&D1&" ")," ",",")を入力、下方向にコピー 因みにE列は数式のつき、データ(値)にする場合、E列を選択コピー→形式を選択して貼り付け→値を選択→OKとして下さい。(E列を残したい場合、別列を選択して形式を選択貼り付けして下さい)

city21_kum
質問者

お礼

返答が遅くなり申し訳ありませんでした こちらの考えも参考になります 参考にさせていただきます ありがとうございました。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

 E1セルに次の数式を入力してから、E1セルをコピーして、E2以下に貼付けると良いと思います。 =IF($A1="","",$A1&",")&IF($B1="","",$B1&",")&IF($C1="","",$C1&",")&IF($D1="","",$D1&",")

city21_kum
質問者

お礼

返事が遅くなり申し訳ありません 確かにこれも参考にさせていただきます ありがとうございました。

関連するQ&A