Home » ExcelVBA Rangeオブジェクト » 結合セル » セル結合を解除して同じ値を入力するマクロ

セル結合を解除して同じ値を入力するマクロ

対象: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

サンプルマクロの解説

アクティブシート上の使われているセル範囲に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

[スポンサードリンク]

Home » ExcelVBA Rangeオブジェクト » 結合セル » セル結合を解除して同じ値を入力するマクロ

「結合セル」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.