Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


68187 / 76734 ←次へ | 前へ→

【13088】Re:複数のブックに一気にモジュールパッチを当てる方法
回答  ichinose  - 04/4/22(木) 19:53 -

引用なし
パスワード
   ▼まこさん さん:
こんばんは。


>ご覧いただきありがとうございます。
>今日2回目の質問です。
>
>例えばここにBOOK1〜BOOK100の100個のブックがあります。
>VBAのモジュールにバグがみつかり、修正用パッチを一気にあててしまいたいのですが。
>何か良い方法がありましたら、ご教授ください。
>ちなみに、私が今やっている方法は、1つずつブックを開き、VISUAL BASIC EDITORからバグがあるモジュールをいったん削除し、パッチをあてたモジュールをインポートさせる方法です。1つ1つ開いてやらないといけないので時間がかかってしょうがありません。
>
>よろしくお願いします。
モジュールの削除は、
'================================================================
Sub sample2()
  MsgBox delete_mdl(ThisWorkbook, "module2")
End Sub
'==================================================================
Function delete_mdl(wk As Workbook, compnm As String) As Long
'指定されたブックの指定されたモジュールを削除する
'Input wk---インポート対象ブックオブジェクト
'   compnm ---削除するモジュール名
  On Error Resume Next
  delete_mdl = 0
  With wk.VBProject
   .VBComponents.Remove .VBComponents(compnm)
   End With
  Delete.mdl = Err.Number
End Function

インポートは、
'=================================================================
Sub sample1()
  If import_mdl(ThisWorkbook, "D:\My Documents\TESTエリア\Module1.bas") = 0 Then
   MsgBox "インポート成功"
   End If
End Sub
'=======================================================================
Function import_mdl(wk As Workbook, import_flnm As String) As Long
'指定されたブックに指定されたインポートファイルをインポートする
'Input wk---インポート対象ブックオブジェクト
'   inport_flnm ---インポートファイルのブルパス
  On Error Resume Next
  import_mdl = 0
  wk.VBProject.VBComponents.Import import_flnm
  If Err.Number <> 0 Then
   import_mdl = Err.Number
   End If
End Function

上記の二つの部品となるFunctionがあれば、
後は、メインプロシジャーでぐるぐる回せば(ループ処理)それらしく
出来るかと思いますが・・・、いかがですか?

出来上がったら、私もほしいですねえ・・・。

1 hits

【13084】複数のブックに一気にモジュールパッチを当てる方法 まこさん 04/4/22(木) 16:33 質問
【13088】Re:複数のブックに一気にモジュールパッチ... ichinose 04/4/22(木) 19:53 回答
【13089】Re:複数のブックに一気にモジュールパッチ... ichinose 04/4/22(木) 19:55 発言
【13182】Re:複数のブックに一気にモジュールパッチ... まこさん 04/4/26(月) 16:26 お礼

68187 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free