Здравствуйте! Снова требуется Ваша помощь. В общем необходимо копировать данные ячейки в последнюю свободную ячекйу строки.
Вот, что у меня есть.
[vba]
Код
Sub mCopyData() Dim mRng As Range Set mRng = Range([C1], [C1]) ' If Application.CountA(mRng) = 0 Then MsgBox "Внесите данные" Exit Sub Else
mRng.Copy Sheets("Лист1"). _ Cells(5, Columns.Count) _ .End(xlToRight).Offset(1) End If End Sub
[/vba]
Но данные переносятся не в последнюю свободную ячейку строки, а вообще в последнюю ячейку листа - в самый самый конец. Не могу понять, как этого избежать. Спасибо!
Здравствуйте! Снова требуется Ваша помощь. В общем необходимо копировать данные ячейки в последнюю свободную ячекйу строки.
Вот, что у меня есть.
[vba]
Код
Sub mCopyData() Dim mRng As Range Set mRng = Range([C1], [C1]) ' If Application.CountA(mRng) = 0 Then MsgBox "Внесите данные" Exit Sub Else
mRng.Copy Sheets("Лист1"). _ Cells(5, Columns.Count) _ .End(xlToRight).Offset(1) End If End Sub
[/vba]
Но данные переносятся не в последнюю свободную ячейку строки, а вообще в последнюю ячейку листа - в самый самый конец. Не могу понять, как этого избежать. Спасибо!puz27
Sub mCopyData() Dim mRng As Range lLastCol = Cells(5, Columns.Count).End(xlToLeft).Column Set mRng = Range([C1], [C1]) ' If Application.CountA(mRng) = 0 Then MsgBox "Внесите данные" Exit Sub Else
mRng.Copy Sheets("Лист1"). _ Cells(5, lLastCol ) .Offset(1) End If End Sub
[/vba]
может так? только не в том разделе этот вопрос по VBA
Sub mCopyData() Dim mRng As Range lLastCol = Cells(5, Columns.Count).End(xlToLeft).Column Set mRng = Range([C1], [C1]) ' If Application.CountA(mRng) = 0 Then MsgBox "Внесите данные" Exit Sub Else
mRng.Copy Sheets("Лист1"). _ Cells(5, lLastCol ) .Offset(1) End If End Sub
[/vba]
может так? только не в том разделе этот вопрос по VBAK-SerJC
Sub Copy_To_Last_Cell() Range("C1").Copy Cells(1, Columns.Count).End(xlUp).Offset(1) End Sub
[/vba]
То данные заносятся в самую последнюю ячейку 1 строки. В самый, край а мне надо, в последнюю свободную ячейку строки. Просто странно, что для столбцов это работает, а если переделать для строк- то нет.
То есть допустим, если упростить вообще.
[vba]
Код
Sub Copy_To_Last_Cell() Range("C1").Copy Cells(1, Columns.Count).End(xlUp).Offset(1) End Sub
[/vba]
То данные заносятся в самую последнюю ячейку 1 строки. В самый, край а мне надо, в последнюю свободную ячейку строки. Просто странно, что для столбцов это работает, а если переделать для строк- то нет.puz27