打开APP
userphoto
未登录

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

开通VIP
教程 | 10个值得收藏的VBA写法(第5集)

写在前面

编程的人都知道,通过代码解决一个实际问题有时候并不是看上去那样,背后可能隐藏着很巧妙的实现逻辑,这些只有开发者才能真正领悟其中的妙处,相对于给人刻板印象的编程人员来说,这些恰恰是其闪光点所在。

笔者(公众号:URItker)将通过几期文章系统梳理VBA编程中会经常遇到的一些写法,它们仿佛散落在沙滩上的贝壳,有的色彩缤纷,有的深掩在沙中,有些可能已经在你的口袋里,那就权当加深印象,有的也许正是你所需要的,就刻意运用一下,说不好能让你豁然开朗,使编程效果事半功倍!


区域联合

Union(Range('A1:A9'),Range('D1:D9'))
将两个或多个单元格区域联合起来,生成一个新的单元格区域,然后再统一进行逻辑处理,返回的是一个Range对象,该对象表示两个或多个范围的并集。

区域交叉

Intersect(Range('A1:B9:),Range('A1:D9:))
返回两个或多个单元格重叠的部分,返回的是一个Range对象,该对象表示两个或多个范围的交集。

返回列数

Selection.Columns.Count
当前选中的单元格区域中的列数,可用于选中区域的列遍历。

返回行数

Selection.Rows.Count

当前选中的单元格区域中的行数,可用于选中区域的行遍历。


区域已使用行数

ActiveSheet.UsedRange.Row
指工作表中已经使用过的单元格区域,判断单元格是否使用过,要注意的是,修改过单元格的行高列宽,即使单元格是空的,也算是使用过单元格。

工作表函数IsNumeber

Application.WorksheetFunction.IsNumber('A1')

所谓工作表函数WorksheetFunction指的是在Excel中可以直接使用的函数。函数有工作表函数和VBA函数之分,这些函数并不是完全通用的,WorksheetFunction对象的成员就是Excel内置函数,因此,利用该对象可以直接在VBA中使用这些函数。

工作表函数Max

Range('A:A').Find(Application.WorksheetFunction.Max(Range('A:A'))).Activate
激活单元格区域A列中最大值的单元格

普通消息框

MsqBox 'Hello!'
在消息框中显示信息,并等待用户单击按钮,可返回单击的按钮值(比如“确定”或者“取消”)

交互式消息框

Ans=MsgBox('Continue?',vbYesNo)
常见参数如下:MsgBox(Prompt[,Buttons][,Title][,Helpfile,Context])


显示窗体

Userform1.Show

userform1.show  缺省 = userform1.show  vbmodal

模式的窗体,必须等窗体关闭后才能进行其他操作

模式窗体:窗体显示后将停止显示之后的代码直到退出或隐藏此窗体,并且必须退出或隐藏此窗体后,才可以操作非此窗体的其他界面元素。

也就是说,当你使用模式窗体显示某窗体的时候,当程序执行完“显示窗体”这条命令后,将暂停执行程序里剩余的语句,直到这个窗体被隐藏或退出。且当窗体显示出来以后,你不能激活该窗体以外的任何区域。

userform1.show  vbmodeless 

无模式窗体

窗体在0模式下可以多个窗体同时显示,同时操作,而且可以同时操作EXCEL

0模式就是将窗体挂起。可以做其它操作

无模式窗体:窗体显示后会继续执行程序里余下的语句,而其他的窗体或界面也可以进行操作

未完待续

THE

END

创作不易,

您的支持是我坚持的动力,

劳烦动动手指转发在看

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
经典Excel VBA代码
VBA常用代码解析(第四十三讲)
Excel-VBA定义函数对区域内的单元格中的混杂字符串中的数字求和
在VBA中使用Excel公式 | 完美Excel
VBA新手入门篇 - excel函数,excel公式,excel学习,excel基础,ex...
VBA代码解决方案:VBA代码中,EXCEL工作表函数SUM的利用方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服