#excel #vba
#excel #vba
Вопрос:
Я искал эту тему, но не могу ее решить. То, что я пытаюсь сделать, это изменить системную дату через VBA. Я использовал Date = DateSerial(2020,10,6)
, но для этого требуется разрешение. Я пробовал такой способ
Sub Test()
Dim oShell As Object
Set oShell = CreateObject("Shell.Application")
oShell.ShellExecute "cmd.exe", "date 10/6/2020", , "runas", 1
End Sub
Но это не работает. Кажется, чего-то не хватает.
Есть идеи.
Комментарии:
1. Серьезно, вы не должны.
2. @Gustav Можете ли вы подробнее объяснить, почему?
3. Во-первых, кроме некоторого теста на локальном компьютере, где дату можно легко настроить вручную, не должно быть никаких причин для этого. Во-вторых, это приведет к путанице служб, которые полагаются на прошлое и будущее .
Ответ №1:
Это решение
Sub Test()
Dim oShell As Object, d As Date
Set oShell = CreateObject("Shell.Application")
d = "10/06/2020"
oShell.ShellExecute "cmd.exe", "%comspec% /c" amp; "date " amp; d, , "runas", 0
End Sub