• 締切済み

エクセルのセル内部の行替え

エクセルの質問です。 セル内部で行替えしている文字列をセル外部での行替えに変えるという作業(セル内部での一行をセル一行にする作業)をたくさんやることになりました。 今しがたメモ帳などに貼り付け、そこで行替えを行い再度エクセルの表に貼り付けているという作業をしています。 そこで、もっと効率の良いやり方があれば教えてください。お願いいたします。 なお、質問の意味が分からなければ、教えてください。お願いいたします。

みんなの回答

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.3

こんにちは。maruru01です。 No.2の方と同じ考え方ですが、手順1と2の代わりに置換を利用する方法です。 A列を選択して、メニューの[編集]→[置換]で、 [検索する文字列]:ボックス内にカーソルを置いた状態で、[Ctrl]を押しながら[J]をクリックします。 (見た目には何も入力されません。) [置換後の文字列]:「,」を入力 これで[すべて置換]します。 これで、No.2の手順2終了と同じになりますので、手順3を行います。 さらに縦に並べるには、コピーして[形式を選択して貼り付け]の[行列を入れ替える]で貼り付けます。 ただし、上記の方法よりは、メモ帳に貼り付けて戻す方が早いと思います。 まあ、上記の方法(やそれ以外でも)をVBAで書いておけば繰り返す場合は楽ですが。

sasakuri
質問者

お礼

そうなんですよね。。。結局メモ帳でやったほうが楽なんですよね。ありがとうございます。

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

以下の方法は如何でしょうか。 (例)仮に対象データがA列にある事とします。 1.B1に=SUBSTITUTE(A1,CHAR(10),",")を設定し、下方向にコピーします。 2.B列を選択し、右クリック⇒C列を選択し右クリック⇒形式を選択して貼り付け⇒値をチェック⇒OK 3.C列を選択⇒データ⇒区切り位置⇒カンマやタブ・・・をチェック⇒次へ⇒区切り文字をカンマをチェック⇒完了

sasakuri
質問者

お礼

ありがとうございます。

  • Poer
  • ベストアンサー率45% (72/157)
回答No.1

 A1に対象の文字列があるとして、B1に   =MID(A$1,(ROW(A1)-1)*10+1,10) と入力し、必要なだけ下にコピーします(式の中の「10」は区切りたい文字数を表します)。  ただ、これは文字数を揃えて分散させる方法なので、文字種によって横幅にばらつきが出る恐れがあります。また、元のセルをAlt+Enterで行替えしていると、行替え部分に「・」などの余分な文字が出てくるので、その場合は別の操作が必要となります。

sasakuri
質問者

お礼

ありがとうございます。

関連するQ&A