質問するログイン新規登録
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

1回答

264閲覧

VBA モジュール更新

ATSUHAYAshi

総合スコア1

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2025/09/23 11:12

0

0

実現したいこと

xlsmを開いたら、モジュールを更新したい。

発生している問題・分からないこと

自席のPCでは、ファイルを開くとモジュールが更新されたのを確認できた。

しかし同じ社屋の、営業店のPCから開くとエラーが発生した。

エラーメッセージ

error

1実行時エラー'1004’ 2'VBProject'メソッドは失敗しました:'_Workbook'オブジェクト

該当のソースコード

ThisWorkbookに記載 Private Sub Workbook_Open() Call UpdateModules End Sub 以下、標準モジュールに記載 Public Sub UpdateMyModule() Dim basFile As String ' 修正版モジュールのパス basFile = "*:\***\***\shukei.bas" ' 既存のモジュールを削除 On Error Resume Next ThisWorkbook.VBProject.VBComponents.Remove _ ThisWorkbook.VBProject.VBComponents("shukei") On Error GoTo 0 ' 新しいモジュールをインポート ThisWorkbook.VBProject.VBComponents.Import basFile ←この行が黄色くなっていた。 End Sub

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

ファイル名、パスを確認したが、記述間違いはなかった。

補足

特になし

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kikukiku

2025/09/24 08:42

回答頂いているように、各PCへの設定が必要になると思うのため、 自動アップデートはあきらめて、更新版を手動で取得するように 運用でカバーした方が現実的と思います。 ※各PCへのセキュリティを弱める方法での運用は難しいのではないか?
kikukiku

2025/09/24 08:46

Excelファイルそのものを自動で入れ替えるような実装なら、 各PCの設定を変更しなくても実行できるのではないでしょうか? ・EXCELファイル更新用のExcelファイルを準備する ・更新用Excelファイルは起動すると、バージョンチェック、自動更新を行い、  実用Excelを起動する。
guest

回答1

0

しかし同じ社屋の、営業店のPCから開くとエラーが発生した。

ファイル名、パスを確認したが、記述間違いはなかった。

実行時エラー'1004’
'VBProject'メソッドは失敗しました:'_Workbook'オブジェクト

恐らく実行環境における Excel のトラストセンターの設定において、[VBA プロジェクト オブジェクト モデルへのアクセスを信頼する]オプションが無効になっているからでしょう。

「営業店のPC」側でトラストセンターの設定を行なって下さい。

投稿2025/09/24 08:24

sk.exe

総合スコア1110

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問