Home » ExcelVBA Rangeオブジェクト » 入力規則・Validation » 入力規則を削除するExcelマクロ

対象:Excel2007, Excel2010, Excel2013

入力規則を削除するExcelマクロ

「vba 入力規制を解除する」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。

「入力規制」となっていますが、「入力規則」を解除・削除するVBA(Visual Basic for Applications)のコード・Excelマクロを探している方による検索でしょう。

参考になりそうなマクロをいくつかご紹介しておきます。

[スポンサードリンク]

選択セルの入力規則を削除するサンプルマクロ

以下のようなマクロで、選択されているセルの入力規則を削除できます。


Sub 選択されているセルの入力規則を削除する()

 If MsgBox("選択されているセルの入力規則を削除しますか?", vbYesNo) = vbNo Then Exit Sub

 Selection.Validation.Delete

End Sub

以下の一行だけで、選択されているセルの入力規則を削除できます。
 Selection.Validation.Delete

Selectionプロパティで、選択されているセルを表すRangeオブジェクトを取得して、RangeオブジェクトのValidationプロティで、入力規則を表すValidationオブジェクトが取得して、Deleteメソッドで入力規則を削除しています。

アクティブシートの入力規則を削除するサンプルマクロ

以下のようなマクロにすれば、アクティブなシートの入力規則を一気に削除することができます。

Sub アクティブシートの入力規則をすべて削除する()

 If MsgBox("アクティブシートの入力規則をすべて削除しますか?", vbYesNo) = vbNo Then Exit Sub

 Cells.Validation.Delete

End Sub

Cellsプロパティに引数を指定しないと、すべてのセルを表すRangeオブジェクトが取得できるので、そのValidationをDeleteしています。

全シートの入力規則を削除するサンプルマクロ

以下のようなマクロにすれば、アクティブなブックの全シートの入力規則を削除できます。


Sub 全シートの入力規則を削除する()

 Dim ws As Worksheet

 If MsgBox("全シートの入力規則を削除しますか?", vbYesNo) = vbNo Then Exit Sub

 For Each ws In Worksheets
  ws.Cells.Validation.Delete
 Next ws

End Sub

すべてのワークシートにループを回して、
 For Each ws In Worksheets

個々のシートのすべてのセルの入力規則を削除しています。
  ws.Cells.Validation.Delete

[スポンサードリンク]

Home » ExcelVBA Rangeオブジェクト » 入力規則・Validation » 入力規則を削除するExcelマクロ

TrackBack:0

TrackBack URL

Home » ExcelVBA Rangeオブジェクト » 入力規則・Validation » 入力規則を削除するExcelマクロ

「入力規則・Validation」の記事一覧

検索


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

.