|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.05.2017, 21:51 | #1 |
Регистрация: 12.06.2016
Сообщений: 4
|
Макрос для очищения строк по критерию
Добрый вечер!
Помогите, пожалуйста, с задачкой. Нужен макрос, который будет очищать строку, если хотя бы одна ячейка в этой строке в указанном диапазоне (A6:F505) - пустая. А затем делать так, чтобы между первой заполненной строкой и последней не было пустых строк, но не удалять их, а как бы копировать значения из строки ниже на эту пустую строку и т.д. Грубо говоря, есть книга с 50+ листами... На лист 2 будут копироваться данные из другой программы в диапазон ячеек A6:F505. На остальных листах прописаны формулы, которые ссылаются на эту таблицу на листе 2. Вся суть в том, что если я удаляю строку из этого диапазона, то формулы на остальных листах портятся и ссылки приобретают вид #ССЫЛКА, а не $A$6:$F$505, как изначально прописано. Что должно выйти: я копирую массив данных на лист 2 в диапазон A6:F505 (но не во всех случаях этот диапазон будет полностью занят значениями), жму кнопку с макросом, и он очищает (не удаляет) бракованные строки (где хотя бы одна ячейка пустая в диапазоне A-F), а затем нужно как-то сделать так, чтобы образовавшихся пустых строк (если они будут) не было между первой и последней заполненной строкой. И все эти махинации должны сохранять стилистику таблицы) Мне посоветовали вот этот код, но в таком виде он именно удаляет строки и на других листах формулы перестают работать. Код:
Код:
Для большей наглядности прикрепляю пример - на листе1 - пример исходных данных, на листе2 - пример того, как должен работать макрос. Надеюсь, кто-нибудь поможет, а то уже 3-й день безрезультатно =( |
22.05.2017, 23:34 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
задача не решилась на "Планете"?
нужно просто не намеками, а прямым текстом говорить о том, что должно происходить с данными. ну будет код не в 6 строк, а в 12, зато будет точно выполнять поставленную задачу. понимаете, потому что рассказ, что нужно удалить строку, но так чтобы ее не удалять... способен повергнуть в сильные раздумия каждого, чей мозг оборудован хоть каким-то задатками логики
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
23.05.2017, 02:17 | #3 |
Регистрация: 12.06.2016
Сообщений: 4
|
Нет, не решилась.
Такого я точно не говорил) Вот моя цитата - "если в строке A6:F6 есть хотя бы одна пустая ячейка, то должна очищаться вся строка (имею в виду не удаление строки, а удаление данных из всех ячеек этой строки)" Да, я не смог сразу учесть все нюансы при описании задачи. Когда я начал применять предлагаемые макросы, я понял, что еще много чего не учел... Поэтому и пишу очень много слов, хотя ожидаемый результат должен быть понятен при беглом взгляде на пример... |
23.05.2017, 07:59 | #4 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Если я правильно понял, то Вам требуется удалить все пустые строки в таблице, но таким образом, чтобы не "поехала" нижняя граница таблицы. Так?
Если так, то для Вашего примера (таблица в диапазоне "A6:F11") можно использовать код: Код:
Чем шире угол зрения, тем он тупее.
|
23.05.2017, 12:09 | #5 |
Регистрация: 12.06.2016
Сообщений: 4
|
SAS888, огромное спасибо, наконец все работает как надо!)
Один вопрос: мне нужно для диапазона A6:F505, значит мне нужно поменять в третьей строке: Код:
Код:
|
23.05.2017, 13:40 | #6 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
ничего больше не нужно
форматирование ВСЕХ ячеек останется на месте данные подымутся вверх, заполняя строки где была хоть 1 пустая ячейка
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
24.05.2017, 19:54 | #7 |
Регистрация: 12.06.2016
Сообщений: 4
|
Огромное спасибо, выручили!
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
макрос для удаления строк??? | mixa2997510 | Microsoft Office Excel | 3 | 21.05.2012 13:38 |
Прога для очищения свойств файлов | Ghost3 | Софт | 5 | 19.10.2011 19:32 |
макрос для нумерации строк | Olya1985 | Microsoft Office Excel | 5 | 07.01.2011 23:46 |
Удаление строк по определенному критерию | Franck | Microsoft Office Excel | 4 | 16.02.2009 11:27 |