打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
你加班 1 小时做表格,我用VBA只需10秒钟,直接粘贴拿去用吧!

一、输入数据自动锁定

Private Sub Worksheet_SelectionChange(ByValTarget As Range)OnError Resume NextSheet1.Unprotect Password:="123"IfTarget.Value <> "" ThenTarget.Locked = TrueSheet1.Protect Password:="123"EndIfEnd Sub
这个代码的作用是在输入数据后,自动锁定Excel工作表。这样的话,我们就不能修改录入的数据。只有点击【审阅】找到【取消工作表保护】录入正确的密码才可以修改数据
Sheet1.Unprotect Password:="123"Sheet1.Protect Password:="123"
我们想要使用只需修改上面的2行代码即可。默认密码为【123】,大家可以根据自己需求来输入密码,密码需要更改2次,Sheet1是用于指定锁定那个工作表的,大家也需要根据自己的实际情况来修改下,这个Sheet1VB编辑器中对应的sheet名称,在左侧的窗口可以看到



二、根据批注提取数据

Public Function pizhu(i As Range)Application.Volatile Truepizhu = i.Cells.Comment.TextEnd Function
这个代码的作用是自定义一个名称为【pizhu】的函数,我们需要再点击鼠标右键,插入【模块】,将代码粘贴到模块中,它可以帮助我们快速的将批注中的数据提取出来
语法:=pizhu(需要提取的单元格)
需要注意的是,如果单元格没有批注的话,函数就会返回#VALUE!这个错误值,所以我们还需要使用IFERROR函数来屏蔽一下错误值。



三、根据颜色求和

Function SumColor(i As Range, ary1 AsRange)Dimicell As RangeApplication.VolatileForEach icell In ary1Ificell.Interior.ColorIndex = i.Interior.ColorIndex ThenSumColor = Application.Sum(icell) + SumColorEndIfNexticellEnd Function
这个代码的作用是根据颜色求和,定义方法与提取批注是一模一样的,函数的名字为SumColor
语法:= SumColor(想要求和的颜色,求和的数据区域)
第一参数:直接在单元格中选取对应的颜色即可。
第二参数:选择需要求和的数据区即可



四、根据颜色计数

Function CountColor(x As Range, ary2 AsRange)Application.VolatileFor Each i In ary2If i.Interior.ColorIndex =x.Interior.ColorIndex ThenCountColor = CountColor + 1End IfNextEnd Function
它的用法跟SumColor一样,作用是根据颜色来进行计数。
语法:= CountColor(想要计数的颜色,计数的数据区域)
第一参数:直接在单元格中选取对应的颜色即可。
第二参数:选择需要计数的数据区即可

以上就是今天分享的4VBA代码,都是一些工作中比较常见的例子,大家直接粘贴使用即可,有一点需要注意的是:如果你想要保存这些VBA代码,就需要将文件的格式另存为【XLSM】,这个格式是可以保存宏代码的。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
根据颜色求和与计数,你用了1天,我使用自定义函数1分钟就搞定了
根据单元格颜色求和与计数,我做了1天,同事3分钟搞定,差距真大
Excel怎么统计相同颜色单元格的数量并进行求和计算太实用了
提高工作效率:VBA让你在30秒内完成表格,告别加班1小时的困扰
Excel VBA语句集
VBA编程问答(第3辑)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服