[Office] VBA Practice
2024-10-11 18:09:41
1. 使用DateTimePicker控件
VBA中默认的User Form的Toolbox中的控件并不包含DateTimePicker,是接受时间相关数据的输入,在Toolbox上右击“Additional Controls”,在弹出的对话框中选择“Microsoft Date and Time Picker Control 6.0”
2. User Form的返回值
默认情况下,User Form并没有返回值(有意思的是,MsgBox倒是有返回值),那如何判断弹出的对话框是被点击了OK按钮还是Cancel按钮呢?
一个简单的方法是,
(1) 在User Form的Module中定义全局变量
Public ClickedByOK As Boolean
(2) 在对应的按钮响应方法中设置该变量
Private Sub btnCancel_Click()
ClickedByOK = False
Me.Hide
End Sub Private Sub btnOK_Click() ClickedByOK = True
Me.Hide
End Sub
(3) 在窗口结束后判断该变量的值
Dim dlg As New dlgRememberItem
dlg.Show If dlg.ClickedByOK = False Then
Exit Sub
End If
3. 处理时间相关数据
因为VBA只提供了一个简单的Date 数据类型,这无疑给时间相关数据的处理带来了复杂度;
一个非常好的VBA中处理时间数据的资源: http://dmcritchie.mvps.org/excel/datetime.htm
4. 常用的一些语法
退出Sub | EXIT SUB |
---|---|
Debug输出 | Debug.Print |
For循环 | For i = 1 To 100 ' Logic Next i |
Do/While循环 | Do While t > 0 Loop |
While循环 | While t > 0 Wend |
最新文章
- docker – 你应该知道的10件事
- 发布一个开源极致的javascript模板引擎tpl.js
- Memcached——非关系型数据库分布式处理
- 六间房 去掉水印的方法 绕过游客VIP限制
- 面向对象之struct
- if语句解一元二次方程~
- [置顶] SNMP协议详解<;二>;
- Task的使用
- 解决VS报表.rdl 显示乱码“小方块”问题
- 在C#中使用WIA获取扫描仪数据(利用Filter处理图片)
- poj 3903 最长上升子序列 Stock Exchange
- ClassLoader载入指定的类需注意六个细节或报ClassNotFundEception异常总结
- POJ 1459-Power Network(网络流-最大流-ISAP)C++
- Java学习2——HelloWorld(编写第一个java程序)
- Android+TensorFlow+CNN+MNIST 手写数字识别实现
- ACE如何生成VS工程之mwc.pl用法
- WPF dev 获取gridControl筛选后的数据
- ASP.NET发送电子邮件(转)
- 微信小程序开发 [01] 小程序基本结构和官方IDE简介
- 如何处理高并发情况下的DB插入
热门文章
- powershell加载EXE进内存运行
- Linux系统取证实践
- git 删除未提交的文件
- PHP array_fill_keys
- [LUOGU1272] 重建道路 - 树形背包
- 实用---java保留小数点后位数以及输出反转数字
- win10系统plsql卡顿、菜单闪烁解决办法
- Halcon一日一练:创建AOI
- C# 求Π Π/4=1-1/3+1/5-1/7+......+1/(2*n-3)-1/(2*n-1); (n=2000)
- Netty源码分析之ChannelPipeline(一)—ChannelPipeline的构造与初始化