Простой макрос l oop в Excel - PullRequest
0 голосов
/ 22 января 2020

У меня следующая проблема:

enter image description here

Позвольте мне попытаться объяснить это. По сути, я просто хочу изменить свои данные. Я хочу подключить значения в столбцах G, H, I и J.

здесь и далее я хочу выделить каждую строку в таблице G: I для коэффициента в J. Я надеюсь, что это имеет смысл, когда вы видите рисунок.

Я создал этот код:

Sub order()
    Dim sht As Worksheet
    Dim LR_G
    Dim LR_H
    Dim LR_I
    Dim LR_J

    Set sht = ActiveSheet

    'Delete Range(A2:D)
    Range("A2:D" & sht.Cells(sht.Rows.Count, "A").End(xlUp).Row).Clear

    'Arange Order
    LR_G = sht.Cells(sht.Rows.Count, "G").End(xlUp).Row
    LR_H = sht.Cells(sht.Rows.Count, "H").End(xlUp).Row
    LR_I = sht.Cells(sht.Rows.Count, "I").End(xlUp).Row
    LR_J = sht.Cells(sht.Rows.Count, "J").End(xlUp).Row

    Set DatarangeG = Range("G1:G" & LR_G)

      For J = 0 To LR_J - 2

        For i = 2 To LR_G

        Cells(i + J * (LR_G - 1), 1).Value = Cells(i, 7).Value
        Cells(i + J * (LR_G - 1), 3).Value = Cells(i, 8).Value
        Cells(i + J * (LR_G - 1), 4).Value = Cells(i, 9).Value
        Cells(i + J * (LR_G - 1), 2).Value = Cells(J + 2, 10).Value

        Next i

     Next J


End Sub

Код работает немного медленно, когда я достигаю 20-30 строк в столбцах G, H, I и J, но он работает для Первый раздел

Моя проблема в том, что код, когда он достигнет ID4 в столбце G, будет распределять его по фактору 1, и работа будет проходить по всем факторам. Я хочу, чтобы он игнорировал более ранние факты, когда у нас есть место. Поэтому здесь я хочу, чтобы ID4 начался с фактора 4.

Я понятия не имею, как это реализовать. Есть идеи?

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