Я использую формулу для автоматического заполнения даты, как только что-то будет введено в следующем столбце.
=If(B9="","",IF(A9="",NOW(),B9))
После этого я применил формулу к ячейкам до строки 48. Теперь при вводе в исходном коде (скриншот для ссылки) дата заполняется автоматически. Работает как шарм, все хорошо.
Разработана пользовательская форма для ввода данных за вычетом даты, поскольку используется формула выше. Должно работать, но это не так. Дата приходит как 1/1/1900
. Немного отсталая от века +18 лет, ничего страшного, лол.
Код, который вы видите на скриншотах, которые я использовал для ввода данных. Первоначально я сделал лист до 48 рядов. Поскольку при использовании пользовательской формы данные вводятся «только» после строки 48, таблица продолжает расширяться, включаться и выключаться. Я удалял строки после 48 раз так много раз, что это уже не смешно.
Теперь код VBA отключен или является неполным, что делает все это забавным. Как я могу это исправить?
P.S. Использование Excel 2016
Код кнопки «Добавить данные» в форме. Для этого данные не начинают заполняться из строки 9 столбца B. Они начинаются после строки 48.
Private Sub CommandButton1_Click()
Dim dcc As Long
Dim abc As Worksheet
Set abc = Worksheets("January2019")
dcc = Sheets("January2019").Range("A" & Rows.Count).End(xlUp).Row
With abc
.Cells(dcc + 1, 2).Value = Me.TextBox1.Value
.Cells(dcc + 1, 3).Value = Me.TextBox2.Value
.Cells(dcc + 1, 4).Value = Me.TextBox3.Value
.Cells(dcc + 1, 5).Value = Me.TextBox4.Value
.Cells(dcc + 1, 6).Value = Me.TextBox5.Value
End With
Код даты.
=If(B9="","",IF(A9="",NOW(),B9))
Дата работает автоматически, если вводить данные вручную, но при использовании пользовательской формы дата вводится как 01.01.1900 и, как указано выше, ввод производится после строки 48.
С этим кодом и пользовательской формой я надеюсь / стремлюсь:
В пользовательской форме нет опции для даты. Я добавил формулу даты в строку 9, а затем перетащил ее в строку 48. Сделал пользовательскую форму минус поле даты, потому что как только данные будут введены, дата будет заполняться автоматически. И данные начинают заполняться с первой доступной строки, которая является B9. Так что теперь я заблудился, потому что я не знаю, где ошибка или что происходит, что делает это добавление в случайных строках и с датой, которая уже не работает.