vba - 打开电子表格时用当前日期填充单元格 VBA

标签 vba excel

如何在电子表格打开时在单元格中插入今天的日期,以便如果有人想要更改它,他们可以通过在单元格内直接更改来实现。

我尝试了以下方法,但运气不佳

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim temp As String

    If Home.Range("_invoiceDate").Value = "" Then
        Home.Range("_invoiceDate").Value = Date
    End If
End Sub  

单元格是命名范围“_invoiceDate”,工作表是“Home”

感谢您提前提供的帮助

最佳答案

为了让代码在打开工作簿时运行,您需要将代码放置在工作簿工作表中,如下所示。

Private Sub Workbook_Open()
    dim Home as Worksheet
    set Home = Worksheets("Home")
    Home.Range("_invoiceDate").Value = Format(Now(),"mm/dd/yyyy")  
End Sub

我相信这就是您正在寻找的。

我测试了它在工作表之间的切换,效果很好。

Private Sub Worksheet_Activate()

Dim Home As Worksheet
Set Home = Worksheets("Home")
Home.Range("_invoiceDate").Value = Format(Now(), "mm/dd/yyyy")

End Sub

祝你好运,编码愉快!

关于vba - 打开电子表格时用当前日期填充单元格 VBA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22270521/

相关文章:

excel - 如何通过 VBA 使用我的 powerpoint 模板来构建我想要的幻灯片?

excel - 将 Excel PDF 工作表保存在与我的 Excel 文件相同的目录中

mysql - Excel Vba 从 mysql 数据库中删除行时出现问题

vba - 我希望我的公式跟随目标单元格

excel - 增加包含数字和文本 VBA 的单元格值

sql-server - 通过 ADO 检索存储过程输出参数

excel - 有没有更有效的方法来执行这个公共(public)子公式?

python - Pandas.read_csv 将所有文件读取到一列中

我可以用 Excel12 交换 Excel4 吗?

r - 使用 openxlsx 包的工作表链接问题