Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.09.2012, 13:52   #1
KApSuL
Форумчанин
 
Регистрация: 04.09.2010
Сообщений: 119
По умолчанию макрос на добавление строки при условии

Добрый день!
подскажите пож:
нужно написать макрос, чтобы добавлялась строка, при условии что:
например идут ячейки
1
1
1
2
2
3
3
нужно чтобы строка добавлялась между 1-кой и 2-кой или 2-кой и 3-кой
KApSuL вне форума Ответить с цитированием
Старый 06.09.2012, 14:08   #2
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Код:
 [A:A].Find(2, LookIn:=xlValues).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
вместо 2 ставите значение, перед которым нужно вставить строку и всё...
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 06.09.2012, 14:22   #3
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Цикл снизу вверх, как только предыдущее значение отличается от текущего - вставляете строку.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 06.09.2012, 15:02   #4
KApSuL
Форумчанин
 
Регистрация: 04.09.2010
Сообщений: 119
По умолчанию

спасибо, то что нужно
по одному столбцу понятно, а как сделать чтобы строка добавлялась по всей таблице
например если
1
1
2
2
стоит в столбце С
как сделать чтобы строка добавилась и по всем остальным столбцам?
KApSuL вне форума Ответить с цитированием
Старый 06.09.2012, 15:04   #5
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Цитата:
стоит в столбце С
как сделать чтобы строка добавилась и по всем остальным столбцам?
Код:
[C:C].Find(2, LookIn:=xlValues).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 06.09.2012, 15:13   #6
KApSuL
Форумчанин
 
Регистрация: 04.09.2010
Сообщений: 119
По умолчанию

спасибо большое, очень помогли
KApSuL вне форума Ответить с цитированием
Старый 06.09.2012, 15:30   #7
KApSuL
Форумчанин
 
Регистрация: 04.09.2010
Сообщений: 119
По умолчанию

ой ещё вопрос если можно...
можно с этим рядом который добавляем сразу работать как-то?
к примеру добавляем ряд и в макросе размещаем значения по ячейкам именно этого столбца?
KApSuL вне форума Ответить с цитированием
Старый 06.09.2012, 15:39   #8
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Код:
  Set R = [A:A].Find(2, LookIn:=xlValues).EntireRow
  R.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
  R.Offset(-1).Cells(1,5).Value = "+"
например, вот так (ставим "+" в 5 колонку новой строки)
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 06.09.2012, 15:50   #9
KApSuL
Форумчанин
 
Регистрация: 04.09.2010
Сообщений: 119
По умолчанию

спасибо
я вот так придумал
Код:
    [B:B].Find("", LookIn:=xlValues).Select
    ActiveCell.FormulaR1C1 = "Бригада1"
или это бред?
хотя да, у Вас лучше
вновь спасибо

Последний раз редактировалось KApSuL; 06.09.2012 в 15:53.
KApSuL вне форума Ответить с цитированием
Старый 06.09.2012, 16:18   #10
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Выделение (.Select) использовать не рекомендую - если большие циклы, то будет нещадно тормозить.
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
удаление строки при условии horpenst Microsoft Office Excel 6 30.03.2011 14:31
выделение строки при определенном условии kursant95 Microsoft Office Excel 4 18.02.2011 18:20
Добавление записи в запросе при условии Rekky SQL, базы данных 11 29.07.2010 14:22
Помогите, пожалуйста, скрыть строки при определенном условии axaptaalex Microsoft Office Excel 4 19.03.2009 21:35
Как в VBA скрыть неиспользуемые строки при условии berliozz Microsoft Office Excel 16 24.11.2008 08:47