运行-时间错误1004手写后消失

Run-time error 1004 dissapear after hand writing

我有一个宏可以用值填充一些单元格。然后我有一个宏来选择这些值并使一些工作表起作用。如果我单元格BUNKA_issue_om_date手写填写,宏运行良好。但是,如果我使用第一部分将日期写入该单元格,则宏会在工作表函数 Weekday.

上崩溃并显示 1004

第一部分:

Sub SKRIPT_issue_om_f1()
Range("BUNKA_issue_om_date").Value = Format$(Now, "dd.mm.yyyy")
Range("BUNKA_issue_om_time").Value = Format$(Now, "h:mm")
Range("BUNKA_issue_om_filtr").Value = "F1"
End Sub

第二部分:

    Sub SKRIPT_issue_om_save()

    PROM_issue_om_date = Range("BUNKA_issue_om_date")
    PROM_issue_om_time = Range("BUNKA_issue_om_time")
    PROM_issue_om_filtr = Range("BUNKA_issue_om_filtr")

    PROM_Day = WorksheetFunction.Weekday(Range("BUNKA_issue_om_date"), vbMonday)
...

格式函数生成的是字符串而不是日期。您需要将该字符串转换为第二部分中的日期,或者在第一部分中输入数据作为日期。所以要么

 With Range("BUNKA_issue_om_date")
       .Value = NOW()
       'NumberFormat = "DD.MM.YYYY"
 End With

   PROM_issue_om_date = CDate(Range("BUNKA_issue_om_date"))