MICROSOFT

EP05. “Option Buttons 选项按钮控件”

首页 Microsoft 工具 Excel · VBA · ActiveX Controls · EP05
约 3 分钟· #EP05#Excel#ActiveX Controls
🔒 登录后可标记已读
  • 选项按钮(Option Button)用来做「只能选一个」的单选题
  • 同一组里选了一个,其他就会自动取消选中
  • 用「性别单选」当例子示范怎么让不同按钮写入不同数值
  • 前置知识:EP01 插入 ActiveX 控件的基本流程

重点内容


适用版本

桌面版通用(Excel 365 / 2021 / 2019 等)。


插入两个选项按钮

  1. Developer 标签页 → Insert
  2. ActiveX Controls 分类选择 Option Button
  3. 拖拽两个到工作表上
  4. 可以透过 Properties 把 Caption 分别改成 "Female" 和 "Male"

加代码

第一个按钮:

If OptionButton1.Value = True Then Range("D3").Value = 10

第二个按钮:

If OptionButton2.Value = True Then Range("D3").Value = 20

关闭 Design Mode,点选其中一个按钮,D3 会显示对应的数值;因为两个按钮同属一组,选了一个另一个会自动取消。

[截图:工作表上标示 Female / Male 的两个选项按钮,点选其中一个后另一个自动取消选中的效果]

📌 选项按钮虽然可以直接放在工作表上,但更常见的用法是放进 Userform,做多选一的问卷或表单(见 16_Userform 系列)。


学完你会

  • ✅ 用多个选项按钮做「只能选一个」的单选组
  • ✅ 知道同组互斥是控件内建行为,不用自己写判断
  • ✅ 知道分组容器(比如 Frame)会影响哪些按钮算同一组

常见错误

  • 以为每个选项按钮的代码要互相判断对方的状态,其实只要各自写好「自己被选中时该做什么」就够了,同组互斥是控件本身的内建行为
  • 两个选项按钮不小心分到了不同的分组容器(比如放在不同的 Frame 里),导致两个按钮都能同时被选中,失去单选效果
  • 代码里引用的按钮名字(OptionButton1/2)跟实际控件改过的名字对不上

Sources

Blog / Website:

  1. Option Buttons