如何在Excel表格中插入日期,并自动更新?

如何在Excel表格中插入日期,并自动更新?,第1张

要使Excel表格中插入的时间自动更新,可以使用公式“=TODAY()"来实现。

1、打开需要 *** 作的Excel表格。

2、在表格中输入公式“=TODAY()"后按键盘上的回车键。

3、可以看到表格中已经出现当天的年/月/日了,次日打开表格时日期将变化为当天的日期。

4、如果要将时间具体到每分每秒,可以在表格中输入“=NOW()”。

5、可以看到时间变得更加具体了,再次打开表格时,时间将会随之变化。

1、首先需要确保Word的宏安全性设置至少为“中”(工具-宏-安全性-中)。\x0d\x0a2、在Word里面新建一个空白文档,给它随便取个名字(比如“我的日志”)保存一下——这个文档就是你以后日志文档的开端了!(注意,如果你用的是Word 2007的话,需要保存为启用宏的文档*.docm)\x0d\x0a3、键入ALT+F11打开VBA编辑窗口,键入CTRL+R激活左边的“工程 _ Project”面板;\x0d\x0a4、双击工程面板中的“Project (我的日志)\Microsoft Word 对象\ThisDocument”打开代码窗口;粘贴如下代码进去:\x0d\x0aOption Explicit\x0d\x0aDim oLogFileCreator As LogFileCreator\x0d\x0aPrivate Sub Document_Open()\x0d\x0aOn Error Resume Next \x0d\x0aSet oLogFileCreator = New LogFileCreator\x0d\x0aSet oLogFileCreator.WordApplication = Application\x0d\x0aEnd Sub\x0d\x0aPrivate Sub Document_Close()\x0d\x0aOn Error Resume Next\x0d\x0aSet oLogFileCreator.WordApplication = Nothing\x0d\x0aSet oLogFileCreator = Nothing\x0d\x0aEnd Sub\x0d\x0a5、选择菜单“插入-类模块”,然后在工程面板里双击这个刚生成的“Project (我的日志)\类模块\类1”,粘贴如下代码进去:\x0d\x0aOption Explicit\x0d\x0aPublic WithEvents WordApplication As Word.Application\x0d\x0a' 根据需要修改下面引号中的内容作为你日子文件的默认前缀\x0d\x0aPrivate Const c_strFileNamePrefix = "我的日志_"\x0d\x0a\x0d\x0aPrivate Sub WordApplication_DocumentBeforeSave(ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)\x0d\x0aOn Error Resume Next\x0d\x0aDim fso As Object\x0d\x0aDim strOldName As String, strNewName As String \x0d\x0aSet fso = CreateObject("Scripting.FileSystemObject") \x0d\x0astrOldName = ActiveDocument.FullName\x0d\x0astrNewName = fso.BuildPath(fso.GetParentFolderName(strOldName), Format(Now, c_strFileNamePrefix &"yyyy-mm-dd.") &fso.GetExtensionName(strOldName)) \x0d\x0aIf UCase(strNewName) UCase(strOldName) Then\x0d\x0aActiveDocument.SaveAs strNewName\x0d\x0afso.DeleteFile strOldName\x0d\x0aCancel = True\x0d\x0aEnd If \x0d\x0aSet fso = Nothing\x0d\x0aEnd Sub\x0d\x0a6、可以根据需要修改代码中的日志文件名前缀。默认的日志文件名是类似 “我的日志_2009-09-12”这样的形式。\x0d\x0a7、键入F4打开属性面板,在里面把“(名称)”从“类1”改为“LogFileCreator”。\x0d\x0a8、键入ALT+Q关闭VBA编辑窗口返回Word文档窗口,保存,关闭。\x0d\x0a9、再次重新打开这个文档,如果Word提示是否启用宏,选择启用。\x0d\x0a10、现在你的这个自动按日期保存的日志就可以正常运作了。每次你做完修改后,只要你一保存,它就会根据今天的日期自动把文档保存成类似这样的形式“我的日志_2009-09-12”(前缀“我的日志”可以在上面代码中修改)。

用VBA可以做到

右键工作表标签,选择查看代码

粘贴以下代码并保存

Private Sub Worksheet_Change(ByVal Target As Range)

'______说明↓___________________________________

'某列单元格发生变化

'若变化值不为空,对应列添加变化时间点日期时间

'若变化值为空,删除对应单元格数据

'示例为A列第2行发生变化,对应的B列添加或删除日期

'______说明↑___________________________________

Application.ScreenUpdating = False '关闭屏幕刷新

Dim cA, cB, startRG As String

Dim offsetc As Long

Dim rg As Range

'______设置参数↓_________________

cA = "A" '变化区域所在列

cB = "H" '日期生成列

startRG = "A2" '变化区域首单元格(防止改动表头触发事件)

'______设置参数↑_________________

offsetc = Columns(cB).Column - Columns(cA).Column

If Not Application.Intersect(Target, Columns(cA), Range(startRG, ActiveCell.SpecialCells(xlLastCell))) Is Nothing Then

    For Each rg In Intersect(Target, Columns(cA), Range(startRG, ActiveCell.SpecialCells(xlLastCell)))

        If rg <> "" Then

            With rg.Offset(0, offsetc)

                .Value = Now

                .NumberFormatLocal = "yyyy/m/d h:mm:ss@"

            End With

        Else

            rg.Offset(0, offsetc).Clear

        End If

    Next rg

End If

Application.ScreenUpdating = True '恢复屏幕刷新

End Sub

然后将工作簿另存为启用宏的工作簿(xlsm格式)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11772507.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存