如何在 vba 中设置时间格式(附示例)


您可以使用 VBA 中的Format函数和以下参数以特定方式格式化 Excel 中的时间:

  • h :不带零的小时
  • hh :带零的小时
  • n :不带零的分钟
  • nn :带零的分钟
  • s :不带零的秒
  • ss :带零的秒
  • AM/PM :上午/下午显示

以下示例展示了如何在实践中使用 VBA 设置时间格式。

示例:使用 VBA 设置时间格式

假设 Excel 中有以下日期/时间列:

我们可以创建以下宏来专门格式化 A 列中的时间,并在 B 至 E 列中显示格式化的时间:

 SubFormatTime ()

Dim i As Integer

For i = 2 To 8
  Range(" B " & i) = Format(Range(" A " & i), " h ")
  Range(" C " & i) = Format(Range(" A " & i), " h:nn ")
  Range(" D " & i) = Format(Range(" A " & i), " h:nn:ss ")
  Range(" E " & i) = Format(Range(" A " & i), " h:nn:ss AM/PM ")
Next i

End Sub

当我们运行这个宏时,我们会收到以下输出:

现在,B 至 E 列每次都会以特定方式显示在 A 列中。

请注意,您还可以使用Short TimeMedium TimeLong Time快捷方式格式:

 SubFormatTime ()

Dim i As Integer

For i = 2 To 8
  Range(" B " & i) = Format(Range(" A " & i), " Short Time ")
  Range(" C " & i) = Format(Range(" A " & i), " Medium Time ")
  Range(" D " & i) = Format(Range(" A " & i), " Long Time ")
Next i

End Sub

当我们运行这个宏时,我们会收到以下输出:

现在,B 至 D 列每次都会以特定方式显示在 A 列中。

其他资源

以下教程说明如何在 VBA 中执行其他常见任务:

VBA:如何使用 mm/dd/yyyy 作为日期格式
VBA:如何将单元格格式设置为百分比
VBA:如何对单元格应用条件格式

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注