Копировать определенные столбцы на другой лист - PullRequest
0 голосов
/ 15 мая 2019

У меня есть главная таблица с 7 столбцами, кодовое имя «ShNote», я хочу запустить код, который находит значение 20 в последнем столбце («I»). После этого он автоматически скопирует имя клиента (столбец D) и его значения (в зависимости от условия должно быть равно 20) в столбец I. Я ожидаю, что макрос скопирует эти данные и вставит их на другой лист, кодовое имя ShPPT, в столбец C & D, начальная строка = 6.

Обычно у меня 4 клиента, поэтому он скопировал только 1 клиента Можете ли вы помочь мне присмотреть за кодом, пожалуйста?

Я читаю в некоторых блогах, что вы можете использовать массив для оптимизации вашего кода, чтобы стать эффективными

P.s: это только начало моего кода, в столбце I, я ищу этот диапазон значений 1. 20 2. 17-20 3. 15 - 17 4. 11 - 15 5. <11 </p>

Каждый раз, когда запускается мой макрос, он автоматически копирует имя клиента и соответствующие ему значения.

Sub NoteLog()

'1. Copy the client's name and its note ranked by 4 particular conditions (20;17-20;15-17;11-15;<11)

Dim finalrow As Long, c As Long, i As Long, rowppt As Long, colppt As Long

finalrow = ShNote.Range("I" & Rows.Count).End(xlUp).Row
rowppt = ShPPT.Cells(Rows.Count, 1).End(xlUp).Row
colppt = ShPPT.Cells(Rows.Count, 1).End(xlUp).Row

For c = 6 To finalrow
    If ShNote.Range("I" & c).Value = 20 Then
    ShNote.Range("D" & c).Copy
    ShPPT.Cells(rowppt + 6, 3).PasteSpecial xlPasteValues
    ShNote.Range("I" & c).Copy
    ShPPT.Cells(colppt + 6, 4).PasteSpecial xlPasteValues
    End If
Next c
  rowppt = rowppt + 1
  colppt = colppt + 1

End Sub

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...