目录
前情提要
VBA获取当前日期
正文测试
目标要求
获取最新行
获取时间
时间格式录入
总代码
效果
前情提要
Dim today As Date
today = Date
在这个示例中,我们首先声明了一个名为today
的Date
对象,然后将其赋值给变量today
。这将返回当前日期和时间。
您还可以使用Now
函数来获取当前日期和时间。以下是一个示例代码,演示如何获取当前日期和时间:
Dim today As Date
today = Now
在这个示例中,我们首先声明了一个名为today
的Date
对象,然后将其赋值给变量today
。这将返回当前日期和时间。
如图,我们需要将I100:M100这五个数据通过按钮生成到B:F这五个栏目的最新行,而观察可得单纯A列的数据时间并不是连续的,而是工作日时间,因此直接下拉不可取,所以我们需要获取当前日期时间,在每天定期执行,同时我们还需要指导按钮启动的过程
在VBA中,可以使用以下代码获取当前表单的最后一行数据:
Dim lastRow As Long
lastRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
MsgBox lastRow
这段代码首先使用ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
获取当前表单的最后一行,然后将其存储在lastRow
变量中。最后,使用MsgBox
函数显示lastRow
变量的值。
请注意,这段代码假定当前表单的第一行是表头行。如果当前表单的第一行不是表头行,则需要将Rows.Count
的值更改为1
以包括表头行。
在VBA中,可以使用Date
对象的Today()
方法获取当前日期。以下是一个示例代码:
Sub GetCurrentDate()
Dim today As Date
today = Date.Today
MsgBox Today ' 输出当前日期
End Sub
在上面的代码中,我们首先定义了一个名为today
的Date
对象,并使用Date.Today
方法获取当前日期。然后,我们将当前日期存储在today
变量中,并使用MsgBox
函数输出当前日期。
需要注意的是,Date
对象的Today()
方法返回的是当前日期,而不是今天的日期。如果需要获取今天的日期,可以使用Date.Today()
方法的第二个参数指定今天的日期,例如:
Sub GetCurrentDateWithDate()
Dim today As Date
today = Date.Today()
MsgBox Today ' 输出今天的日期
End Sub
在上面的代码中,我们使用Date.Today()
方法获取今天的日期,并将其存储在today
变量中。然后,我们使用MsgBox
函数输出今天的日期。
Range(stb) = Format(Now, "yyyy/mm/dd")
利用Format格式来进行Now数据的配合,在后方空格处进行格式规范和要求。
Private Sub CommandButton1_Click()
lastrow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
a = lastrow
b = a + 1
sta = "A" & a
stb = "A" & b
stc = "B" & b
Range(sta).Select
Selection.AutoFill Destination:=Range(sta, stb), Type:=xlFillDefault
Range(sta, stb).Select
Range(stb) = Format(Now, "yyyy/mm/dd")
Range("I100:M100").Select
Selection.Copy
Range(stc).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlPasteSpecialOperationNone, SkipBlanks:=False, Transpose:=False
End Sub