Невозможно скопировать все данные в столбце на другой лист - Excel VBA - PullRequest
1 голос
/ 26 сентября 2019

Я не могу скопировать все данные в столбце.Я хотел бы только скопировать данные, которые не включают в себя первую строку (заголовки), и вставить его на другой лист.Мой текущий код дает мне частичный результат, поскольку между данными есть пробелы.

Пожалуйста, помогите мне, поскольку я новичок в VBA.Спасибо!

Ниже приведены два кода, которые я пробовал.Один из них - метод xldown, а другой - lastrow.Я обнаружил, что с помощью lastrow я даже не могу ничего копировать.

Это метод xldown, который дает мне частичные данные (wsRawT и wsDetI - мои определенныерабочие листы):

wsRawT.Select
    range("AI1").Select
    ActiveCell.Offset(1, 0).range("A1").Select
    range(Selection, Selection.End(xlDown)).Select
    Selection.copy

wsDetI.Select
    range("B1").Select
    ActiveCell.Offset(1, -1).range("B1").Select
    ActiveSheet.Paste

Это метод lastrow, который даже не позволяет мне ничего копировать:

    Dim lastRowTD As Long
    lastRowTD = wsRawT.Cells(Rows.Count, "A").End(xlUp).Row

    wsRawT.range("AU2" & lastRowRD).copy
    wsDetI.range("A2").PasteSpecial xlPasteValues
    wsDetS.range("A2").PasteSpecial xlPasteValues

1 Ответ

0 голосов
/ 26 сентября 2019

В вашем коде есть только небольшие ошибки, попробуйте это:

Dim lastRowTD As Long
lastRowTD = wsRawT.Cells(Rows.Count, "AU").End(xlUp).Row

wsRawT.Range("AU2:AU" & lastRowTD).Copy
wsDetI.Range("A2").PasteSpecial xlPasteValues

Объяснить: Этот код проверяет, насколько велик набор данных в столбце A вашего листа wsRawT.Затем он копирует все, начиная с ячейки A2 и заканчивая последней строкой с данными.Затем все значения вставляются в столбец A листа wsDetI.Если вам не нужны только конкретные значения, вы также можете использовать эту более простую версию .Copy:

wsRawT.Range("AU2:AU" & lastRowTD).Copy wsDetI.Range("A2")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...