こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Excelで同一セル内に入力されているデータを他のセルに分割したい

http://okwave.jp/qa4369634.html?ans_count_asc=20

で質問をして、何度かやりとりをさせていただいて

エクセルで同一セル内に、セル内改行で1~6列ほどのデータが入力されています。
縦にデータが入力されていて、それぞれのセルにセル内改行を含み、データが入力されています。

それぞれのセル内のデータを…
例えば、A1セル内に5行入力されていたら、A2セルから入力されている行数分(ここでいうと5行)挿入し、それぞれにデータを分割して入力させたい。
かつ、B・Cセルは増えたセルにそれぞれのデータをコピーしたいと言ったら、

Sub Macro1()
Dim idx, cnt As Integer
Dim wkStr() As String
Dim rng As Range
  ActiveSheet.Copy after:=ActiveSheet
  For idx = Range("A65536").End(xlUp).Row To 1 Step -1
    If InStr(Cells(idx, "A"), Chr(10)) > 0 Then
      wkStr = Split(Cells(idx, "A").Value, Chr(10))
      Set rng = Cells(idx, "B")
      For cnt = UBound(wkStr) To 0 Step -1
        Cells(idx, "A").Value = wkStr(cnt)
        Cells(idx, "B").Value = rng.Value
        Cells(idx, "C").Value = rng.Offset(0, 1).Value
        If cnt > 0 Then
          Cells(idx, "A").Resize(1, 3).Insert shift:=xlDown
        End If
      Next cnt
    End If
  Next idx
End Sub

といったマクロのご回答をいただきました。

これを元に、

・データが入っているセルをA列→B列に変更
・A列のデータはセルが増えた分だけ増やしたい
・A1に対応するデータがC1・D1に入っていた場合、対応するデータは残したまま、B列が増えただけ、列を増やしたい

と変更したいのですが…。

すいませんが、宜しくお願い致します。

投稿日時 - 2008-10-03 10:59:52

QNo.4374211

すぐに回答ほしいです

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

これでどうでしょう。
でも
>・A1に対応するデータがC1・D1に入っていた場合、対応するデータは残したまま、B列が増えただけ、列を増やしたい
はよく理解できまていません。とりあえず空白セルを挿入するようにしました

Sub Macro3()
Dim idx, cnt As Integer
Dim wkStr() As String
Dim wk
  ActiveSheet.Copy after:=ActiveSheet
  For idx = Range("B65536").End(xlUp).Row To 1 Step -1
    If InStr(Cells(idx, "B"), Chr(10)) > 0 Then
      wkStr = Split(Cells(idx, "B").Value, Chr(10))
      wk = Cells(idx, "A").Value
      For cnt = UBound(wkStr) To 0 Step -1
        Cells(idx, "A").Value = wk
        Cells(idx, "B").Value = wkStr(cnt)
        If cnt > 0 Then
          Cells(idx, "A").Resize(1, 2).Insert shift:=xlDown
        End If
      Next cnt
      Cells(idx + 1, "C").Resize(UBound(wkStr), 2).Insert shift:=xlDown
    End If
  Next idx
End Sub

投稿日時 - 2008-10-03 11:21:42

お礼

たびたびありがとうございました!
本当に感謝してもしきれません。
解決できました。
ありがとうございました!!!

投稿日時 - 2008-10-03 15:25:20

ANo.1

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問