プロが教えるわが家の防犯対策術!

初めて質問します。

添付画像のようにセル内の改行された文字列を学校名1、2、3・・・といったように分割をするにはどうすればいいのでしょうか。
ちなみにデータには改行されていない(学校名が一つだけ)のデータもあります。

よろしくお願い致します。

「セル内の改行された文字列を分割」の質問画像

A 回答 (5件)

#1です。

Excelの機能「区切り位置」でできました。

EXCELのバージョンは何ですか?
2003までなら、メニューの[データ]>[区切り位置]
2007以降なら[データ]>[データツール]グループの[区切り位置]

バージョンに合わせて読み替えてください。
セルB2~セルF5には何も無い状態から始めるものとしますよ。

1)セルA2~A5を選択して「コピー」
2)セルB2に「貼り付け」
3)そのままの状態で、上記の方法で[区切り位置]を起動
4)「カンマやタブなどの・・(後略)」を選んだ状態で「次へ」
5)「区切り文字」の「その他」にチェック(レ点)付ける
6)「その他」の右隣のボックスをクリックしてCtrl+Jキー押下
  (何も入力されないように見えるが、下にある「データのプレビュー」が変化する)
7)「完了」ボタンをクリック
    • good
    • 3
この回答へのお礼

ありがとうございます。
この方法でうまくできました。

お礼日時:2011/05/31 22:50

B2セルに次の式を入力して右横方向にオートフィルドラッグしたのちに下方向にもオートフィルドラッグします。



=TRIM(MID(SUBSTITUTE($A1,CHAR(10),REPT(" ",100)),(COLUMN(A1)-1)*100+1,100))
    • good
    • 2

こんばんは!


VBAでの一例です。

画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面が出ますので
↓のコードをコピー&ペーストしてマクロを実行してみてください。
(Alt+F8キー → マクロ → マクロ実行です)
とりあえず1セルに10行あっても対応できるようにしてみました。

Sub test() 'この行から
Columns(1).Insert
Dim i, j As Long
For i = 2 To Cells(Rows.Count, 2).End(xlUp).Row
Cells(i, 1) = Cells(i, 2)
For j = 3 To 12
If WorksheetFunction.Find(Chr(10), Cells(i, 1)) Then
On Error Resume Next
With Cells(i, j)
.Value = Mid(Cells(i, 1), 1, WorksheetFunction.Find(Chr(10), Cells(i, 1)))
.WrapText = False
End With
With Cells(i, 1)
.Value = Replace(Cells(i, 1), Cells(i, j), "")
.WrapText = True
End With
End If
Next j
Cells(i, Columns.Count).End(xlToLeft).Offset(, 1) = Cells(i, 1)
Next i
Columns(1).Delete
End Sub 'この行まで

こんな感じではどうでしょうか?m(__)m
    • good
    • 1

 関数を使用して行う場合には、次の様な関数をB2セルに入力してから、B2セルをコピーして、B2~F5の範囲に貼り付けて下さい。

(それ以上の範囲に貼り付けても正常に動作します)

=IF(OR($A2="",COLUMNS($B:B)>LEN($A2)-LEN(SUBSTITUTE($A2,CHAR(10),))+1),"",REPLACE(REPLACE($A2,FIND("゛",SUBSTITUTE($A2&CHAR(10),CHAR(10),"゛",COLUMNS($B:B))),LEN($A2),),1,FIND("゛",SUBSTITUTE(CHAR(10)&$A2,CHAR(10),"゛",COLUMNS($B:B)))-1,))
    • good
    • 2
この回答へのお礼

ありがとうございます。
今後の参考とさせていただきます。

お礼日時:2011/05/31 22:51

今、EXCELを動かせる環境にないので未検証ですが。



セル内データを「ある文字を区切り記号と解釈してセルを分割する」機能があります。
データ>区切り位置です。区切り文字を指定すると、右方向に分割してくれます。
(そのためには、右側にデータがあってはいけない)

この機能で、区切り文字「その他」で任意の文字を指定できます。

セル内改行文字は Ctrl+Jキー押下で指定できるはず。

未検証ですが、シートをコピーするなどした上でお試しください。

> ちなみにデータには改行されていない(学校名が一つだけ)のデータもあります。
この場合は、そのまま残ります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!