
No.3ベストアンサー
- 回答日時:
全社員に配布する前に特に設定の必要はありません。
ファイルをコピーすればマクロもコピーされます。ただ、ファイル名がコード内にある場合などはファイル名の改変などに配慮が必要ですね。また、そのEXCELファイルを使う社員のパソコンの環境と貴方がEXCELファイルを作った環境は異なりますから、作ったマクロをたくさんの人が使う場合は、いろいろな環境で動作確認というものをしておいたほうがいいです。
動作確認ができない場合は、実際に使って貰うなかで発生した不具合やバグをフィードバックしてもらい、修正しなければなりません。しかし配布したEXCELファイルが個々の社員によってすでに編集されている場合、マクロの不具合の修正をそれぞれのEXCELファイルについて行っていたのでは大変面倒です。そこで、アドインという便利な機能を使います。
大勢の人が同じマクロを使う場合、アドイン機能はとても役に立ちます。アドインで使うマクロは一般にツールバーやメニューバーのボタンにマクロを登録して使います。この場合、配布するexcelファイルにツールバーも添付して配布する必要があります。
アドイン登録はユーザーが手動でできますが、私の場合はexcelファイルの起動時のイベントで常に新しいアドインファイルをインストール・登録するようにしています(マクロでアドイン登録は可能)。ただ、アドインを登録する為のマクロは、元のexcelファイルに記述する必要があります。少々ややこしいので手順で説明します。
1,元excelファイル(ワークシート・マクロ)→新excelファイル(ワークシート)+アドインファイル(マクロ)に分割
2,新excelファイルに新しいツールバーを作成し、その中にマクロを登録したコマンドボタンを作成
3,新excelファイルに新しいツールバーを添付する([ツール]>[ユーザー設定]でできます)
4,新excelファイルのアドイン登録・削除を自動化するコードを追加(下記例)
Private Sub Workbook_Open() ‘起動時
Dim myPass As String, myPass2 As String
On Error Resume Next
myPass = “デフォルトでアドインファイルがインストールされるパス\アドインファイル名.xla"
myPass2 = “最新のアドインファイルが置かれているフォルダのパス\アドインファイル名.xla "
With Application
.DisplayAlerts = False
AddIns("アドインファイル名.xla ").Installed = False
Kill myPass
On Error GoTo EDK
AddIns.Add Filename:=myPass2
AddIns("アドインファイル名.xla ").Installed = True
.DisplayAlerts = True
End With
Exit Sub
EDK:
MsgBox "アドインのインストールに失敗しました。" _
& Chr(13) & myPass2
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean) '終了時
On Error Resume Next
AddIns("アドインファイル名.xla ").Installed = False
End Sub
例えば、これによってマクロ制作者はマクロのバグが見つかった場合にEXCELファイル本体を配布し直すことなくマクロのみの改変で事足ります。またユーザーは意識してアドインファイルをアップデートする必要がありません。
No.2
- 回答日時:
>このマクロはどのエクセルファイルを開いた時にもそれぞれの社員が活用できるようにしたいのですが
この場合、個人用マクロブック(Personal.exe)を作成
このファイルをLAN上の共有サーバの特定のフォルダに置いてください。
後は使用するすべてのPC上のExcelで
「ツール」「オプション」「全般」タブの
「Xlstart代替フォルダ名」に先程のフォルダ名を絶対パス付きで入力してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
別のパソコンでエクセルのマクロを使いたい
Excel(エクセル)
-
組んだマクロをメールで送る
Visual Basic(VBA)
-
エクセルで個人用マクロの配布方法
Excel(エクセル)
-
4
EXCELのマクロが他のパソコンで動かない
その他(コンピューター・テクノロジー)
-
5
エクセルでマクロを別のPCで利用するには
Excel(エクセル)
-
6
エクセル マクロ オートフィルの終点の指定について
Excel(エクセル)
-
7
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
8
【Excel VBA】ネットワーク上の共有フォルダにあるExcelを開く
Excel(エクセル)
-
9
excelのマクロ実行でブロックされます。
Excel(エクセル)
-
10
【Excel】マクロの保存先について
Excel(エクセル)
-
11
VBA 見つからなかった時の処理
Excel(エクセル)
-
12
ブックの共有でVBAエラー
Visual Basic(VBA)
-
13
VBAを禁止している会社って多いのでしょうか?
Excel(エクセル)
-
14
特定のPCだけ動作しないVBAマクロがあります。その理由は?
Visual Basic(VBA)
-
15
エクセルの、記録を終了したマクロに内容を追加したい
Excel(エクセル)
-
16
IF関数などを使って条件に合った「行」を削除するような機能はありますでしょうか?
Excel(エクセル)
-
17
個人用マクロブックが消えました
Excel(エクセル)
-
18
End Sub が必要です。
Access(アクセス)
-
19
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
20
見積書をエクセルで作成時に連番をふりたい。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
VBA マクロ実行時エラー’1004Ra...
-
5
別のパソコンでエクセルのマク...
-
6
マクロを消すマクロは不可能?
-
7
excelが別プロセスで起動してし...
-
8
VBAで他のBOOKを開いた時に表示...
-
9
エクセルファイルを自身のファ...
-
10
エクセル「検索と置換」を閉じ...
-
11
コピーしたファイルのマクロを...
-
12
エクセルマクロにてパワーポイ...
-
13
VBAを一度起動するとずっと出て...
-
14
EXCEL マクロ クリップボードク...
-
15
excelファイルに使われているVB...
-
16
マクロを実行するとパス名が無...
-
17
マクロでマクロを削除する
-
18
作成したマクロを共有
-
19
添付ファイルのみを自動印刷し...
-
20
「開いているすべてのブック」...
おすすめ情報
公式facebook
公式twitter