私は、VBA関数を使用してExcelで値を計算できるというかすかな記憶があります(セルの数式として)。
=MyCustomFunction(A3)
これはできますか?
編集:
これは私のVBA関数の署名です:
Public Function MyCustomFunction(str As String) As String
この関数はThisWorkbook
モジュールにあります。上記のようにワークシートで使用しようとすると、#NAME?
エラー。
解決策(ありがとう、codeape):ThisWorkbook
モジュールで定義されている場合、関数にアクセスできません。手動でワークブックに追加された「適切な」モジュールに含まれている必要があります。
はい、できます。モジュールでVBA関数を定義するだけです。例を含む素晴らしい紹介については、 http://www.vertex42.com/ExcelArticles/user-defined-functions.html を参照してください。
簡単な例を次に示します。
Option Explicit Function MyCustomFunction(input) MyCustomFunction = 42 + input End Function
A1:2 A2:= MyCustomFunction(A1)
Word入力は基本的なキーワードであるため、置き換える必要があります。代わりにnumを試してください。バリアントなどのタイプを指定して、さらに先に進むこともできます。
Function MyCustomFunction(num As Variant)
MyCustomFunction = 42 + num
End Function