| 
    
     |  | かとちゃん さん、shousukeさん こんばんは。
 
 >基本的な質問かもしれないのですが・・・
 >
 >Excelではファイル間の変数の受け渡しはできるのでしょうか?
 ↑これ、「ブック間」ですね!!
 >ファイルAで
 > Public Const BaseDir As String = "abcde"
 >と定義した変数をファイルBで受け取ることはできるのでしょうか?
 それからConstは、変数ではなく、定数ですよ!!
 
 いくつか方法はあると思います。
 
 shousukeさんがおっしゃっている
 「セルを媒体にして値を受け取る」というのも方法のひとつだと思います。
 
 他には、
 
 1.ブックBでApplication.Runメソッドを使用する
 
 ブックAの標準モジュールに
 '=========================================
 Public Const BaseDir As String = "abcde"
 '=========================================
 Function get_BaseDir()
 get_BaseDir = BaseDir
 End Function
 
 としておいて、
 ブックBでは、
 '=====================
 Sub test()
 MsgBox Application.Run("ブックA!get_basedir")
 End Sub
 
 とする方法。
 
 
 2.オブジェクトモジュールを使用する方法
 
 ブックAの標準モジュールに
 '=========================================
 Public Const BaseDir As String = "abcde"
 
 '(Public Constは、オブジェクトモジュールでは宣言できないので)
 
 ブックAのThisWorkbookモジュールに
 '=============================================
 Function get_BaseDir()
 get_BaseDir = BaseDir
 End Function
 
 
 としておいて、
 ブックBでは、
 '=====================
 Sub test()
 MsgBox Workbooks("ブックA").get_BaseDir
 End Sub
 
 とする方法。
 
 
 3.ブックBでブックAを参照設定する方法
 
 参照設定については、
 
 http://www21.tok2.com/home/vbalab/bbs/c-board.cgi?cmd=one;no=11001;id=Excel
 
 を参考にして下さい。
 
 この場合、ブックBでは、
 '=====================
 Sub test()
 MsgBox BaseDir
 End Sub
 
 と直接参照できます。
 
 確認してみて下さい。
 
 
 |  |