Excel VBA質問箱 IV

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

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


66244 / 76734 ←次へ | 前へ→

【15055】Re:VBA参照設定の解除について
発言  ichinose  - 04/6/14(月) 16:22 -

引用なし
パスワード
   ▼生茶 さん:
こんにちは。
>
>下記の様なAUTO_OPEN()の中で、データファイルにデータを書き込み、書き込み後
>別の名前でファイルを保存しますが、データファイルには"LIST"というファイルが
>参照設定されていています。別の名前でファイル保存する際、参照設定ほ解除したい
>のですが、マクロ実行すると参照設定が解除されません。
>ちなみに、On Error Resume Nextを削除し、実行するとで「中断モードでは入力
>できません」というエラーメッセージが表示されます。
>中断か、終了ボタンをクリックすると参照設定は解除されます。
>エラーメッセージを回避し、参照設定を解除出来る方法をご存知の方いらっしゃい
>ませんか!?
>
>どうぞ宜しくお願い致します。
ご提示されたコードをきっちりトレースしていませんが、
参照設定の解除を行うのは、下のマクロが記述されている
ブックのプロジェクトですねよね?
これは、
「Thisworkbook.Vbproject」で取得して見て下さい。
例えば、生茶 さんがご提示されたマクロは長いので、
簡単な例で・・・・。

参照設定される「List.xls(プロジェクト名LIst)」には、標準モジュールに
'=======================================================
Sub test()
  ActiveWorkbook.Sheets(1).Cells(1, 1).Value = "ok"
End Sub

これだけのコードだとします。
この「List」を参照設定しているブックは、「reftest.xls」とします。


標準モジュールには、

'=================================================================
Sub auto_open()
  Call list.test
  If 参照設定解除(ThisWorkbook, "List") = 0 Then
   ThisWorkbook.SaveAs ThisWorkbook.Path & "\list33.xls"
   Workbooks("list.xls").Close False
   End If
End Sub
'===================================================================
Function 参照設定解除(bk As Workbook, renm As String) As Long
  On Error Resume Next
  With bk.VBProject
   .References.Remove .References(renm)
   End With
  参照設定解除 = Err.Number
  On Error GoTo 0
End Function

これでretest.Xlsを立ち上げてAuto_Openが実行されると、
保存された「list33.xls」は、参照設定が解除されています。
まず、これが正常に動作するか確認してみて下さい。


それから、

>  Application.EnableEvents = True
>
>  Application.Run "'List.xls'!Orderplacejudging_Open"
'   ↑ これですが、せっかく参照設定しているのに
'   Runメソッド要りませんよ!!
'   call list.Orderplacejudging_Open
'   でいけると思いますが・・・。
これは、ちょっと感じたので記述しておきました。
1 hits

【15050】VBA参照設定の解除について 生茶 04/6/14(月) 14:31 質問
【15055】Re:VBA参照設定の解除について ichinose 04/6/14(月) 16:22 発言
【15061】Re:VBA参照設定の解除について 生茶 04/6/14(月) 17:28 回答
【15062】Re:VBA参照設定の解除について ichinose 04/6/14(月) 17:38 発言
【15065】Re:VBA参照設定の解除について 生茶 04/6/14(月) 18:45 お礼
【15273】Re:VBA参照設定の解除について 生茶 04/6/18(金) 14:56 質問
【15276】Re:VBA参照設定の解除について ichinose 04/6/18(金) 15:51 発言
【15348】Re:VBA参照設定の解除について 生茶 04/6/22(火) 9:07 お礼

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