0
私は複数のワークシート(動的)で作業しており、各シート(VBA初心者)で簡単な計算をしたいと考えています。私は各シートでマクロを行うことができます しかし、ループは機能しません。エラーメッセージは表示されませんが、1つのシートでのみ実行されます。コードは以下のとおりです。どんな助けもありがとうございます。デフォルトRange
によりアクティブワークブック内のワークシートをループすることができません
Sub Counts()
Dim Last As Integer
Dim Have As Long
Dim Miss As Long
Dim Total As Long
Dim Value As Currency
Dim Cost As Currency
Dim TVal As Currency
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
Last = Range("B1").CurrentRegion.Rows.Count
Miss = Application.WorksheetFunction.CountBlank(Range("A2:A" & Last))
Total = Last - 1
Have = Total - Miss
Value = Application.WorksheetFunction.SumIf(Range("A2:A" & Last), "X",Range ("G2:G" & Last))
TVal = Application.WorksheetFunction.Sum(Range("G2:G" & Last))
Cost = TVal - Value
Range("J2").Value = "Have"
Range("J3").Value = "Missed"
Range("J4").Value = "Total Cards"
Range("J6").Value = "Value"
Range("J7").Value = "Cost to Complete"
Range("J8").Value = "Set Value"
Range("k2").Value = Have
Range("k3").Value = Miss
Range("k4").Value = Total
Range("k6").Value = Value
Range("k7").Value = Cost
Range("k8").Value = TVal
Next ws
End Sub