Microsoft Excel > 名前の定義・スタイルを削除する

2014-02-21 14:31:36 (Fri);

誰かが作ったExcelを流用していると、
余計な設定が残り続ける事があります。
そうすると動作が遅くなったり容量が増加したりします。

そこで余計なもの一括で削除するマクロを作成しました。

利用されているものも削除してしまうので、気を付けてください。

'--------------------------------------------------------
' 対象:ブック
' 機能:ActiveWorkbookの名前定義を全て削除
'--------------------------------------------------------
Sub delete_DefinedNames()
    Dim objName As Name
    Dim style As Variant
    
    'R1C1 参照形式にしないと綺麗に消えないので
    'style = Application.ReferenceStyle
    'If style = xlA1 Then Application.ReferenceStyle = xlR1C1

    For Each objName In ActiveWorkbook.Names
        On Error Resume Next  ' エラーを無視。
        objName.delete
    Next objName
    
    Application.ReferenceStyle = style
End Sub

'--------------------------------------------------------
' 対象:ブック
' 機能:全てのスタイルを削除
'--------------------------------------------------------
Sub delete_style()
    Dim objStyle As Variant
        
    On Error Resume Next
    For Each objStyle In ActiveWorkbook.Styles
        If Not objStyle.BuiltIn Then
            objStyle.delete
        End If
    Next

End Sub








最終更新:2014年02月21日 14:31