| 
    
     |  | ▼生茶 さん: こんにちは。
 >
 >下記の様な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
 '   でいけると思いますが・・・。
 これは、ちょっと感じたので記述しておきました。
 
 |  |