使用ActiveX控件

ActiveX控件与表单控件的区别

Excel中表单控件和ACTIVEX控件主要区别

  • 表单控件只能在excel工作表中添加和使用,插入控件之后,单击右键选择控件,可以设置控件格式和指定宏。
  • activex控件不仅可以在工作表中使用,还可以在VBE编辑器用户窗体中使用,同时具备了很多的属性和事件,这些都是表单控件所不具备的,也是表单控件和activex控件最核心的区别所在。

在这里插入图片描述

按钮控件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

标签控件

在这里插入图片描述
在这里插入图片描述

单选按钮控件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Sub test()
With Sheet1
    If .OptionButton1 = True Then
        MsgBox ("你选的小学")
    ElseIf .OptionButton2 = True Then
        MsgBox ("你选的初中")
    ElseIf .OptionButton3 = True Then
        MsgBox ("你选的高中")
    Else: .OptionButton4 = True
        MsgBox ("你选的大学")
    End If
End With

End Sub

在这里插入图片描述
单选按钮也可以设置点击事件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

微调按钮控件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

练习 ——考试系统

在这里插入图片描述
在这里插入图片描述

在sheet1中代码如下

Private Sub CommandButton1_Click()
'结束考试按钮
Dim j, k As Integer
k = 0
For j = 2 To 9
    If Sheets("题目").Range("f" & j).Value = Sheets("题目").Range("g" & j).Value Then
        k = k + 1
    End If
Next
MsgBox ("恭喜你!做对了 " & k & " 道题,你真棒")
End Sub

Private Sub CommandButton2_Click()
'第一题按钮
Call test(1)
Sheet1.SpinButton1.Value = 1
End Sub

Private Sub CommandButton3_Click()
'最后一题按钮
Call test(8)
Sheet1.SpinButton1.Value = 8
End Sub
'把考生选择的答案写入对应区域
Private Sub OptionButton1_Click()
Sheets("题目").Range("g" & Sheet1.SpinButton1.Value + 1) = "A"
End Sub
Private Sub OptionButton2_Click()
Sheets("题目").Range("g" & Sheet1.SpinButton1.Value + 1) = "B"
End Sub
Private Sub OptionButton3_Click()
Sheets("题目").Range("g" & Sheet1.SpinButton1.Value + 1) = "C"
End Sub
Private Sub OptionButton4_Click()
Sheets("题目").Range("g" & Sheet1.SpinButton1.Value + 1) = "D"
End Sub

Private Sub SpinButton1_Change()
'调用主程序
'Sheet1.SpinButton1.Value作为参数
Call test(Sheet1.SpinButton1.Value)
End Sub

在模块中代码

Sub test(i As Integer)
Sheet1.SpinButton1.Max = 8
Sheet1.SpinButton1.Min = 1
'写入数据
With Sheet1
    '清空单选按钮
    .OptionButton1.Value = False
    .OptionButton2.Value = False
    .OptionButton3.Value = False
    .OptionButton4.Value = False
    '写入题目
    .Range("a4") = i
    .Label3 = Sheets("题目").Range("a" & i + 1)
    .Label2 = Sheets("题目").Range("b" & i + 1)
    .Label4 = Sheets("题目").Range("c" & i + 1)
    .Label5 = Sheets("题目").Range("d" & i + 1)
    .Label6 = Sheets("题目").Range("e" & i + 1)
    '查看是否有CD两个选项
    If .Label5.Caption = "" Then
       .OptionButton3.Visible = False
    Else
        .OptionButton3.Visible = True
    End If
    
    If .Label6.Caption = "" Then
       .OptionButton4.Visible = False
    Else
        .OptionButton4.Visible = True
    End If
    '返回之前的答案
    If Sheets("题目").Range("g" & i + 1) = "A" Then
        .OptionButton1.Value = True
    ElseIf Sheets("题目").Range("g" & i + 1) = "B" Then
        .OptionButton2.Value = True
    ElseIf Sheets("题目").Range("g" & i + 1) = "C" Then
        .OptionButton3.Value = True
    ElseIf Sheets("题目").Range("g" & i + 1) = "D" Then
        .OptionButton4.Value = True
    End If
End With
End Sub

最终效果

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值