专栏名称: 完美Excel
Excel与VBA技术学习与实践
今天看啥  ›  专栏  ›  完美Excel

VBA程序:将时间转化成小时分秒并以上标格式显示

完美Excel  · 公众号  · Excel  · 2024-07-19 05:07
    

主要观点总结

本文介绍了一个VBA程序,该程序能将显示的时间转换成小时、分、秒,并在相应的数字后以上标格式显示时、分、秒。程序通过遍历所选单元格区域,将满足条件的单元格值进行格式化,并放置在其左侧相邻单元格中。

关键观点总结

关键观点1: 程序功能

将显示的时间转换成小时、分、秒,并在相应数字后以上标格式显示时、分、秒。

关键观点2: 程序实现

通过VBA代码实现,遍历所选单元格区域,对满足条件的单元格值进行格式化,并放置在其左侧相邻单元格中。

关键观点3: 格式化方式

使用InStr函数定位时间组成部分,使用Characters属性获取字符,设置Superscript属性为True,实现上标格式。

关键观点4: 其他信息

文章整理自vbaexpress.com,提供技术交流和获取更多电子资料的渠道,欢迎留言完善内容,并通过社群进行交流。


文章预览

学习Excel技术,关注微信公众号: excelperfect 标签: VBA 这段程序来自于一个问题:如何将显示的时间转换成小时、分、秒并在相应的数字后以上标格式显示时、分、秒?如下图 1 所示。 图 1 实现此效果的 VBA 程序代码如下: Sub FormatTime() Dim r As Range, r1 As Range Dim i As Long Dim s As String  If Not TypeOf Selection Is Range Then Exit Sub For Each r In Selection.Cells With r If Len (.Value) > 0 Then If IsNumeric(.Value) Then Set r1 = .Offset( 0 , 1 ) r1.Font.Superscript = False          r1.Value =  Format (.Value, "h""h""mm""m""ss""s""" )          i =  InStr (r1.Value, "h" )          r1.Characters( Start :=i, Length := 1 ).Font.Superscript =  True          i =  InStr (r1.Value, "m" )          r1.Characters( Start :=i, Length := 1 ).Font.Superscript =  True          i =  InStr (r1 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览