我有以下代码,如果日期值高于15,我试图从.5
对象中减去text53
,但我不断收到错误"Invalid Use of property"
错误
Private Sub Report_Load()
Dim Maxdate As Integer, LValue As Integer, LValue2 As Integer
Dim Mvalue As Integer, Dvalue As Date, RateVal As Integer
LValue2 = 0.5
RateVal = Me.Text31.Value * Me.Text27.Value
Dvalue = Me.Text43
Mvalue = DateDiff("m", Me.Text41, Me.Text43)
If Format(Dvalue, "DD") >= 15 Then Me.Text53 - LValue2
Me.Text53 = Mvalue
Me.Text51 = Me.Text53 * RateVal
End Sub
答案 0 :(得分:1)
试试这个:
Private Sub Report_Load()
Dim Maxdate As Integer
Dim LValue As Integer
Dim LValue2 As Single
Dim Mvalue As Integer
Dim Dvalue As Date
Dim RateVal As Integer
LValue2 = 0.5
RateVal = Me.Text31.Value * Me.Text27.Value
Dvalue = Me.Text43
Mvalue = DateDiff("m", Me.Text41, Me.Text43)
Me.Text53 = Mvalue
If Format(Dvalue, "DD") >= 15 Then
Me.Text53 = Me.Text53 - LValue2
End If
Me.Text51 = Me.Text53 * RateVal
End Sub
我认为你的主要问题是:Me.Text53 - LValue2
您需要将该值分配给某些内容。它本身只会产生错误。将该行更改为 Me.Text53 = Me.Text53 - LValue2 或 Me.Text53 = Mvalue - LValue2 符合条款。
其他注意事项:您不能将十进制数分配给整数数据类型,它会将其四舍五入为整数。此外,将Mvalue分配给Text53需要在条件减法0.5之前进行,否则该部分将被覆盖。