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

Ale*_*exB 3 excel vba excel-vba

当电子表格打开时,如何在单元格中插入今天的日期,这样如果有人想要更改它,那么他们可以通过在单元格内更改它来完成.

我试过以下,但没有太多运气

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  
Run Code Online (Sandbox Code Playgroud)

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

感谢您的帮助

Mik*_*ike 6

对于在打开工作簿时运行的代码,您需要将代码放在Workbook表中,如下所示.

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

我相信这就是你要找的东西.

我测试了这个在工作表之间切换,它工作正常.

Private Sub Worksheet_Activate()

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

End Sub
Run Code Online (Sandbox Code Playgroud)

祝你好运,编码愉快!