配布したマクロを いつも最新に更新させたい
要VBA
|
|
TOP>Excel/Word/PowerPoint
|
|
○ポイントはアドイン配布
|
操作注意
・操作を誤るとファイルが消えます。元には戻せません。
自作マクロを多くの人に使ってもらいたい場合や、多くのファイルから同じマクロを実行させる場合、ファイルごとにマクロを割り当てていたのでは、作るのも修正も大変です。そこで、アドイン化して配布する方法をこちらで紹介しました。
ここでは、上図に示すようにネットワーク上のサーバに置いた1個のアドインファイを更新するだけで、作業用の全てのEXCELファイルが常に更新済み最新アドインを参照する方法をご紹介します。この方法を使えば、ネットワーク上で複数のEXCELファイルに対し、常に最新のマクロコードを配布でき、しかも、更新も1個のファイルを上書きするだけで済むので、作業が効率的です。
(1) マクロのあるファイルをコピーして2個とする(1個はマスターファイル)。
(2) 一方のファイルを開いてシート1以外をすべて削除。
(3) シート1のデータをすべて削除。
(アドインファイルではシート上のデータは不要なため、マクロ以外のデータはすべて削除します。データを残すとファイルが重くなります)
注意(アドイン化の前に確認しましょう)
(4) マクロ記述の見直し。
・エラーがないか
・無限ループ要素がないか
・マクロに関係のないファイルをに影響を及ぼさないか
(5)[ファイル]タブ>[名前を付けて保存]
(6)「ファイル名をつけて保存」ダイアログ(図1)の「ファイルの種類(T)」のドロップダウンリストで、 Excelアドイン (*.xlam) を選択。

(図1)ファイル名をつけて保存
(7) サーバー上など、端末が参照する保存場所を選択して[OK]
(この例では"\\サーバー\アドイン\"のフォルダにアップロードします)
(この例では、アドインファイル名を"アドイン更新.xlam"とします)
(8) 作業用EXCELファイルのWorkbook_Openイベントプロシージャの記述例は下記
(9) 作業用EXCELファイルのWorkbook_BeforeCloseイベントプロシージャの記述例は下記
|
|
○こんな時に使える
|
・たくさんのファイルに同じマクロを実行したい
・複数のPCで同じマクロを実行したい
・複数の端末で常に最新のマクロを実行させたい
|
|
○応用またはその他の方法
|
・ EXCEL2000の場合はこちら
・自作マクロをアドインにしてコマンドボタンに登録
|
|
○注意
|
・このマクロにはファイルを削除する記述があります。使用には十分注意してください。
・アドインマクロは、すべてのEXCELファイルに対して実行されても可能なように構築する必要があります。十分にデバッグしてください。
・マクロ例のmyPass = "C:\Users\****\AppData\Roaming\Microsoft\AddIns\" 〜の部分はアドインファイルがネットワークコンピュータ上にある場合に自動ダウンロードされるフォルダです。マイコンピュータ上にアドインファイルがある場合は、ダウンロードされません。
|