1

Excel 2010 VBA にユーザー定義関数があります。

cellA1で、その関数を呼び出します:=myfunction()戻り値 (整数として) がA1セルに正しく表示されます。

私の懸念は、VBA の他の関数から A1 セルの値を取得する方法です。MyOtherFunction()の数を取得したいA1

セルA1には=MyFunction()

function MyFunction() as integer
   ......
   MyFunction = 99
End function

の値が正しく表示99されA1ます。

function MyOtherFunction()
   dim valor as integer
   valor =  Workbooks("xxx.xlsm").Sheets("yyy").Range("A1").Value
End function

その関数では、代わりに変数valorが返されます。099

4

2 に答える 2

0

確かにあなたは書くことができます:

Function MyOtherFunction()
    MyOtherFunction = Range("A1").Value
End Function

それとも私は要点を逃していますか?

于 2013-10-17T19:52:00.607 に答える
0
Function MyOtherFunction(Rng As Range) As Whatever
    '~~> Rest of the code
End Function

ワークシートで UDF として

=MyOtherFunction(A1)

VBAで

Sub Sample()
    Dim Ret
    Ret = MyOtherFunction(ThisWorkbook.Sheets("Sheet1").Range("A1"))
End Sub
于 2013-10-17T19:52:23.577 に答える