対象:Excel2010, Excel2013, Windows版Excel2016
「エクセル セル結合 解除 同じ値入力 マクロ」
「vba 結合セル 解除 同じ値」
という検索でこのサイト『インストラクターのネタ帳』へアクセスがありました。
結合されたセルが存在するワークシートをデータベースとして活用するには、まずセル結合を解除して、解除された各セルに同じ値を入力する必要があります。
[スポンサードリンク]
それをExcelマクロで行いたいという、思わず「あるある!」と言いたくなる検索キーワードです。
セル結合を解除して同じ値を入力するサンプルマクロ
以下のSubプロシージャを実行すると、アクティブなシートのセル結合が解除され、各セルに同じ値が入力されます。
Sub セル結合を解除して同じ値を入力する()
Dim rng As Range
Dim val As Variant For Each rng In ActiveSheet.UsedRange
If rng.MergeCells Then
val = rng.Value
With rng.MergeArea
.UnMerge
.Value = val
End With
End If
Next rng
End Sub
Dim rng As Range
Dim val As Variant For Each rng In ActiveSheet.UsedRange
If rng.MergeCells Then
val = rng.Value
With rng.MergeArea
.UnMerge
.Value = val
End With
End If
Next rng
End Sub
サンプルマクロの解説
アクティブシート上の使われているセル範囲にFor Each~Nextループを回して、
For Each rng In ActiveSheet.UsedRange
結合されたセルだったときに、
If rng.MergeCells Then
変数valにデータを代入しておいてから、
val = rng.Value
RangeオブジェクトのUnMergeメソッドで結合を解除し、
With rng.MergeArea
.UnMerge
各セルに変数valの値を入力しています。
.Value = val
[スポンサードリンク]
- Newer:VBAでスライドの背景色を指定する
- Older:2重ループを難しいと感じたら変数名の「i」「j」をやめよう
Home » Excel VBA Rangeオブジェクト » 結合セル » セル結合を解除して同じ値を入力するマクロ