gpt4 book ai didi

excel - 有没有办法模拟系统日期?

转载 作者:行者123 更新时间:2023-12-04 21:51:28 28 4
gpt4 key购买 nike

所以我有一个只想在工作日运行的宏。我创建了一个宏(我希望)将检查它是星期几并将其放入单元格中。这就是我所拥有的:

Private Sub dayCheck()

If Weekday(Now) = vbMonday Or vbTuesday Or vbWednesday Or vbThursday Or vbFriday Then
Dim BlankRow As Long
BlankRow = Range("A65536").End(xlUp).Row + 1
Cells(BlankRow, 1).Select
Selection.Value = Date
Selection.Offset(0, 1).Value = Time
Selection.Offset(0, 2).Value = WeekdayName(Weekday(Now))
Selection.Offset(0, 3).Value = Environ("Username")

ElseIf Weekday(Now) = vbSaturday Or vbSunday Then
Dim time1, time2

Do
time1 = Weekday(Now)
time2 = vbMonday
Do Until time1 = time2
DoEvents
time1 = Now()
Loop
Loop

End If

Application.OnTime TimeValue("12:00:00"), "dayCheck"

End Sub

我的问题是我没有更改系统日期的管理员权限。有没有办法通过宏来模拟这个?

最佳答案

您可以通过在 excel 中格式化 now() 函数的一般或数字输出来模拟日期代码,只需加 1 以增加日期。小数点右边的数字表示从午夜到第二天的时间百分比。

今天的日期时间代码是:43412.37786

明天是 43413.37786

因此,您可以通过创建一个 for 循环来回答有关测试代码的问题:

Dim Today
Today = Now
For Days = Today To Today + 7 'Tests today through next Thursday.
If Weekday(Days) = ...
Next Days

但是达伦的回答看起来可以解决您的问题,所以我可能会同意。

关于excel - 有没有办法模拟系统日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53209826/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com