hiko-blog

VBA業務改善

MENU

ゴミ定義となっている名前の定義リセット(削除)する♪

資料ファイルシートをコピーしようすると、見覚えのない名前定義が出てきて思うようにコピーできない時の対策。

対象bookを下記のvbs(名前の管理リセット.vbs)にドロップし不要定義を削除。


'名前の管理リセット.vbs

’下記をテキストにコピーし 名前の管理リセット.vbs で保存。

 

If MsgBox("ドロップされたbook内の 名前の管理 をリセット(削除)します。" & vbCrLf & vbCrLf & _
"本当に良いですか?", vbOKCancel, "名前削除") = vbCancel Then WScript.Quit

Dim book1

Set objXls = CreateObject("Excel.Application")
objXls.Visible = True


For Each strFile In WScript.Arguments

Set book1 = objXls.Workbooks.Open(strFile)

For Each Target In book1.Names
Target.Delete
Next

book1.Save
book1.Close
Set book1 = Nothing

Next

objXls.Quit

MsgBox"削除完了しました。", , "処理完了"