Shape

https://docs.microsoft.com/zh-tw/office/vba/api/excel.shape

设置图形属性

ActiveSheet.Shapes(2).Line.Weight '当前工作表里图形(Shapes)集合里的第二个对象里的直线(Line)对象的粗细(Weight)属性

表单控件

根据图形的 Type 属性判断图形类型,如果是表单控件msoFormControl 则接着判断表单控件的类型FormControlType 基本后通过控件的 ControlFormat.Value 取得控件值

参考

For Each s In Worksheets(1).Shapes
If s.Type = msoFormControl Then
If s.FormControlType = xlCheckBox Then _
s.ControlFormat.Value = False
End If
Next

CheckBox

获取选中状态

选中时Value值为1,未选中时返回 -4146,直接赋值给 bool 会全部转为 True

Dim ckb As Shape
Dim status As Boolean
Set ckb = ActiveSheet.Shapes(Application.Caller)
If ckb.Type = msoFormControl Then
If ckb.FormControlType = xlCheckBox Then
Debug.Print ckb.ControlFormat.Value
If ckb.ControlFormat.Value = 1 Then
status = True
Else
status = False
End If
End If
End If
Debug.Print status

实例

根据复选框的状态添加删除线到当前行

Sub BtnComplete()
Dim curRow As Integer
Dim ckb As Shape
Dim status As Boolean
Set ckb = ActiveSheet.Shapes(Application.Caller)
If ckb.Type = msoFormControl Then
If ckb.FormControlType = xlCheckBox Then
Debug.Print ckb.ControlFormat.Value
If ckb.ControlFormat.Value = 1 Then
status = True
Else
status = False
End If
End If
End If
Debug.Print status
curRow = ActiveSheet.Shapes(ckb.Name).TopLeftCell.Row
With Range("A" & curRow & ":D" & curRow).Font
.Strikethrough = status
End With
End Sub

Excel编程VBA图形Shape复选框的状态判断的更多相关文章

  1. CheckStateChanged(复选框选中状态更改事件)和 CheckedChanged(单选按钮选中状态更改事件)二者区别?

    CheckStateChanged(复选框选中状态更改事件)和 CheckedChanged(单选按钮选中状态更改事件)二者区别: 复选框控件(CheckBox)提供了CheckedChanged控件 ...

  2. jquery中attr和prop的区别—判断复选框选中状态

    最近项目中需要用jquery判断input里checkbox是否被选中,发现用attr()获取不到复选框改变后的状态,最后查资料发现jQuery 1.6以后新增加了prop()方法,借用官方的一段描述 ...

  3. jquery修改Switchery复选框的状态

    script //选择框 var mySwitch; /* * 初始化Switchery * * classNmae class名 */ function initSwitchery(classNam ...

  4. 实现table中checkbox复选框、以及判断checked是否被选中、js操作checkedbox选中

    上图是实现效果. 下面贴代码 表的第一行也就是<th>中的代码,onclick事件是实现全选或者全不选效果. <th> <input id="allboxs&q ...

  5. js修改Switchery复选框的状态

    声明一个switchery插件,绑定到一个input上 js代码 var mySwitch = new Switchery($('#blacklist')[0], { size:"small ...

  6. [Selenium With C#基础教程] Lesson-07 复选框

    作者:Surpassme 来源:http://www.jianshu.com/p/98ede43da3c3 声明:本文为原创文章,如需转载请在文章页面明显位置给出原文链接,谢谢.   [作者:Surp ...

  7. 通过编写串口助手工具学习MFC过程——(五)添加CheckBox复选框

    通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...

  8. 关于复选框input[type=checkbox]

    关于复选框input[type=checkbox],其实在前面的文章中说过一次,当时主要关注点在设置复选框的状态,利用prop实现,今天继续关注一下复选框. 自己在项目中,遇到一个全选/全不选的需求, ...

  9. CheckedListBoxControl 实现复选框的单选与多选功能

    由于工作需要,需要实现复选框的单选与多选功能,找了好多资料都不是很全,经过两天苦苦的挖挖挖,终于完成啦O(∩_∩)O哈哈~ 用DEV控件中的CheckedListBoxControl控件,当然VS中的 ...

  10. jquery checkbox 复选框多次点击判断选中状态,以及全选/取消的代码示例

    2015年12月21日 10:52:51 星期一 目标, 点击当前的checbox, 判断点击后当前checkbox是否是选中状态. html: <input type="checkb ...

随机推荐

  1. 创建第一个属于自己的JavaWeb小程序吧

    需要使用的 技术 工具: idea 2022  开发工具 MySql 5.6  数据库工具 Apache Tomcat 8.5.85   web应用部署工具 主要功能有: 用户登录 用户注册 展示列表 ...

  2. MySQL 中 INNER JOIN、LEFT JOIN 和 RIGHT JOIN 的区别是什么?

    在MySQL中,INNER JOIN.LEFT JOIN和RIGHT JOIN是用于连接两个或多个表的操作符,它们的主要区别在于如何处理匹配的记录和不匹配的记录. INNER JOIN: 只返回两个表 ...

  3. 从 MySQL 获取数据,是从磁盘读取的吗?(buffer pool)

    从 MySQL 获取数据,是从磁盘读取的吗?(Buffer Pool) 在 MySQL 中,数据是否从磁盘读取取决于数据是否已经被加载到内存中.MySQL 使用 InnoDB 存储引擎 中的 Buff ...

  4. Java 里的对象在虚拟机里面是怎么存储的?

    Java 中的对象在虚拟机里的存储 在 Java 中,对象在虚拟机中的存储方式取决于 JVM 内存模型,主要存储在 堆(Heap) 中.对象的内存布局和管理方式会影响对象的创建.访问和销毁.下面详细解 ...

  5. Maven版本号管理规范:为何父POM是统一依赖版本的最佳实践?

    结论先行 在Maven多模块项目中,依赖的版本号应集中定义在父POM的<dependencyManagement>中,子模块通过继承父POM来引用版本号,通常无需在子POM中重复声明.这能 ...

  6. 可持久化 01-trie 简记

    本文略过了 trie 和 可持久化的介绍,如果没学过请先自学. 在求给定一个值 \(k\) 与区间中某些值的异或最大值时,可以考虑使用在线的数据结构可持久化 01-trie 来维护. 01-trie ...

  7. SpringCloud项目使用nacos配置

    SpringCloud项目 pom.xml 注意SpringCloud和SpringCloudAlibaba的版本对应. Spring Cloud Alibaba Version Spring Clo ...

  8. 从写代码到写Prompt,解锁鸿蒙原生应用高效开发秘籍

    当前,大模型技术正在重新定义软件工程.一方面,大模型降低了软件开发门槛.在过去,软件开发者被划分为全民开发者.应用开发者和专业开发者,随着大模型技术的介入,软件开发变得触手可及,一些简单的应用甚至能够 ...

  9. 使用 GitDiagram 快速将 GitHub 仓库转换为交互式图表

    前言 当面对 GitHub 上文件目录错综复杂的新项目,且你急需快速了解其系统设计或架构流程时,你可能会感到束手无策.今天大姚给大家分享一个开源利器 GitDiagram,它可以轻松将任何复杂的 Gi ...

  10. 操作系统:Linux如何实现进程与进程调度

    Linux如何表示进程 在Cosmos中,设计了一个thread_t数据结构来代表一个进程,Linux也同样是用一个数据结构表示进程. Linux进程的数据结构 在Linux系统下,把运行中的应用程序 ...