-1

sheet2に多数のデータがあります。たとえば、B4 = 2、B5=4およびC4=6、C5=4です。ActiveXボタンを使用してsheet2からデータを呼び出し、ActiveXボタンをクリックしてsheet1の平均を計算したいと思います。この問題でVBAコードを使用する方法を教えてください。ありがとうございました

このコードには投稿に関連しないデータがありますが、考え方は同じです

Private Sub CommandButton1_Click()

Dim AVG As Integer

ThisWorkbook.Worksheets("Sheet2").Activate

Worksheets("Sheet1").Range("A3").Value = Application.WorksheetFunction.average(Range("A1:A2"))

AVG = Application.WorksheetFunction.average(Range("A1:A2"))

MsgBox Worksheets("Sheet1").Range("A3").Value

End Sub

たとえばJan13などの名前を入力すると、sheet1のボタンがシート2の範囲B3:B10に基づいて平均を計算し、msgBoxが結果を表示するボタンを作成したいと思います。

4

1 に答える 1

0

これを試してみてくださいそれはあなたの問題を解決するはずです。

Public Sub Average()

Dim AVG As String
ThisWorkbook.Worksheets("Sheet2").Activate
' Range here to calculate average of is A1 to A20
AVG = Application.Average(Range("A1:A20"))
' This is where the result of the average be displayed
Worksheets("Sheet1").Cells(1, 2).Value = AVG 

End Sub

また、ActiveXボタンは必要ありません。通常のボタンを使用して、このマクロをそれに割り当てます。

于 2013-03-12T13:35:14.173 に答える