Я новичок в программировании и изучаю основы VBA с помощью макрорекордера. Я работаю над небольшим проектом VBA и должен скопировать данные из столбца C, листа 2 и пол.H, лист 1, а затем вставить их как один столбец на листе 3, столбец A. Первая часть была простой. Я скопировал из Col C на листе 2 в столбик A на листе 3. Вторая часть копирует из Col.H на листе 1, а затем набирает следующую доступную строку на Col A на листе 3. Мой вопрос заключается в том, как получить мой макрос для вставки скопированных данных в следующую доступную строку на листе 3, Col A? Я пытаюсь отлаживать и похоже, что проблема заключается в выборе следующей пустой строки. Это не похоже на Cells.NextRow.Select - это правильный синтаксис, даже если определено NextRow. Вот мой код:Вставка следующей строки в другую таблицу
Sub Macro2()
' copy from Sheet2
Sheets("Sheet2").Select
Range("C7").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
' paste on Sheet3
Sheets("Sheet3").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
' copy from Sheet1
Sheets("Sheet1").Select
Range("H2").Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.Copy
' paste on Sheet3
Sheets("Sheet3").Select
NextRow = Cells(Rows.Count, 1).End(xlUp).Row + 1
**Cells.NextRow.Select**
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
FYI листы 1 и 2 имеют заголовки столбцов на строках 1 и 6, соответственно. Я не хочу, чтобы они были скопированы, поэтому я жестко закодировал исходную точку диапазона, который нужно скопировать. Моя переменная «NextRow», похоже, работает, когда я отлаживаю, но, похоже, проблема связана с фактическим выбором следующей доступной строки.
Если это сработает для вас. Примите зеленую галочку. – Chrismas007
Спасибо! Сейчас работает как шарм. Быстрый вопрос: почему я должен избегать использования .select? – MilesToGoBeforeISleep
@MilesToGoBeforeISleep См. Http://stackoverflow.com/questions/10714251/how-to-avoid-using-select-in-excel-vba-macros, поскольку это может привести к плохой ссылке при работе и фактически добавляет дополнительный код. – Chrismas007