Ошибка выполнения 1004 исчезает после написания руки - PullRequest
0 голосов
/ 22 января 2019

У меня есть макрос, чтобы заполнить некоторые ячейки значениями. Затем у меня есть макрос для выбора этих значений и сделать некоторые функции листа. Если я заполните BUNKA_issue_om_date заполнением от руки, макрос работает хорошо. Но если я использую первую часть для записи даты в эту ячейку, макрос завершается с кодом 1004 в функции листа Weekday.

Первая часть:

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)
...

1 Ответ

0 голосов
/ 22 января 2019

Функция форматирования создает строку, а не дату.Вам необходимо либо преобразовать эту строку в дату во второй части, либо ввести данные в виде даты в первой части.Так что либо

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

ИЛИ

   PROM_issue_om_date = CDate(Range("BUNKA_issue_om_date"))
...