一、16进制D2A3表示的时间为什么是7点15分40秒?怎么算的?
先转换为10进制数,53923。秒数为53923 mod 60=43,temp=(53923-43)/60=898。分针数为898 mod 60=58,temp=(898-58)/60=14。时针数为14 mod 24=14 temp=14-14=0。
二、excel2003中存在宏,如何使单元格中公式成立?
假如你不行第2列变成值 你想第2列保留公式 如果第2列不影响计算的话 你就if target.column<>2 then
三、excel2003 VBA“if”如何避免死循环
Private Sub Worksheet_Change(ByVal Target As Range)
If Target > 24 And Target <= 47 Then Target.Font.ColorIndex = [b1]
If Target > 48 And Target <= 71 Then Target.Font.ColorIndex = [c1]
If Target > 72 And Target <= 96 Then Target.Font.ColorIndex = [d1]
If Target > 24 Then
Application.EnableEvents = False
Target = Target Mod 24
Application.EnableEvents = True
End If
End Sub
四、我简单的VB遍个小程序
答案在这里,你好好试试
窗体上加入一个文本框控件TEXT1即可
Option Explicit
Dim inputSecs As Long, Secs As Long, Days As Long, Hours As Long, Mins As Long
Private Sub Text1_Change()
On Error GoTo DebugErr '防错处理
If Not IsNumeric(Text1.Text) Then '只能输入数字
Me.Caption = 请输入数字
Text1.Text =
Exit Sub
End If
inputSecs = CLng(Text1.Text) '输入有多少秒
Secs = inputSecs Mod 60 '秒
Mins = (inputSecs - (inputSecs Mod 60)) / 60
Hours = (Mins - (Mins Mod 60)) / 60
Mins = Mins - Hours * 60 '分钟
Days = (Hours - (Hours Mod 24)) / 24 '日
Hours = Hours - Days * 24 '小时
Me.Caption = Days & 日 & Hours & 小时 & Mins & 分钟 & Secs & 秒 '答案
DebugErr:
If Err.Number = 6 Then
Me.Caption = 输入的数字太大!
Text1.Text =
End If
End Sub