Страницы: 1
RSS
Автоматический сдвиг "съехавших" одномерных массивов, Сдвиг одномерных массивов внутри более крупных массивов
 
Уважаемые форумчане, доброго времени суток!
Прошу помочь в решении непростой для меня задачи (руководство настоятельно рекомендовало справиться с огромным массивом на 50тыс строк до вечера 31 декабря :(( Иначе - плакал праздник и курил веник :..(
Суть такова.
Существует двумерный массив шириной 16 столбцов и высотой почти в 50тыс строк (скрин).
В нем достаточно часто встречаются "съехавшие" влево на один столбец одномерные горизонтальные массивы (7х1).
Внутри массива также существуют горизонтальные разрывы (не более 10 строк).
Руками буду исправлять до 29 февраля...
Хотел бы справиться макросом, который будет стартовать с текущей ячейки и самостоятельно производить сдвиги таких вот "беглецов".
Кое-что нарисовал, собрав свои скудные познания ) Благодарю за проявленный к моей просьбе спортивный интерес!
 
Не совсем понял задачу. У Вас показана ситуация "как сейчас". Можете показать ситуацию как надо. И вопрос: ячейки уже закрашены или это для удобства сделано?
А еще лучше, если выложите файл, который на рисунке. Если есть конфиденциальные данные, составьте пример.
Изменено: Все_просто - 29.12.2014 23:54:11
С уважением,
Федор/Все_просто
 
Смотря на рисунок напрашивается такое:
1. Проставляем где-то в R порядковые номера строк (автозаполнением)
2. сортируем таблицу по P
3. вручную тянем нужный блок вправо
4. сортируем таблицу по порядковым номерам.
5. удаляем уже ненужные номера.
 
Отвечаю по порядку )
"Все_просто"
Ситуация "как надо" на прикрепленом скрине. Так должно получиться в результате работы макроса.
Ячейки закрашены для удобства восприятия. На самом деле никакие поля не закрашены.

рисунок удален, файл выложен ниже [МОДЕРАТОР]
Файл, к сожалению, приложить не могу - ограничение до 100КБ.

"Hugo"
Если я правильно Вас понял, то Вы предлагаете отсортировать таблицу по столбцу Р, выбрав в нем пустые ячейки, чтобы потом указанные съехавшие блоки разом перетащить вправо. Только при этом появляется сообщение о том, что данная команда неприменима для несвязанных диапазонов.
Если я понял Вас неверно, прошу разъяснить )
 
Я хотел бы поместить курсор в ячейку I2, чтобы макрос начал "шагать" по столбцу вниз и, находя на своем пути непустые ячейки со значениями, отличающимися от "+" и "-", сдвигать массив 7х1 вправо на один столбец.
 
И в картинках макросы сочинять?
Неужели на форуме по Excel нельзя выложить файл Excel?!
Не огромный.  С таким же количеством заполненных ячеек, как в картинке.
Нет! Обязательно - рисунок, по этому рисунку кому-то рисовать данные в Excel...

Рисунки удалены, ниже выложен файл.
 
Прошу извинить, вот архив )

был архив 21 кБ, файл 12 кБ ниже
 
Или zip

был архив 21 кБ, файл 12 кБ ниже
 
Или вообще без архивирования.
Выделить пустые форматированные строки (больше 14000), удалить и обязательно сохранить.
Заметно по размеру?
 
Цитата
AlekseyKrekotnev пишет: Только при этом появляется сообщение о том, что данная команда неприменима для несвязанных диапазонов.
отсортировать (сортировкой А-Я, предварительно пронумеровав), а не отфильтровать.
Да, хорошо Hugo придумал и никаких макросов не надо)
Работать надо не 12 часов, а головой.
 
Доброе время суток
Реализация того, что предложил Игорь. Только порядок задан в Q, а первая сортировка по I. Затем сдвиг внизу таблицы блока перед которым слева пустые ячейки и сортировка по Q, после чего значения в Q удаляются (в примере оставлены).
Успехов.
 
Друзья, спасибо! Попробовал делать сортировку, работает )
Благодарю вас и поздравляю с наступающим НГ :D
 
Продуктивно вы тут ночку поработали :)
Писать код для одной такой операции непродуктивно - руками сделать проще.
Вот если это нужно делать часто - тогда есть смысл один раз потратить время на макрос.
С наступающим НГ!
Страницы: 1
Наверх