如何用VBA判断单元格输入的数据是否正确??
如图,如果在E1到E4单元格中输入了正确的答案,每空10分,则按下得分按钮弹出对话框显示”总分为40分“,用VBA如何实现此功能,请高手解答!...
如图,如果在E1到E4单元格中输入了正确的答案,每空10分,则按下得分按钮弹出对话框显示”总分为40分“,用VBA如何实现此功能,请高手解答!
展开
2个回答
展开全部
右键点得分那个按钮,里面有“查看代码”,将下面的代码,覆盖原有的二行。
Private Sub CommandButton1_Click()
a = 0
For i = 1 To 4
b = Cells(i, 1) & Cells(i, 2) & Cells(i, 3)
If Application.Evaluate(b) = Cells(i, 5).Value Then
a = a + 1
End If
Next i
MsgBox "得分" & a * 10 & "分"
End Sub
Private Sub CommandButton1_Click()
a = 0
For i = 1 To 4
b = Cells(i, 1) & Cells(i, 2) & Cells(i, 3)
If Application.Evaluate(b) = Cells(i, 5).Value Then
a = a + 1
End If
Next i
MsgBox "得分" & a * 10 & "分"
End Sub
更多追问追答
追问
我把您给的代码复制到了相应的位置,然后按运行弹出了一个宏对话框,请问要怎么解决,我是新手,麻烦您再指点一下。
追答
你有存盘吗?
重新打开后,有选择“启用宏”吗?
展开全部
Sub chiefzjh()
Dim r%
For r = 1 To 4
If Cells(r, 5).Value <> "" And Cells(r, 5).Value = mCal(Cells(r, 1).Value, Cells(r, 2).Value, Cells(r, 3).Value) Then s = s + 10
Next
MsgBox "总分为 " & s & " 分"
End Sub
Function mCal(mA%, mB$, mC%) As Single
Select Case mB
Case "+"
mCal = mA + mC
Case "-"
mCal = mA - mC
Case "*"
mCal = mA * mC
Case "/"
mCal = mA / mC
End Select
End Function
Dim r%
For r = 1 To 4
If Cells(r, 5).Value <> "" And Cells(r, 5).Value = mCal(Cells(r, 1).Value, Cells(r, 2).Value, Cells(r, 3).Value) Then s = s + 10
Next
MsgBox "总分为 " & s & " 分"
End Sub
Function mCal(mA%, mB$, mC%) As Single
Select Case mB
Case "+"
mCal = mA + mC
Case "-"
mCal = mA - mC
Case "*"
mCal = mA * mC
Case "/"
mCal = mA / mC
End Select
End Function
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |