Страницы: 1
RSS
Макрос для добавления строк n-количество раз, Заготовленные строки с группировками и форматированием
 
Добрый день всем, кто уделил время на мою тему!

Есть определенная необходимость автоматизировать один процесс, суть и внешний вид во вложенном в тему файле.

Есть таблица (лист 1 в файле) в которой используется построчная группировка. Группировки двух уровней, общая группировка для одного наименования на группы 5-ти частей, и каждая часть ещё сгруппирована отдельно. Строки обозначающие группировки имеют оформление, оно важно.

Необходим макрос который бы мог путем копирования строк относящиеся к группировкам, вставлять их в таблицу n-ое количество раз (т.е. можно в выполняемом макросе каждый раз указывать сколько нужно добавлений), при этом сохранить так же группировку и получить в итоге результат в виде таблицы (лист 2 в файле). Т.к. порой таких добавлений может быть то 100 и вся по себе таблица имеет более сложный вид, необходим подходящий макрос.

P.S. была мысль создать лист с заготовкой такой группировки из которого макрос бы копировал эти строки. Но что и как это на vba может быть воплощенно, не получается представить. Макрорекордеры не помогают,т.к всегда окончание одной позиции с группировками и её последней строкой дело переменное и должно каким-то образом перед вставкой определяться.

Буду благодарен любым советам и подсказкам!

Всем спасибо!
Изменено: sergey_sasin - 18.01.2018 14:02:51
 
Попробуйте так..
Скрытый текст
Изменено: Маугли - 19.01.2018 11:43:19
 
Маугли, отлично подходит! Вот, что значит специалист, сложная вещь, была описана в несколько строк, Спасибо!

Обновление!
После проверки на рабочей таблице, возникла проблема, но она не связанна с работой вашего макроса, а другого.
Я забыл что у меня на лист установлены "следящие макросы" (worksheet_change), которые следят за изменением в строках и вносят в отдельную ячейку время последнего редактирования и копирует формулы из вышестоящей строки. Они, по видимому, реагируют на то, что появляются новые строки и начинают заносить время изменения в свою ячейку и всё переходит в новую проблему.
А ещё диапазон начиная от шапки таблицы защищен паролем. Соответственно он делает вид что работает, вызывают работу следящих макросов, но добавления не происходит.

Есть ли возможность, добавить команду отключения определенных макросов при выполнении либо как можно сослаться на макрос на листе
Изменено: sergey_sasin - 19.01.2018 11:28:19
 
Приведите примеры ваших макросов и реальную структуру в файле. Впереди выходные-народ порешает )
 
Маугли, переношу макросы, чтобы выложить в файле, и возникла ошибка (Method "Range" of object "_worksheet" failed), которая в искомой таблице не появлялась, подскажите, почему он ругается?
Код
'Добавление времени изменения
Sub Worksheet_Change(ByVal Target As Range)
For Each cell In Target
       If Not Intersect(cell, Range("С2:С1048576")) Is Nothing Then '-ошибка определяется на этой строке
        If cell.Value = "" Then Call b_addlineseek
            With cell.Offset(0, -1)
               .Value = Now
            End With
       End If
    Next cell
End Sub
 
У вас русская С. Просьба обращайтесь к форуму , так Вы получите помощь быстрее

Код
Sub Worksheet_Change(ByVal Target As Range)
    For Each cell In Target
        If Not Intersect(cell, Range("C2:C1048576")) Is Nothing Then
            If cell.Value = "" Then Call b_addlineseek
            With cell.Offset(0, -1)
                .Value = Now
            End With
        End If
    Next cell
End Sub
 
Цитата
Маугли написал:
Приведите примеры ваших макросов и реальную структуру в файле. Впереди выходные-народ порешает )
Спасибо за помощь!
Файл с макросами, которые отслеживают изменение вложил.
Существует ли вообще команда на остановку выполнения другого макроса?
 
Не могу понять, зачем эти навороты, диалоги. отступы, пароли
Изменено: Маугли - 20.01.2018 07:49:21
 
Цитата
Маугли написал:
Не могу понять, зачем эти навороты, диалоги. отступы, пароли

Прикрепленные файлы
Копирование строк н автомате (3).xlsm  (45.17 КБ)

Изменено: Маугли  - 20 Янв 2018 07:49:21
Очень сложная таблица и много разных тонкостей при работе с ней, поэтому такая замудреная.
Спасибо за помощь, после проверки всё работает отлично.  
Изменено: sergey_sasin - 24.01.2018 09:49:29
Страницы: 1
Наверх