
Nuavvov
6 год назад
VBA. Нужно ввести данные с помощью формы, которая вызывается на листе1, в таблицу на другой лист (лист2).
Проблема возникла при попытки определить последнюю заполненную ячейку на листе2. У меня получилось определить на активном листе. Нужна помощь. Вот код:

ОТВЕТЫ

Kiazhvigb
Aug 9, 2019
Если форму разметить на лист1, а базу на лист2, то макрос:
Sub vvod()
Sheets("База").Select
Sheets("База").Activate
With ActiveSheet
КонецСписок = .Range("B65536").End(xlUp).Row определяем № последней заполненой строки по столбцу B
.Cells(КонецСписок + 1, 1) = КонецСписок пишем в базу № записи
Sheets("Форма").Cells(4, 1) = КонецСписок пишем в форму № записи
.Cells(КонецСписок + 1, 2) = Sheets("Форма").Cells(4, 2) пишем в базу наименование
.Cells(КонецСписок + 1, 3) = Sheets("Форма").Cells(4, 3) пишем в базу количество
.Cells(КонецСписок + 1, 4) = Sheets("Форма").Cells(4, 4) пишем в базу цену
End With
Sheets("Форма").Select возврат в форму
Sheets("Форма").Activate
End Sub
195
Смежные вопросы: