EXCEL VBA单选按钮选择后,怎样使用命令按钮在单元格内赋值?
这是一个类似于exe安装包的界面,实现的功能是在单元格内记录选择结果有两个单选按钮(是、否),由多个题目构成,有两个命令按钮“上一题、下一题”假如第一题选择(是),单击“...
这是一个类似于exe安装包的界面,实现的功能是 在单元格内记录选择结果
有两个单选按钮(是、否),由多个题目构成,有两个命令按钮 “上一题、下一题”
假如第一题选择(是),单击“下一题”,在A1记录:1,同时进入第二题界面;
若想对第一题纠正,可单击上一题,第二题选择(否),在B1记录0;
第三题选择(是),在C1记录1;
...
以此类推,在第一行,把0、1记录下来
这是我编的主代码:
Private Sub MultiPage1_Change()
End Sub
For x = 1 To Me.MultiPage1.Value Step 1
'是.Value = False
'否.Value = False
Me.Caption = "第" & x & "题"
If 是.Value = True Then
Cells(1, x - 1) = 1
ElseIf 否.Value = True Then
Cells(1, x - 1) = 0
End If
Next x
End Sub
Private Sub 上一题_Click()
Me.MultiPage1.Value = Me.MultiPage1.Value - 1
按钮权限
End Sub
Private Sub 下一题_Click()
Me.MultiPage1.Value = Me.MultiPage1.Value + 1
按钮权限
End Sub
有一个错误,老是更新以前记录。
假如在第5题选择(是),单击下一题,
以前的记录A1至E1,全部记录为1
这是怎么回事? 展开
有两个单选按钮(是、否),由多个题目构成,有两个命令按钮 “上一题、下一题”
假如第一题选择(是),单击“下一题”,在A1记录:1,同时进入第二题界面;
若想对第一题纠正,可单击上一题,第二题选择(否),在B1记录0;
第三题选择(是),在C1记录1;
...
以此类推,在第一行,把0、1记录下来
这是我编的主代码:
Private Sub MultiPage1_Change()
End Sub
For x = 1 To Me.MultiPage1.Value Step 1
'是.Value = False
'否.Value = False
Me.Caption = "第" & x & "题"
If 是.Value = True Then
Cells(1, x - 1) = 1
ElseIf 否.Value = True Then
Cells(1, x - 1) = 0
End If
Next x
End Sub
Private Sub 上一题_Click()
Me.MultiPage1.Value = Me.MultiPage1.Value - 1
按钮权限
End Sub
Private Sub 下一题_Click()
Me.MultiPage1.Value = Me.MultiPage1.Value + 1
按钮权限
End Sub
有一个错误,老是更新以前记录。
假如在第5题选择(是),单击下一题,
以前的记录A1至E1,全部记录为1
这是怎么回事? 展开
展开全部
我的感觉:
If 是.Value = True Then 这里的value是当前页的按钮值,所以你每次都是把所有记录刷新为当前选择的答案。应该用类似如下代码获取value
multipage1.pages(0).optionbutton1.value 是page 0的按钮1的值
希望对你有帮助
If 是.Value = True Then 这里的value是当前页的按钮值,所以你每次都是把所有记录刷新为当前选择的答案。应该用类似如下代码获取value
multipage1.pages(0).optionbutton1.value 是page 0的按钮1的值
希望对你有帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不懂你这里为什么要用循环?
Private Sub MultiPage1_Change()
x = Me.MultiPage1.Value
'是.Value = False
'否.Value = False
Me.Caption = "第" & x & "题"
If 是.Value = True Then
Cells(1, x -1) = 1
ElseIf 否.Value = True Then
Cells(1, x -1) = 0
End If
End Sub
这样就够了吧,你一用循环,所有都更新了
Private Sub MultiPage1_Change()
x = Me.MultiPage1.Value
'是.Value = False
'否.Value = False
Me.Caption = "第" & x & "题"
If 是.Value = True Then
Cells(1, x -1) = 1
ElseIf 否.Value = True Then
Cells(1, x -1) = 0
End If
End Sub
这样就够了吧,你一用循环,所有都更新了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询