1317918997 【ExcelVBAについての質問です】


添付画像の様に、A列のセルに対してB列の同行セルが2つに分割されているデータを1つのセルに収めたいと考えております。

行削除等による対処が難しければ、別シートへの転記でも結構です。
分割されている列はB列のみとなります、行数可変です。
VBAのコードでご回答願います。(_ _)

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2011/10/07 01:36:40
  • 終了:2011/10/07 16:26:45

ベストアンサー

id:taknt No.1

きゃづみぃ回答回数13537ベストアンサー獲得回数11982011/10/07 06:22:26

ポイント150pt
Sub test()

    For a = Range("B1").End(xlDown).Row To 2 Step -1
        If Cells(a, "A") = "" Then
            Cells(a - 1, "B") = Cells(a - 1, "B") & Cells(a, "B")
            Rows(a).Delete Shift:=xlUp
        End If
    Next a

End Sub
id:pocon

早速ありがとうございます。(_ _)

2011/10/07 16:25:05

その他の回答(1件)

id:taknt No.1

きゃづみぃ回答回数13537ベストアンサー獲得回数11982011/10/07 06:22:26ここでベストアンサー

ポイント150pt
Sub test()

    For a = Range("B1").End(xlDown).Row To 2 Step -1
        If Cells(a, "A") = "" Then
            Cells(a - 1, "B") = Cells(a - 1, "B") & Cells(a, "B")
            Rows(a).Delete Shift:=xlUp
        End If
    Next a

End Sub
id:pocon

早速ありがとうございます。(_ _)

2011/10/07 16:25:05
id:Mook No.2

Mook回答回数1312ベストアンサー獲得回数3912011/10/07 11:32:52

ポイント150pt

A列とC列はマージされているという前提での回答ですが、下記でどうでしょうか。


マージを解除して処理をしています。想定が実際と異なる場合は、コメントください。

Sub UnmergeClenup()
    ActiveSheet.Copy after:=ActiveSheet '// シートのコピーが不要な場合はここを削除
    
    Dim lastRow As Long
    lastRow = Cells(Rows.Count, "A").End(xlUp).Row
    
    Dim r As Long
    Dim rr As Long
    Dim mrgRng As Range
    For r = lastRow To 1 Step -1
        If Cells(r, "A").MergeCells = True Then
            Set mrgRng = Cells(r, "A").MergeArea
            mrgRng.MergeCells = False
            mrgRng.HorizontalAlignment = xlLeft
            
            mrgRng.Offset(, 2).MergeCells = False
            mrgRng.Offset(, 2).HorizontalAlignment = xlLeft
            
            mrgRng.Offset(, 1).Resize(1, 1).Value = Join(Application.Transpose(mrgRng.Offset(, 1)), " ")
            mrgRng.Offset(1).Resize(mrgRng.Cells.Rows.Count - 1).EntireRow.Delete
        End If
    Next
End Sub
id:pocon

願い通りに動作致しました。また、大変勉強になりました。

ありがとうございます。(_ _)

2011/10/07 16:26:04

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません