【本日のミッション】
Excel VBAで、定義済の名前の管理を一括で削除せよ。
ミッションの概要
Excel VBAで、定義済の名前の管理を一括で削除せよ、というのが今回のミッションです。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
プロシージャ
Sub 名前一括削除()
Dim nm As Name
'■名前削除
For Each nm In ActiveWorkbook.Names
nm.Delete
Next nm
End Sub
For Each ステートメントとは
For Each ステートメントは、配列やコレクションの各要素に対して繰り返し処理を行う場合に使用します。
【構文】 Dim 変数 as オブジェクト型(バリアント型変数) For Each 変数 In オブジェクトコレクション名(配列名) ***変数を使った処理*** Next
今回は、For Eachステートメントを使用して、ActiveWorkbook の Namesコレクション 各要素(Name)を変数nm に順に格納し、削除処理を行っています。
Dim nm As Name For Each nm In ActiveWorkbook.Names nm.Delete Next nm
- 変数nmを、Nameで宣言します。
- ActiveWorkbookで定義している名前を順に変数nmに格納し、削除します。
Data1 を削除
↓
Data2 を削除
↓
Data3 を削除
↓
Sheet1!Print_Area を削除
↓
Sheet2!Print_Area を削除
↓
Sheet3!Print_Area を削除
↓
名前1 を削除
↓
名前2 を削除
↓
名前3 を削除
- ActiveWorkbook の全ての Namesコレクション の処理が完了したら、For Each の処理を抜けます。
全ての名前が削除されました。
参照
AutoFilter オートフィルター 1列に OR条件で2つの条件指定(Excel VBA)
AutoFilter オートフィルター 1列に AND条件 で2つの条件指定(Excel VBA)
AutoFilter オートフィルター 1列に OR条件 で 3つ以上 の条件指定(Excel VBA)
AutoFilter オートフィルター 複数列に 2つの条件指定(Excel VBA)
AutoFilter オートフィルター 複数列に 3つ以上の条件指定(Excel VBA)
エクセル 指定した色のカラーインデックスを取得し、同じ色のセルを色フィルターで抽出する(Excel VBA)
エクセル 入力した文字色のカラーインデックスを取得し、同色文字のセルを色フィルターで抽出する(Excel VBA)
離れた複数列をまとめて列番号(数字)で選択する方法(Excel VBA)
Excel VBA で選択した複数のセルにデータ・数式を(Ctrl+Enter のように)一気に入力する方法
エクセル 定義済の名前の管理を一括で全て削除する(Excel VBA)