Sub sumtotal_of_month()
Dim a As Integer
a = 0
For i = 2 To 365
If (Sheets("Sheet1").Range("F" & i).Value = 1 And Sheets("Sheet1").Range("D" & i).Value <> "") Then
a = a + Sheets("Sheet1").Range("D" & i).Value
End If
Next i
MsgBox (a)
End Sub
上記のコードは正常に動作しますが、私は、パラメータ月でを「1」を代用しようとすると、それは任意の出力を提供していません。私は初心者なので、このコードは非常にアマチュアです。私が使用してエクセル2007エラーながら
Sub sumtotal_of_month(month As Integer)
Dim a As Integer
a = 0
For i = 2 To 365
If (Sheets("Sheet1").Range("F" & i).Value = month And Sheets("Sheet1").Range("D" & i).Value <> "") Then
a = a + Sheets("Sheet1").Range("D" & i).Value
End If
Next i
MsgBox (a)
End Sub
を多分あなたは渡していません有効な 'month'値:呼び出し文とそれが渡されるパラメータの値を確認してください – user3598756
デバッグを使用して、月パラメータの値がプロシージャに渡される前に確認してください。渡された値が整数型であることを確認してください。 –
「repetit juvant」 –