Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Microsoft Office и VBA > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 30.06.2018, 14:36   #1
AlekseyUkhin
Новичок
Джуниор
 
Регистрация: 30.06.2018
Сообщений: 1
По умолчанию Вставка необходимого значение в выбранном диапазоне

Добрый день уважаемые форумчане!
есть затык в макросе. айтишник на предприятии уволился, никто ВБА не знает) приходиться лопатно автоматизировать отчеты при помощи записи макросов, но не всегда получается четко.
в чем суть проблемы: есть отчет, в котором количество строк с каждой неделей уменьшается или увеличивается. поэтому обычная запись макроса не катит. нашел на одном из форумов кусочек кода, который позволяет выбрать необходимый диапазон ячеек (в моем случае это ячейка D14 Название проекта, как говорил выше, их может быть рандомное кол-во, т.е. D14, 15 итд) и добавить после каждой заполненной строки 6 пустых и итд, пока не закончиться цикл. (код на диапазон находиться в макросе INS в самом вверху, на вкладке начальная страница кнопка 1)
Код:
Sheets("Н1 (сокр)").Select
Dim rng As Range
Set rng = Application.InputBox("Выделите диапазон", , , , , , , 8)
a = rng.row
b = a + rng.Rows.Count - 1
For i = b To a + 1 Step -1
Rows(i & ":" & i + 5).Insert
Next
это все круто и работает. но теперь необходио заполнить эти новые строки информацией (колонка J, комментарий) информация для всех проектов будет одна и та же:
1.Дорожная карта реализации проекта
2.График 1-го уровня
3.График 2-го, 3 уровня
4.График 4 уровня
5.МДР
6.План по управлению качество
7.Программа ИИ

собтвенно, о чем я вас прошу мне помочь, нужно чтобы при выборе диапазона и добавлении пустых строк, строки колонки J заполнялись значениями которые я написал выше, так же по циклу.
если вдруг я коряво описал, во вложении лист (Н1 (сокр)) это изначальный вариант, а лист (готово) это как должно выглядеть в идеале. спасибо заранее и ссорян за тупость) не первую неделю ломаю голову
Вложения
Тип файла: xlsx Пример1.xlsx (70.7 Кб, 19 просмотров)
AlekseyUkhin вне форума Ответить с цитированием
Старый 30.06.2018, 22:34   #2
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,060
По умолчанию

А что код пожадничали в файле показать?
По делу - т.к. известно значение i, то сразу после добавления строк нет проблем прописать
Код:
cells(i,"J")="1.Дорожная карта реализации проекта"
cells(i+1,"J")="2.График 1-го уровня"
и т.д.
Или более технично выгрузить туда одним движением массив значений. Хотя особой разницы по времени не будет, если не десятки тысяч строк нужно заполнять.
Файл не смотрел - чего его без кода смотреть?
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 30.06.2018 в 22:38.
Hugo121 вне форума Ответить с цитированием
Старый 01.07.2018, 14:14   #3
IgorGO
МегаМодератор
СуперМодератор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,254
По умолчанию

выполните это на листе, в котором нужно добавить строки
Код:
Sub InsSameRowsGroups()
  Dim r&, c&, rg As Range, TxtAr
  Set rg = Cells.Find("Комментарий", , xlValues, xlWhole)
  If rg Is Nothing Then Exit Sub Else c = rg.Column
  TxtAr = Application.Transpose(Split("1.Дорожная карта реализации проекта;2.График 1-го уровня;3.График 2-го, 3 уровня;4.График 4 уровня;5.МДР;6.План по управлению качество;7.Программа ИИ", ";"))
  r = Cells(Rows.Count, c).End(xlUp).Row
  Do While Not IsNumeric(Cells(r, c))
    Rows(r + 1).Resize(6).Insert:  Cells(r, c).Resize(7, 1).Value = TxtAr
    r = r - 1
  Loop
End Sub
41001804815208 - Яндекс-деньги благодарности за удачные советы и решения можно отправлять прямо сюда)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете

Последний раз редактировалось IgorGO; 01.07.2018 в 14:17.
IgorGO вне форума Ответить с цитированием
Ответ
Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как сделать условное форматирование строки по нескольким условиям в выбранном диапазоне ? oleg4224 Microsoft Office Excel 2 08.04.2014 01:11
Найти минимальное значение в диапазоне ruavia3 Microsoft Office Excel 10 25.08.2013 19:42
макрос для скрытия и показа строк в выбранном диапазоне шрк Microsoft Office Excel 2 04.11.2011 11:30
Найти значение в диапазоне ячеек Luchiya Microsoft Office Excel 2 01.09.2010 14:09
Вставка группы пустых ячеек в выбранном диапазоне slba Microsoft Office Excel 4 30.10.2009 09:48