如何在 Excel 中自动将日期和小时保存为文本?

如何在 Excel 中自动将日期和小时保存为文本?

我想获取上次更改另一个单元格的时间(即在单元格中输入了值或修改了值)。

我知道有获取当前时间的快捷方式:

  • CTRL+; 插入当前日期。
  • CTRL+ Shift+. 插入当前时间。

这个问题的目的是想知道你们是否知道如何有效地自动化这个过程,这样我就可以避免每次我想在单元格中保存当前时间时浪费时间按下 5 个键。

我正在制作一个新英语单词列表,所以我想在单元格中保存修改单元格的时间。在以下链接中,您可以看到我的列表的图片以及我如何使用快捷方式存储时间的一些示例:

工作表

我非常感谢您提供的任何帮助。

编辑1:快捷方式(用于插入当前时间)已修复。

答案1

从你的图片中,我假设每当在列中输入或修改一个单词时A,日期应出现在列中以及列中的时间C

在工作表代码区域安装以下事件宏:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim A As Range

    Set A = Range("A2:A" & Rows.Count)

    If Intersect(A, Target) Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    Application.EnableEvents = False
        Target.Offset(0, 1) = Date
        Target.Offset(0, 2) = Time
    Application.EnableEvents = True
End Sub

因为它是工作表代码,所以很容易安装并自动使用:

  1. 右键单击 Excel 窗口底部附近的选项卡名称
  2. 选择查看代码-这将打开一个 VBE 窗口
  3. 粘贴内容并关闭 VBE 窗口

如果您有任何疑虑,请首先在试用工作表上尝试一下。

如果您保存工作簿,宏将随之保存。如果您使用的是 2003 以后的 Excel 版本,则必须将文件保存为 .xlsm 而不是 .xlsx

消除宏:

  1. 调出如上所示的 VBE 窗口
  2. 清除代码
  3. 关闭 VBE 窗口

要了解有关宏的更多信息,请参阅:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

要了解有关事件宏(工作表代码)的更多信息,请参阅:

http://www.mvps.org/dmcritchie/excel/event.htm

必须启用宏才能使其工作!

相关内容