我在单元格内有一个用hh:mm:ss格式的列,还有一个yyyy-mm-dd。它们看起来是这样的:
1970-01-01 00:01:25我希望它看起来像这个格式的文本:
00:01:25如果我手动使用文本到列来删除yyyy,并且只将00:01:25部件导入为文本,它就能正常工作。
但是,如果我创建了一个宏来完成相同的操作,我的结果是:
:01:25 AM我的宏如下所示:
Columns("D:D").Select
Selection.TextToColumns Destination:=Range("D1"), DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 9), Array(12, 2)), TrailingMinusNumbers:=True谢谢大家,我现在通过使用以下代码(我从另一个委员会得到帮助)使它工作起来:
Sub m()
With Range("D2:D" & Range("D" & Rows.Count).End(xlUp).Row)
.NumberFormat = "@"
.Cells = Evaluate("=INDEX(TEXT(" & .Address & ",""HH:MM:SS""),0)")
End With
End Sub发布于 2015-03-23 07:47:20
它可以使用excel公式Text(text;format)查看图片和公式栏。

也可以将自定义文本格式应用于原始列。

或者您需要在VBA中使用来完成这个任务?
编辑。使用VBA的解决方案
Range("D:D").NumberFormat = "hh:mm:ss"
https://stackoverflow.com/questions/29204373
复制相似问题