• ベストアンサー

セル内文字を切取りその行範囲の列の空白セルに貼付

B列3行目から添付のようにセル内にカンマを含む文字がありカンマで区切った文字ごとに切り取り矢印右のように同B列の次の空白行に順に貼り付けたく、その際カンマは削除したいです。また等間隔の名前の行がある中で枠内の空白に文字を張付けたく等間隔行数枠が多くてできればVBAコードがお分かりなる方宜しくお願いします。 環境はwindows7 office2013です。

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

  • ベストアンサー
  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.2

回答No.1の追加です。 前回質問の回答No.4のコードを修正してみました。 但し、1つのブロックで空きセルが不足しているときは途中で処理を中止して次のブロックへ移ります。 Sub Sample() Row = 3 Do While Row <= Cells(Rows.Count, 2).End(xlUp).Row For i = Row To Row + 9 Cells(i, 2).Select If InStr(Cells(i, 2), ",") > 0 Then nextrow = Cells(i - 1, 2).End(xlDown).Row If nextrow < Row + 10 Then b = Cells(i, 2) Cells(i, 2) = Left(b, InStr(b, ",") - 1) Cells(nextrow + 1, 2) = Mid(b, InStr(b, ",") + 1, Len(b)) End If End If Next i Row = Row + 11 Loop End Sub

その他の回答 (1)

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.1

>また等間隔の名前の行がある中で枠内の空白に文字を張付けたく等間隔行数枠が多くてできればVBAコードがお分かりなる方宜しくお願いします。 前回の質問(https://okwave.jp/qa/q9421575.html)と略同じ内容ですが前回の回答を締め切ってから質問しないと違反投稿になるかも知れません。 考え方としては前回質問の回答No.4と同じですが10セル単位の繰り返しになりますのでコードを少し修正すれば良いと思います。 応用でカバーできないのであればプログラミングの能力がないのであなたには無駄なことになると思います。 尚、質問投稿のカテゴリーも僅かにずれています。

kuma0220
質問者

お礼

ありがとうございます。

関連するQ&A