ヒガサラblog

サラリーマン攻略法を徹底解説。(出世、就活、上司、仕事、クリアするのはこれだけ。)仕事で使えるプログラミングスキルも多数掲載!

ヒガサラblog

VBAスキル紹介◾️マクロの削除

このブログではエクセルマクロ初心者向けに基本的なプログラミングを画像付きでわかりやすく紹介しています。

今回はマクロ処理を終了させた際にそのファイルをマクロが無効なファイルとして保存する方法についてご紹介します。

非常に複雑なマクロを組むとそれだけでファイルが重たくなりますので、例えばマクロ処理が終了したファイルを社内展開するときにはマクロを削除しておく必要もあるかと思います。

今回はそんな処理を簡単に実行してくれるマクロを紹介します。

まずはなんでも良いのでマクロファイルを準備します。
(拡張子がxlsmになっていればOK)

f:id:yshgs_elec:20200317220002p:plain

このファイルの中には
もともとの処理であるMacro1と今回実行するマクロを削除するマクロである
Delete_Macroがあります。
これらのマクロをマクロ処理によって削除してみましょう。

f:id:yshgs_elec:20200317220014p:plain

 

Delete_Macroの中身はこんな感じで、ものすごく短いですね。
今回はもともとのマクロファイルをマクロが無効な
no_macroというファイル名に変更したいと思います。
早速このマクロを実行してみましょう。
(マクロの記述方法や実行方法は過去のブログをご覧ください。)

f:id:yshgs_elec:20200317220031p:plain

コピペ用にも記載しておきます。

--------------------------------------------------------------------

Sub Delete_Macro()

ActiveWorkbook.SaveAs ThisWorkbook.Path & "\no_macro.xlsx", _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False

End Sub

--------------------------------------------------------------------


実際の処理結果です。
もともとのファイルと同じ場所に新しくno_macro.xlsxというファイルが出来ています。

f:id:yshgs_elec:20200317220049p:plain

 

このファイルの中を覗いてみると、しっかりもともとあったMacro1も今回作った
Delete_Macroもなくなっていますね。

f:id:yshgs_elec:20200317220109p:plain

もともとのマクロ処理の最後に今回紹介したマクロを追加しておくことで
実行するたびにマクロを無効化して保存してくれます。

今回のスキル紹介は以上です。

 

それではまた!

Twitter

@HigashiSalary

mobile.twitter.com