|
かとちゃん さん、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
と直接参照できます。
確認してみて下さい。
|
|