首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >创建时在Excel模板中插入当前日期

创建时在Excel模板中插入当前日期
EN

Stack Overflow用户
提问于 2008-09-02 20:56:13
回答 3查看 6.1K关注 0票数 3

我在这里为一个用户创建了一个excel模板(*.xlt),我想做的一件事就是让它在创建新文档时插入当前日期(即,当他们在windows资源管理器中双击文件时)。我该怎么做呢?

vba更新:我应该补充说我不希望使用任何vba(宏)。如果这是唯一的选择,那就这样吧,但我真的不想强迫我的用户去点击某个“允许宏内容”按钮。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2008-09-02 22:06:17

您可以使用工作表函数= date (),但很明显,每当重新计算工作簿时,它都会更新为当前日期。

我能想到的唯一其他方法就是,正如1729所说的,编写Workbook_Open事件:

Private Sub Workbook_Open()
    ThisWorkbook.Worksheets("Sheet1").Range("A1").Value = Date
End Sub

通过对模板进行数字签名(在VBA IDE工具|数字签名...),可以减少每次都需要用户接受宏的问题。并选择数字证书,但是,您需要从商业证书颁发机构获得证书(请参阅http://msdn.microsoft.com/en-us/library/ms995347.aspx)。用户将需要在第一次运行模板时选择始终信任此证书,但此后将不再提示他们。

票数 4
EN

Stack Overflow用户

发布于 2008-09-02 21:07:51

您可以编辑excel的默认模板-

XLSTART目录中有一个名为Book.xlt的文件,通常位于C:\Program Files\Microsoft Office\Office\XLStart\

您应该能够添加一个名为Workbook_Open的宏

Private Sub Workbook_Open()
    If ActiveWorkBook.Sheets(1).Range("A1") = "" Then
        ActiveWorkBook.Sheets(1).Range("A1") = Now
    End If
End Sub

我的VBA有点生疏了,但是你可能会发现像这样的东西可以工作。

票数 2
EN

Stack Overflow用户

发布于 2008-09-04 07:31:58

为了避免使用VBA,并且如果您认为您的用户可能会遵循说明,您可以要求他们复制日期,然后粘贴特殊->值来设置日期,使其在将来不会更改。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40637

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档