excelvba日期时间(VBA 日期)

Excel表格网 2022-11-13 12:00 编辑:admin 242阅读

1. VBA 日期

Sub 计算日期()

Dim BegDate, EndDate, Msg

BegDate = InputBox("请输入起始日期:")

EndDate = InputBox("请输入结束日期:")

MsgBox "两者相差天数为: " & DateDiff("d", BegDate, EndDate) & "天"

End Sub

2. vba今天日期

1、在worksheet的selectionchange事件中,让日期控件随着对单元格的选择不同而移动。 If (Target.Row >= 4 And Target.Row <= 100) And Target.Column = 3 Then With DTPicker1 .Visible = True .Left = Target.Left .Top = Target.Top .Width = Target.Rows.Width .Height = Target.Height End With Else DTPicker1.Visible = False End If 2、在dtpicker1的closeup事件中对单元格赋值。

3. excel vba 日期

1、打开excel表格,在单元格中输入日期:2019-02-09。

2、点击鼠标右键,在弹出的选项中选择“设置单元格格式”选项。

3、在弹出的对话框中选择“自定义”,手动将“类型”更改为“yyyy-mm”。

4、点击确定,即可将选中单元格的日期设置成只显示“年”和“月”,去掉了“日”

4. vba 年月日

vb会自动识别,默认为月日年,年月日,日月年的顺序,如#10/11/12#vb识别为2012年10月12日;如果第一个数超过12,如#13/11/12#vb则识别为2013年11月12日;如果第一个数超过12,且最后一位超过31,如#13-11-32#vb则识别为1932年11月13日。其他值则为错误

5. vba当前日期

1打开Excel表格,点击【文件】,【另存为】,在“保存类型”里面选择“Excel 启用宏的工作薄”并进行保存。

2点击【开发工具】,【Visual Basic】打开VBA工程窗口。

3在左侧的“VBAProject(自动记录时间点.xlsm)”下方双击“Sheet1(Sheet1)”打开代码输入窗口。

4在代码输入窗口里面输入以下VBA代码:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) &#39;工作表选定区域发生改变时执行

Dim b1 As Boolean

Dim a, b, c, d, e, f As Variant

Dim i, j As Integer

Set myDocument = ThisWorkbook.Worksheets("Sheet1")

For i = 2 To 1000 &#39;循环2-1000次,即:以下自动填充时间到1000行

a = myDocument.Cells(i, 1) &#39;将单元格赋值给a

b = myDocument.Cells(i, 2)

c = myDocument.Cells(i, 3)

d = myDocument.Cells(i, 4)

e = myDocument.Cells(i, 5)

f = myDocument.Cells(i, 6)

b1 = WorksheetFunction.And(a <> "", b <> "", c <> "", d <> "", e <> "")

If b1 = True And f = "" Then &#39;如果所在行已经填写信息且自动填充时间为空白,则执行自动填充时间

5在同一行上面的第1到第5列对应的单元格都写入数据信息,且同一行上面的第6列对应的单元格是空白的,那么就会在同一行上面的第6个单元格里面自动写入当前的时间。

6. vba 当日日期

WeekDay函数返回从1到7的整数,代表该日期指定星期的一天。

Weekday(date[,firstdayofweek])

参数说明

Date, 必需的参数。Weekday将这一指定日期返回。

firstdayofweek, 一个可选的参数。指定一周的第一天.

0 = vbUseSystemDayOfWeek - 使用国家语言支持(NLS)API设置

1 = vbSunday - 星期日

2 = vbMonday - 星期一

3 = vbTuesday - 星期二

4 = vbWednesday - 星期三

5 = vbThursday - 星期四

6 = vbFriday - 星期五

7 = vbSaturday - 星期六

7. vba 今日日期

'输入日期,确定按钮

Private Sub CommandButton1_Click()

StartDate = TextBox1.Value

EndDate = TextBox2.Value

TextBox1.Value = ""

TextBox2.Value = ""

Input_Date.Hide

End Sub

'输入日期,取消按钮

Private Sub CommandButton2_Click()

TextBox1.Value = ""

TextBox2.Value = ""

StartDate = ""

EndDate = ""

Input_Date.Hide

End Sub

'输入日期,初始化文本框

Private Sub TextBox1_Enter()

If TextBox1.Value = "" Then TextBox1.Value = Format(Date, "yyyymmdd")

End Sub

'输入日期,离开起始日期

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

If TextBox1.Value Like "########" Then

TextBox2.Value = TextBox1.Value

TextBox1.Value = DateSerial(Left(TextBox1.Value, 4), Mid(TextBox1.Value, 5, 2), Right(TextBox1.Value, 2))

Else

'日期有误,留在输入框

MsgBox "日期有误,请重新输入!", vbOKOnly, "iamlaosong"

TextBox1.Value = Format(Date, "yyyymmdd")

Cancel = True

End If

End Sub

'输入日期,离开截止日期

Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)

If TextBox2.Value Like "########" Then

TextBox2.Value = DateSerial(Left(TextBox2.Value, 4), Mid(TextBox2.Value, 5, 2), Right(TextBox2.Value, 2))

If TextBox2.Value < TextBox1.Value Then

MsgBox "截止日期不能小于起始日期!", vbOKOnly, "iamlaosong"

Cancel = True

End If

Else

MsgBox "日期有误,请重新输入!", vbOKOnly, "iamlaosong"

TextBox2.Value = Format(TextBox1.Value, "yyyymmdd")

Cancel = True

End If

End Sub

8. vba 当前日期时间

时间变量类型定义

dim t

t=Timer; //时间变量t

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
点击我更换图片