2 つの数値を加算する VBA コードを作成しています。
Option Explicit
Dim x As Integer, y As Integer
Function addtwo(x, y)
addtwo = x + y
End Function
結果を取得するには値 x と y を手動で入力する必要があるため、これは適切な関数ではありません。整数または小数を含む数値に関係なく、任意の 2 つの数値で機能するようにコードを変更するにはどうすればよいですか?
入力変数は、FUNCTION 宣言行の上ではなく、FUNCTION 宣言行で定義します。整数と小数には vartype DOUBLE をお勧めします。
Function ADDTWO(ByVal x As Double,ByVal y As Double) As Double
ADDTWO = x + y
End Function
この関数は、セル内で次のように使用できます。
=ADDTWO(3, 6)
または
=ADDTWO(A2, B7)
VBAでも使えます。
もちろん、SUM() 関数はこれと同じことを行うので....これは学習課題だと思います。
任意の 2 つの数値を扱う限り、 のVariant
代わりにデータ型を試してくださいInteger
。値を手動で入力する意味がわからない - ワークシートから値を取得することについて話しているのですか?