Microsoft ExcelでVBAを使用してVBAマクロでワークシート関数
VBAcodeでは、Sum、Vlookupなどの特定のワークシート関数を参照する必要がある場合、Applicationオブジェクトを使用してそれらを直接使用できます。したがって、関数を–_ Application.WorksheetFunction.SumまたはApplication.WorksheetFunction.Vlookup_として使用します。ここで_WorksheetFunctionはApplicationオブジェクトのメソッドです。_
このテストマクロがあることを考慮して、_Application.WorksheetFunction._と入力すると
以下の画像の式を示すポップアップが表示されます
したがって、たとえば、vbaを使用して列Aのこの範囲の値を合計する場合–
合計を保存するSalesTotalという変数を作成します。SalesTotalで合計を取得するには、標準モジュールで次のVBAコードを使用します。
_Sub macro4()
Dim SalesTotal As Long SalesTotal = Application.WorksheetFunction.Sum(Range( “A2:A6″))
MsgBox SalesTotal End Sub_上記のコードをファイルにコピーするには、*キーボードのAlt + F11を押します。
-
左側に、MicrosoftExcelオブジェクトが表示されます。
-
右クリックして[挿入]を選択します。
-
次に、[モジュール]をクリックします。
-
コードを右側のコードウィンドウにコピーします。
このサンプルマクロを使用すると、Sales Totalに格納され、マクロの以降のコード行で使用できる値を示すメッセージが表示されます。
取得する出力は-
セルA7にSalesTotalを表示する場合は、コードラインをMsgbox SalesTotalから_Worksheets( “Sheet1″)。Range( “A7″)。Value = SalesTotal_に変更できます。 A9。
以下のコードを使用できます__Submacro5()
ワークシート( “Sheet1″)と同じ長さの薄暗いSalesTotal
SalesTotal = Application.WorksheetFunction.Sum(.Range( “A2:A6″))
End With End Sub__このコードには、前のコードと比較してわずかな変更があります。
-
平均に変数を使用する代わりに、計算後にその値をセルA9に直接入力しました。したがって、.Range( “A9″)。Value = Application.WorksheetFunction.Average(.Range( “A2:A6″))
という行が表示されます。 * msgbox行が削除されました。
-
変数SalesTotalの値はセルA7に送られます。
-
理想的には、SalesTotal = Application.WorksheetFunction.Sum(.Range( “A2:A6″)) .Range( “A7 ”)。Value= SalesTotal With _.Range(“ A7”)。Value = Application.WorksheetFunction.Sum(.Range(“ A2:A6”))_ただし、さまざまな方法を理解できるように保持されています。同じタスクをコーディングします。同様に、Application.WorksheetFunctionを使用しながら、他の関数を使用できます。ワークシートで直接使用できるすべての関数は、ここで使用できます。
これにより、コード内の関数を簡単に使用できるため、数式のコードを作成しなくても、必要な数式を計算できます。
_ _ブログが気に入った場合は、Facebookで友達と共有してください。また、TwitterやFacebookでフォローすることもできます。
私たちはあなたからの連絡をお待ちしております。私たちの仕事を改善、補完、または革新し、あなたのためにそれをより良くする方法を教えてください。 [email protected]____にご連絡ください