カスタム VBA 関数の結果を受け取るワークシートとセルを与える変数はどこにありますか?
たとえばA!B1
、式が=MyCustomFunc()
私のコードにある場合:
public function MyCustomFunc()
'what can I call here to get the values "A" and "B1"?
end function
これはあなたがしようとしていることですか?
Option Explicit
Public Function MyCustomFunc()
'~~> Judicious use of 'Volatile' is advised.
'~~> This will be called everytime the sheet is recalculated
Application.Volatile
MsgBox Application.Caller.Parent.Name & ", " & Application.Caller.Address
End Function
あなたが欲しいApplication.ThisCell
。
これにより、現在計算中のセルが返されます。
ActiveSheet.Name
シート名が表示されます。ActiveCell.Row
行番号が表示されActiveCell.Column
、列文字が表示されます。次に、それらを組み合わせてセルアドレスを取得できます。