如何将单元格范围内的所有日期/时间“批量转换”为字符串?

如何将单元格范围内的所有日期/时间“批量转换”为字符串?

笔记: 这个问题类似,但我对更具可扩展性的解决方案感兴趣。因此标题中有“批量转换”。此外,我最初将这个问题发布到 StackOverflow,但后来我意识到我特别对不需要 VBA 编程的解决方案感兴趣,所以我按照给出的建议将问题移交给了 SuperUser这里

将 Excel 电子表格的所有“日期时间单元格”转换为相应的字符串值的“侵入性最小”方法是什么?

我所说的“日期时间单元格”是指其内容实际上是浮点数,但其格式使其显示为日期时间字符串。

所谓“侵入性最小”是指只需要对电子表格进行最少修改的方法。(具体来说,我希望避免或至少尽量减少所需的剪切和粘贴操作。)

理想的方法是只需要选择要转换为字符串的日期时间单元格,并“就地”应用所需的转换。我寻找过类似的方法,但没有成功。

我将提交迄今为止我发现的针对该问题的最佳解决方案(参见下面的答案),但我发现该解决方案极其麻烦且容易出错,并且希望了解一种更安全、更经济的方法来实现相同的结果。

答案1

(注:我是完全的笨蛋使用 Excel。我相信有更简单的方法可以完成下面描述的操作。我发布此解决方案是希望真正了解 Excel 的人能发布更好的解决方案。)

到目前为止我发现的最佳解决方案(基于这个答案) 如下。假设要转换的单元格在范围内A1:100,并且假设列X未被使用。在单元格中输入以下公式X1

=TEXT(A1, "DD/MM/YYYY hh:mm:ss")

(当然,修改日期时间格式以满足您的需要。)

然后,将此公式“拖拽复制”到范围内的所有单元格X2:100。接下来,复制范围,并使用带有选项的命令X1:100将其粘贴到范围内。A1:100Paste Special...Values

最后,Clear > All范围X1:100

相关内容