Страницы: 1
RSS
Вставить определенное количество строк
 
Здравствуйте!
Помогите пожалуйста вставить определенное количество пустых строк под каждое наименование материала.
В столбце "А" например "Карандаш" в столбце "В" количество "5", значить под строку с "Карандашом" надо добавить 4 строки, чтобы в общим было 5 строк вместе с первым "Карандашом" .
 
Цитата
Kedr Iohan написал:
в столбце "В" количество "5", значить под строку с "Карандашом" надо добавить 4 строки, чтобы в общим было 5 строк вместе с первым "Карандашом"
А как быть с единицей? Я про "бумагу".
 
не добавлять строки, оставить ее одну
 
Тогда такой вариант:
Код
Sub Macro1()
Dim LastRow As Long, i As Long
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    For i = LastRow To 3 Step -1
        If Cells(i, 2) > 1 Then Rows(i + 1).Resize(Cells(i, 2) - 1).Insert
    Next
End Sub
 
Спасибо Большое!
 
Можно и без цитаты - зачем она тут?
А скажите мне - зачем вообще ставить единичку, если строки добавлять не нужно?
 
Да вы правы единичку можно не ставить.
Я тут столкнулась с проблемкой. Например для "Карандаша" нужно в общем 5 строк добавить, но изначально уже есть 2 строки "Карандаша", значит надо добавить еще 3 строки а не 4. Можно этот момент доработать?
 
Kedr Iohan, доработал код Юрия
Код
Sub Macro1()
Dim LastRow As Long, i As Long, k As Long
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    For i = LastRow To 3 Step -1
      k = Cells(i, 2) - WorksheetFunction.CountIf(Columns(1), Cells(i, 1))
      If k > 0 Then
        Rows(i + 1).Resize(k).Insert
        Cells(i + 1, 1).Resize(k).Value = Cells(i, 1) 'заполнение первого столбца - удалите строку, если не надо
      End If
    Next
End Sub
 
Казанский, красивое решение Я бы делал цикл для подсчёта, а так бы не додумался. Спасибо.
Не стреляйте в тапера - он играет как может.
Страницы: 1
Наверх