Dim MyTime MyTime = #4:35:17 PM# ' 指定一时间。 Time = MyTime ' 将系统时间设置为 MyTime 的内容。
可以参考下面的类模块:Option Explicit Private SystemTime As SystemTime Private Declare Function SetSystemTime Lib "kernel32" (lpSystemTime As SystemTime) As Long Private Type SystemTime wYear As Integer wMonth As Integer wDayOfWeek As Integer wDay As Integer wHour As Integer wMinute As Integer wSecond As Integer wMilliseconds As Integer End TypeDim tmp Private m_Hour As Integer Private m_Minute As IntegerPublic Property Get Hour() As Integer Hour = m_Hour End Property Public Property Let Hour(tmp_Hour As Integer) m_Hour = tmp_Hour End Property Public Property Get Minute() As Integer Minute = m_Minute End Property Public Property Let Minute(tmp_Minute As Integer) m_Minute = tmp_Minute End Property
再完整地贴一次 Option Explicit Private Declare Function SetSystemTime Lib "kernel32" (lpSystemTime As SystemTime) As Long Private Type SystemTime wYear As Integer wMonth As Integer wDayOfWeek As Integer wDay As Integer wHour As Integer wMinute As Integer wSecond As Integer wMilliseconds As Integer End TypePrivate MySystemTime As SystemTimePrivate m_Year As Integer Private m_Month As Integer Private m_Day As Integer Private m_Hour As Integer Private m_Minute As Integer Private m_Second As IntegerPublic Property Get Year() As Integer Year = m_Year End Property Public Property Let Year(New_Year As Integer) m_Year = New_Year End PropertyPublic Property Get Month() As Integer Month = m_Month End Property Public Property Let Month(New_Month As Integer) m_Month = New_Month End PropertyPublic Property Get Day() As Integer Day = m_Day End Property Public Property Let Day(New_Day As Integer) m_Day = New_Day End PropertyPublic Property Get Hour() As Integer Hour = m_Hour End Property Public Property Let Hour(New_Hour As Integer) m_Hour = New_Hour End PropertyPublic Property Get Minute() As Integer Minute = m_Minute End Property Public Property Let Minute(New_Minute As Integer) m_Minute = New_Minute End PropertyPublic Property Get Second() As Integer Second = m_Second End Property Public Property Let Second(New_Second As Integer) m_Second = New_Second End PropertyPublic Function setup() As Integer With MySystemTime .wYear = Year .wMonth = Month .wDay = Day '.wDayOfWeek = 1 .wMinute = Minute .wHour = Hour .wSecond = Second '.wMilliseconds = 0 End With setup = SetSystemTime(MySystemTime) End Function
嘻嘻,再格式化贴一次:Option Explicit Private Declare Function SetSystemTime Lib "kernel32" (lpSystemTime As SystemTime) As Long Private Type SystemTime wYear As Integer wMonth As Integer wDayOfWeek As Integer wDay As Integer wHour As Integer wMinute As Integer wSecond As Integer wMilliseconds As Integer End TypePrivate MySystemTime As SystemTimePrivate m_Year As Integer Private m_Month As Integer Private m_Day As Integer Private m_Hour As Integer Private m_Minute As Integer Private m_Second As IntegerPublic Property Get Year() As Integer Year = m_Year End Property Public Property Let Year(New_Year As Integer) m_Year = New_Year End PropertyPublic Property Get Month() As Integer Month = m_Month End Property Public Property Let Month(New_Month As Integer) m_Month = New_Month End PropertyPublic Property Get Day() As Integer Day = m_Day End Property Public Property Let Day(New_Day As Integer) m_Day = New_Day End PropertyPublic Property Get Hour() As Integer Hour = m_Hour End Property Public Property Let Hour(New_Hour As Integer) m_Hour = New_Hour End PropertyPublic Property Get Minute() As Integer Minute = m_Minute End Property Public Property Let Minute(New_Minute As Integer) m_Minute = New_Minute End PropertyPublic Property Get Second() As Integer Second = m_Second End Property Public Property Let Second(New_Second As Integer) m_Second = New_Second End PropertyPublic Function setup() As Integer With MySystemTime .wYear = Year .wMonth = Month .wDay = Day '.wDayOfWeek = 1 .wMinute = Minute .wHour = Hour .wSecond = Second '.wMilliseconds = 0 End With setup = SetSystemTime(MySystemTime) End Function
另一個方法:) Dim dblReturn As Double dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL timedate.cpl", 5)
MyTime = #4:35:17 PM# ' 指定一时间。
Time = MyTime ' 将系统时间设置为 MyTime 的内容。
Private SystemTime As SystemTime
Private Declare Function SetSystemTime Lib "kernel32" (lpSystemTime As SystemTime) As Long
Private Type SystemTime
wYear As Integer
wMonth As Integer
wDayOfWeek As Integer
wDay As Integer
wHour As Integer
wMinute As Integer
wSecond As Integer
wMilliseconds As Integer
End TypeDim tmp
Private m_Hour As Integer
Private m_Minute As IntegerPublic Property Get Hour() As Integer
Hour = m_Hour
End Property
Public Property Let Hour(tmp_Hour As Integer)
m_Hour = tmp_Hour
End Property
Public Property Get Minute() As Integer
Minute = m_Minute
End Property
Public Property Let Minute(tmp_Minute As Integer)
m_Minute = tmp_Minute
End Property
Option Explicit
Private Declare Function SetSystemTime Lib "kernel32" (lpSystemTime As SystemTime) As Long
Private Type SystemTime
wYear As Integer
wMonth As Integer
wDayOfWeek As Integer
wDay As Integer
wHour As Integer
wMinute As Integer
wSecond As Integer
wMilliseconds As Integer
End TypePrivate MySystemTime As SystemTimePrivate m_Year As Integer
Private m_Month As Integer
Private m_Day As Integer
Private m_Hour As Integer
Private m_Minute As Integer
Private m_Second As IntegerPublic Property Get Year() As Integer
Year = m_Year
End Property
Public Property Let Year(New_Year As Integer)
m_Year = New_Year
End PropertyPublic Property Get Month() As Integer
Month = m_Month
End Property
Public Property Let Month(New_Month As Integer)
m_Month = New_Month
End PropertyPublic Property Get Day() As Integer
Day = m_Day
End Property
Public Property Let Day(New_Day As Integer)
m_Day = New_Day
End PropertyPublic Property Get Hour() As Integer
Hour = m_Hour
End Property
Public Property Let Hour(New_Hour As Integer)
m_Hour = New_Hour
End PropertyPublic Property Get Minute() As Integer
Minute = m_Minute
End Property
Public Property Let Minute(New_Minute As Integer)
m_Minute = New_Minute
End PropertyPublic Property Get Second() As Integer
Second = m_Second
End Property
Public Property Let Second(New_Second As Integer)
m_Second = New_Second
End PropertyPublic Function setup() As Integer
With MySystemTime
.wYear = Year
.wMonth = Month
.wDay = Day
'.wDayOfWeek = 1
.wMinute = Minute
.wHour = Hour
.wSecond = Second
'.wMilliseconds = 0
End With
setup = SetSystemTime(MySystemTime)
End Function
Private Declare Function SetSystemTime Lib "kernel32" (lpSystemTime As SystemTime) As Long
Private Type SystemTime
wYear As Integer
wMonth As Integer
wDayOfWeek As Integer
wDay As Integer
wHour As Integer
wMinute As Integer
wSecond As Integer
wMilliseconds As Integer
End TypePrivate MySystemTime As SystemTimePrivate m_Year As Integer
Private m_Month As Integer
Private m_Day As Integer
Private m_Hour As Integer
Private m_Minute As Integer
Private m_Second As IntegerPublic Property Get Year() As Integer
Year = m_Year
End Property
Public Property Let Year(New_Year As Integer)
m_Year = New_Year
End PropertyPublic Property Get Month() As Integer
Month = m_Month
End Property
Public Property Let Month(New_Month As Integer)
m_Month = New_Month
End PropertyPublic Property Get Day() As Integer
Day = m_Day
End Property
Public Property Let Day(New_Day As Integer)
m_Day = New_Day
End PropertyPublic Property Get Hour() As Integer
Hour = m_Hour
End Property
Public Property Let Hour(New_Hour As Integer)
m_Hour = New_Hour
End PropertyPublic Property Get Minute() As Integer
Minute = m_Minute
End Property
Public Property Let Minute(New_Minute As Integer)
m_Minute = New_Minute
End PropertyPublic Property Get Second() As Integer
Second = m_Second
End Property
Public Property Let Second(New_Second As Integer)
m_Second = New_Second
End PropertyPublic Function setup() As Integer
With MySystemTime
.wYear = Year
.wMonth = Month
.wDay = Day
'.wDayOfWeek = 1
.wMinute = Minute
.wHour = Hour
.wSecond = Second
'.wMilliseconds = 0
End With
setup = SetSystemTime(MySystemTime)
End Function
Dim dblReturn As Double
dblReturn = Shell("rundll32.exe shell32.dll,Control_RunDLL timedate.cpl", 5)