Доброго дня, премодератор. прошу разместить новую тему. Название: Значение из ячейки в MsgBox по последней заполненной строке
Доброго дня, комрады!
Как заставить код искать последнюю заполненную ячейку не по столбцу "В" , а по массиву таблицы. Например (B2:P999) В приложенном примере в бокс должно попасть значение "25-007"
VBA знаю на уровне копипастера )) [vba]
Код
Sub КнопкаОкончание()
'Шаг 1: Объявляем переменные Dim LastRow As Long 'Шаг 2: Захват последнего использованного номера строки LastRow = Cells(Rows.Count, 2).End(xlUp).Row 'Шаг 3: Выбираем следующую строку вниз Cells(LastRow, 1).Offset(0, 0).Select 'Создаем месадж бокс MsgBox "ЗАПИСЬ В ЖУРНАЛЕ УСПЕШНО СОЗДАНА" & vbLf & " " & vbLf & "СКОРО БУДЕТ ОТОБРАЖАТЬСЯ НОМЕР НОВОЙ ЗАЯВКИ", vbInformation 'Шаг 4: Захват последнего использованного номера строки LastRow = Cells(Rows.Count, 2).End(xlUp).Row 'Шаг 5: Выбираем следующую строку вниз Cells(LastRow, 2).Offset(1, 0).Select End Sub
[/vba]
Доброго дня, премодератор. прошу разместить новую тему. Название: Значение из ячейки в MsgBox по последней заполненной строке
Доброго дня, комрады!
Как заставить код искать последнюю заполненную ячейку не по столбцу "В" , а по массиву таблицы. Например (B2:P999) В приложенном примере в бокс должно попасть значение "25-007"
VBA знаю на уровне копипастера )) [vba]
Код
Sub КнопкаОкончание()
'Шаг 1: Объявляем переменные Dim LastRow As Long 'Шаг 2: Захват последнего использованного номера строки LastRow = Cells(Rows.Count, 2).End(xlUp).Row 'Шаг 3: Выбираем следующую строку вниз Cells(LastRow, 1).Offset(0, 0).Select 'Создаем месадж бокс MsgBox "ЗАПИСЬ В ЖУРНАЛЕ УСПЕШНО СОЗДАНА" & vbLf & " " & vbLf & "СКОРО БУДЕТ ОТОБРАЖАТЬСЯ НОМЕР НОВОЙ ЗАЯВКИ", vbInformation 'Шаг 4: Захват последнего использованного номера строки LastRow = Cells(Rows.Count, 2).End(xlUp).Row 'Шаг 5: Выбираем следующую строку вниз Cells(LastRow, 2).Offset(1, 0).Select End Sub
Как заставить код искать последнюю заполненную ячейку не по столбцу "В" , а по массиву таблицы. Например (B2:P999)
[vba]
Код
Sub iMsgBox() Dim iLastRow As Long iLastRow = Range("B:P").Find("*", Range("B1"), xlValues, xlWhole, xlByRows, xlPrevious).Row MsgBox "ЗАПИСЬ В ЖУРНАЛЕ УСПЕШНО СОЗДАНА" & vbLf & Cells(iLastRow, "A") & vbLf & "СКОРО БУДЕТ ОТОБРАЖАТЬСЯ НОМЕР НОВОЙ ЗАЯВКИ", vbInformation End Sub
[/vba]
Цитата
Как заставить код искать последнюю заполненную ячейку не по столбцу "В" , а по массиву таблицы. Например (B2:P999)
[vba]
Код
Sub iMsgBox() Dim iLastRow As Long iLastRow = Range("B:P").Find("*", Range("B1"), xlValues, xlWhole, xlByRows, xlPrevious).Row MsgBox "ЗАПИСЬ В ЖУРНАЛЕ УСПЕШНО СОЗДАНА" & vbLf & Cells(iLastRow, "A") & vbLf & "СКОРО БУДЕТ ОТОБРАЖАТЬСЯ НОМЕР НОВОЙ ЗАЯВКИ", vbInformation End Sub
Sub Кнопка2() ActiveWorkbook.Save Dim LastRow As Long iLastRow = Range("B:D").Find("*", Range("B1"), xlValues, xlWhole, xlByRows, xlPrevious).Row MsgBox "ЗАПИСЬ В ЖУРНАЛЕ УСПЕШНО СОЗДАНА" & vbLf & vbLf & "НОМЕР НОВОЙ ЗАЯВКИ: " & Cells(iLastRow, "A"), vbInformation Cells(iLastRow, 2).Offset(1, 0).Select End Sub
[/vba]
Kuzmich, малость подправил твой код и вот что еще нужно: как изменить его, чтобы после выполнения в первой колонке то есть в "А" той строки на которую встала активная ячейка, значение увеличилось на +1 от значения в "А" строки выше. То есть например: после выполнения макроса выделена ячейка В647, значит нужно что бы в А647 было А646+1
[vba]
Код
Sub Кнопка2() ActiveWorkbook.Save Dim LastRow As Long iLastRow = Range("B:D").Find("*", Range("B1"), xlValues, xlWhole, xlByRows, xlPrevious).Row MsgBox "ЗАПИСЬ В ЖУРНАЛЕ УСПЕШНО СОЗДАНА" & vbLf & vbLf & "НОМЕР НОВОЙ ЗАЯВКИ: " & Cells(iLastRow, "A"), vbInformation Cells(iLastRow, 2).Offset(1, 0).Select End Sub
[/vba]
Kuzmich, малость подправил твой код и вот что еще нужно: как изменить его, чтобы после выполнения в первой колонке то есть в "А" той строки на которую встала активная ячейка, значение увеличилось на +1 от значения в "А" строки выше. То есть например: после выполнения макроса выделена ячейка В647, значит нужно что бы в А647 было А646+1Литр