[Office] VBA Practice

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. 常用的一些语法

常用VBA语法
退出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



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值