|
▼tsgross さん:
こんにちは
>■症状
>二つのブック(Book1.xls, Book2.xls)を作ります。
>Book1.xls から Book2.xls 上にある Function を呼び出したいと思うのですが、
>「実行時エラー 1004
>マクロ 'C:\Documents and Settings\First-Last\My Documents\excel\Book2.xls!Test' が見つかりません」
>と言われて Book2.xls にある Test() という Function が呼び出せません。
>
>■マクロ
>■■Book1.xls
>Private Sub Command_Button1_Click()
> Workbooks.Open("C:\Documents and Settings\First-Last\My Documents\excel\Book2.xls")
> dim x as Long
ここ↓
> x = Application.Run( "C:\Documents and Settings\First-Last\My Documents\excel\Book2.xls!Test )
x = Application.Run("Book2.xls!Test")
でいいと思います。
>End Sub
>
>■■Book2.xls
>Public Function Test()
> Dim wb as Workbook
> set wb = ThisWorkbook
> MsgBox( "僕は" & wb.Name )
>End Function
それから、Functionだと
Public Function Test() As String
Dim wb As Workbook
Set wb = ThisWorkbook
Test = "僕は" & wb.Name
End Function
こういう形ですよね。
で、文字列を返してるから、
Book1で受けるのも
> dim x as Long
じゃなくて、「String型」にしないとダメやないかな?
|
|