Excel не сортирует объединенные ячейки

Если объединенные ячейки существуют в списке, вы получите окно подсказки при сортировке данных этого списка, как показано на левом снимке экрана.

На самом деле, нет способа напрямую сортировать данные с объединенными ячейками. Вам нужно сначала отключить все объединенные ячейки, а затем отсортировать список. Эта статья познакомит вас с несколькими хитростями.

Сортировка данных с объединенными ячейками, сначала отключив все ячейки
Сортировать данные с объединенными ячейками по Kutools for Excel


Сортировка данных с объединенными ячейками, сначала отключив все ячейки

Вы можете сначала отключить все объединенные ячейки, а затем отсортировать список. Пожалуйста, сделайте следующее.

1. Выберите список с объединенными ячейками, который необходимо отсортировать, затем щелкните Главная > Слияние и центр чтобы разъединить выбранные объединенные ячейки. Смотрите скриншот:

2. Теперь вы можете видеть пустые ячейки, существующие в выбранном диапазоне. Не снимая выделения с диапазона, нажмите Найти и выбрать > Перейти к специальному под Главная меню.

3. в Перейти к специальному в диалоговом окне выберите Пробелы вариант, а затем щелкните OK кнопку.

4. Затем выбираются все пустые ячейки. Пожалуйста, введите = отметьте в строке формул, затем укажите ссылку на ячейку, расположенную над первой пустой ячейкой, а затем нажмите Ctrl + Enter ключ одновременно.

Вы можете видеть, что все пустые ячейки заполнены указанным выше значением.

5. Теперь вы можете начать сортировку вашего списка. И после сортировки вы можете снова объединить ту же ячейку, если вам нужно.


Сортировать данные с объединенными ячейками по Kutools for Excel

Вы можете легко разъединить ячейки в выбранном диапазоне без потери данных с помощью Разъединить ячейку и заполнить значение полезности Kutools for Excel. Пожалуйста, сделайте следующее.

1. Выберите список, который нужно отсортировать с объединенными ячейками, затем щелкните Кутулс > Слияние и разделение > Разъединить ячейку и заполнить значение. Смотрите скриншот:

Вы можете видеть, что все объединенные ячейки не объединены и заполнены не объединенными ячейками повторяющимися значениями.

2. Теперь вы можете приступить к сортировке данных. После сортировки вы можете выбрать список и нажать КутулсСлияние и разделение > Объединить одинаковые ячейки чтобы снова объединить те же ячейки значений.

  Если вы хотите получить бесплатную пробную версию (30-день) этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.


Сортировать данные с объединенными ячейками по Kutools for Excel


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Комментарии (0)


Оценок пока нет. Оцените первым!

Содержание

  1. Вы можете получить сообщение об ошибке при сортировке диапазона, который содержит объединенные ячейки в Excel
  2. Симптомы
  3. Причина
  4. Обходной путь
  5. Общее решение
  6. Пример решения
  7. Для этого все объединенные ячейки должны иметь одинаковый размер что делать
  8. Вы можете получить сообщение об ошибке при сортировке диапазона, который содержит объединенные ячейки в Excel
  9. Причина
  10. Обходной путь
  11. Общее решение
  12. Пример решения
  13. Проблема сортировки в excel
  14. Как исправить объединенные ячейки должны быть одинакового размера Ошибка Excel
  15. Как исправить объединенные ячейки должны быть одинакового размера Ошибка Excel
  16. Как исправить ошибку Объединенные ячейки должны иметь одинаковый размер в Excel
  17. Сортировка объединенных ячеек excel
  18. Как объединить ячейки в Excel
  19. Способы объединения ячеек
  20. Какие проблемы возникают при использовании объединенных ячеек
  21. Как найти все объединенные ячейки и разъединить их
  22. Альтернативы использования объединенных ячеек
  23. Признаки
  24. Причина
  25. Временное решение
  26. Действия по воспроизведению проблемы

Вы можете получить сообщение об ошибке при сортировке диапазона, который содержит объединенные ячейки в Excel

Симптомы

При сортировке диапазона на листе Microsoft Excel программа Excel не сортирует диапазон. Кроме того, может появиться следующее сообщение об ошибке:

Эта операция требует одинакового размера объединенных ячеек.

Причина

Эта проблема может возникнуть при сортировке диапазона ячеек, а также при выполнении следующих условий:

  • Вы ранее объединили некоторые ячейки, но не все ячейки в диапазоне сортировки.
  • Вы ранее объединили все ячейки в диапазоне сортировки, но не все ячейки имеют одинаковый размер.

Обходной путь

Чтобы решить эту проблему, разделите или объедините все объединенные ячейки в диапазоне, чтобы они имели одинаковый размер. Каждая объединенная ячейка в диапазоне должна занимать одинаковое количество строк и столбцов, что и другие объединенные ячейки в диапазоне.

Общее решение

Выберите весь диапазон, который следует сортировать.

В группе Выравнивание на вкладке Главная нажмите кнопку вызова диалогового окна Выравнивание.

Выберите вкладку Выравнивание, а затем снимите флажок Объединить ячейки.

Нажмите ОК.

Это может изменить расположение данных в диапазоне.

Пример решения

Введите следующие данные на листе:

Объедините ячейки A1 и B1, A2 и B2, а также A3 и B3. Для этого выполните следующие действия:

Выделите каждую пару ячеек.

Нажмите кнопку вызова диалогового окна Выравнивание в группе Выравнивание на вкладке Главная.

Выберите вкладку Выравнивание, а затем установите флажок Объединить ячейки.

Нажмите ОК.

Не объединяйте ячейки в столбце C.

Выделите ячейки A1:C3, & выберите фильтр сортировки в группе редактирования на вкладке «Главная» и нажмите кнопку «Настраиваемая сортировка».

В поле Сортировка выберите «Столбец C» рядом с пунктом Сортировать по и нажмите ОК. Отобразится приведенное сообщение об ошибке.

Для решения этой проблемы воспользуйтесь одним из указанных ниже способов:

  1. Отмените объединение ячеек A1:B3, чтобы в выбранном диапазоне не было объединенных ячеек.
  2. Объедините ячейки C1 и D1, C2 и D2, а также C3 и D3, чтобы столбец C имел тот же размер (после объединения), что и столбец A/B. Затем выберите ячейки A1:D3 и повторите шаги 3 и 4, используя единый размер диапазона.

Источник

Для этого все объединенные ячейки должны иметь одинаковый размер что делать

Вы можете получить сообщение об ошибке при сортировке диапазона, который содержит объединенные ячейки в Excel

При сортировке диапазона на листе Microsoft Excel программа Excel не сортирует диапазон. Кроме того, может появиться следующее сообщение об ошибке:

Эта операция требует одинакового размера объединенных ячеек.

Причина

Эта проблема может возникнуть при сортировке диапазона ячеек, а также при выполнении следующих условий:

  • Вы ранее объединили некоторые ячейки, но не все ячейки в диапазоне сортировки.
  • Вы ранее объединили все ячейки в диапазоне сортировки, но не все ячейки имеют одинаковый размер.

Обходной путь

Чтобы решить эту проблему, разделите или объедините все объединенные ячейки в диапазоне, чтобы они имели одинаковый размер. Каждая объединенная ячейка в диапазоне должна занимать одинаковое количество строк и столбцов, что и другие объединенные ячейки в диапазоне.

Общее решение

Выберите весь диапазон, который следует сортировать.

В группе Выравнивание на вкладке Главная нажмите кнопку вызова диалогового окна Выравнивание.

Выберите вкладку Выравнивание, а затем снимите флажок Объединить ячейки.

Нажмите ОК.

Это может изменить расположение данных в диапазоне.

Пример решения

Введите следующие данные на листе:

Объедините ячейки A1 и B1, A2 и B2, а также A3 и B3. Для этого выполните следующие действия:

Выделите каждую пару ячеек.

Нажмите кнопку вызова диалогового окна Выравнивание в группе Выравнивание на вкладке Главная.

Выберите вкладку Выравнивание, а затем установите флажок Объединить ячейки.

Нажмите ОК.

Не объединяйте ячейки в столбце C.

Выделите ячейки A1:C3, затем выберите Сортировка и фильтр в группе Редактирование на вкладке Главная, а затем нажмите Настраиваемая сортировка.

В поле Сортировка выберите «Столбец C» рядом с пунктом Сортировать по и нажмите ОК. Отобразится приведенное сообщение об ошибке.

Для решения этой проблемы воспользуйтесь одним из указанных ниже способов:

Проблема сортировки в excel

Хочу отсортировать таблицу, но комп выдаёт ошибку такого типа:

«Эта ошибка возникает только в случае, когда предпринимается попытка отсортировать диапазон ранее объединенных ячеек, но не все ячейки этого диапазона сортировки объединены или имеют одинаковый размер.
Чтобы избежать этой ошибки, разделите все объединенные ячейки в диапазоне, либо объедините все ячейки так, чтобы размеры групп объединенных ячеек совпадали с размером самой большой группы.»

Но мне нужна эта сортировка как раз для того, чтобы удалить вторую часть объединённых ячеек. Есть ли общая команда для их разделения, а затем дальнейшей сортировки?

Как исправить объединенные ячейки должны быть одинакового размера Ошибка Excel

При попытке отсортировать данные в Excel вы могли столкнуться с ошибкой, указывающей на то, что объединенные ячейки должны быть одинакового размера. Обычно это происходит при копировании и вставке данных из источника в Excel. Иногда это заставляет Excel объединить некоторые ячейки, даже не заметив этого.

Чтобы решить эту проблему, вам просто нужно разъединить все ячейки на листе. Звучит как много работы, но на самом деле это можно сделать всего несколькими щелчками мыши Вот как это сделать.

Источник

Как исправить объединенные ячейки должны быть одинакового размера Ошибка Excel

Как исправить объединенные ячейки должны быть одинакового размера. Ошибка Excel 27 сентября 2021 г. 14 мая 2021 г., Alex

При попытке отсортировать данные в Excel вы могли столкнуться с ошибкой, указывающей на то, что объединенные ячейки должны быть одинакового размера. Обычно это происходит при копировании и вставке данных из источника в Excel. Иногда это заставляет Excel объединить некоторые ячейки, даже не заметив этого.

Чтобы решить эту проблему, вам просто нужно разъединить все ячейки на листе. Звучит как много работы, но на самом деле это можно сделать всего несколькими щелчками мыши Вот как это сделать.

Как исправить ошибку Объединенные ячейки должны иметь одинаковый размер в Excel

  1. Нажмите кнопку «Выбрать все» слева от столбца A и выше строки 1. Вы также можете просто нажать Ctrl + A на клавиатуре (Cmd + A на Mac).

На вкладке «Главная» щелкните маленькую стрелку справа от пункта «Объединить & Отцентрируйте и выберите «Разъединить ячейки».

  • Наконец, попробуйте еще раз отсортировать данные. Вы больше не должны получать ошибку об объединенных ячейках!
  • Источник

    Сортировка объединенных ячеек excel

    Как объединить ячейки в Excel

    Сначала расскажем что такое объединенные ячейки в Excel и как их сделать. Тут нет ничего сложно, достаточно выделить две или более ячеек и выбрать команду на ленте Главная -> Выравнивание -> Объединить и поместить в центре.

    Важно отметить, что Excel при объединении ячеек, которые содержат значения, оставит значение только той ячейки, которая находится в верхнем левом углу выбранного диапазона. Остальные же значения будут удалены. Однако, с помощью нашей надстройки, данное недоразумение можно избежать с помощью специальной команды.

    Вы можете объединять ячейки как по горизонтали, так и по вертикали. Также можно объединить области, содержащие боле одной строки и столбца.

    Способы объединения ячеек

    Если внимательней посмотреть на команду объединения ячеек, то можно увидеть выпадающее меню, которое в свою очередь содержит следующие дополнительные действия:

    • Объединить по строкам — позволяет выбрать диапазон ячеек, который содержит несколько строк. В этом случае Excel будет создавать объединенные ячейки по одной на каждой строке
    • Объединить ячейки — объединяет выделенные ячейки в одну, но при этом не выравнивает текст в ячейке.
    • Отменить объединение ячеек — позволяет разбить объединенную ячейку на несколько.

    Какие проблемы возникают при использовании объединенных ячеек

    Как уже говорили, пользоваться объединенными ячейками стоит аккуратно, так как они ограничивают функционал Excel и могут в дальнейшем принести неприятности. Если все-таки решили пользоваться объединенными ячейками, всегда помните о следующих моментах:

    • Если диапазон содержит объединенные ячейки, то пользоваться сортировкой и фильтрацией в этом диапазоне будет невозможно.
    • Также невозможно будет преобразовать такой диапазон в таблицу (форматировать как таблицу).
    • Также можно забыть об автоматическом выравнивании ширины или высоты ячейки. Например если имеется объединенная ячейка A1:B1, то выравнять ширину столбца A уже не получится.
    • Если Вы пользуетесь горячими клавишами для навигации, например переходите в начало и конец таблицы путем сочетания клавиш Ctrl + стрелка вверх и вниз, то переход не удастся, и курсор будет «упираться» в объединенные ячейки.
    • Если вы выделяете столбцы (или строки) с помощью горячих клавиш Ctrl (Shift) +Пробел, то при наличии объединенных ячеек, вы не сможете выделить 1 столбец (или строку).

    Как найти все объединенные ячейки и разъединить их

    Чтобы разъединить все ячейки и удалить объединенные, достаточно выполнить следующие действия:

    1. Выделить все ячейки на листе. Это можно сделать путем нажатия сочетания клавиш Ctrl + A или кликнуть на черный треугольник между заголовками строк и столбцов на листе.
    2. Нажать на команду Главная -> Выравнивание -> Объединить и поместить в центре если она выделена. Если же она не выделена, значит выбранный лист не содержит объединенных ячеек.

    Если же необходимо найти все объединенные ячейки в книге, то это можно сделать через панель поиска. Для этого выполните следующие шаги:

    1. Откройте окно Найти и заменить. Сделать это можно сочетанием клавиш Ctrl + F.
    2. Поле Найти оставьте пустым и нажмите на кнопку Параметры.
    3. Должна отобразиться кнопка Формат. Нажмите левой кнопкой мыши по ней.
    4. В диалоговом окне Найти формат на вкладке Выравнивание выберите опцию Объединение ячеек. Далее нажмите Ok.
    5. В диалоговом окне Найти и заменить нажмите Найти далее или Найти все в зависимости от вашей дальнейшей задачи.

    Альтернативы использования объединенных ячеек

    Как правило объединенные ячейки применяют для целей выравнивания текста. Однако мало кто знает, что текст можно выровнять и без объединения ячеек и потери функционала. Для этого можно использовать обычное форматирование ячеек:

    1. Выделите диапазон ячеек, который хотите отцентрировать. При этом сам текст должен содержаться в левой верхней ячейке.
    2. Выберите команду формат ячеек или нажмите сочетание клавиш Ctrl + 1.
    3. В диалоговом окне Формат ячеек перейдите на вкладку Выравнивание.
    4. В выпадающем списке выравнивания по горизонтали выберите значение по центру выделения и нажмите OK.

    Еще один способ избежать объединения ячеек — это использовать надписи. В них также можно вставлять текст и выбирать направление текста по вертикали. Способ конечно также накладывает много ограничений, но в каких-то случаях имеет место быть.

    Все способы можно скачать нажав кнопку вначале статьи.

    Признаки

    При попытке отсортировать диапазон на листе Microsoft Excel этот диапазон не сортируется. Кроме того, вы можете получить следующее сообщение об ошибке:

    Для выполнения этой операции Объединенные ячейки должны иметь одинаковый размер.

    Причина

    Эта проблема может возникнуть при сортировке диапазона ячеек и при соблюдении следующих условий:

    • Ранее вы объединили некоторые ячейки, но не все ячейки в диапазоне сортировки.
    • Ранее вы объединили все ячейки в диапазоне сортировки и ячейки имеют одинаковый размер.

    Временное решение

    Чтобы обойти эту проблему, разделите все объединенные ячейки в диапазоне или объедините все ячейки в диапазоне, чтобы объединенные ячейки совпадали с размером. Каждая Объединенная ячейка в диапазоне должна занимать то же количество строк и столбцов, что и другие объединенные ячейки в диапазоне.

    Действия по воспроизведению проблемы

    На листе введите следующие данные:

    Объедините ячейки a1 и B1, a2 и B2, а затем a3 и B3. Для этого выполните следующие действия:

    Выделите каждую из этих ячеек.

    В меню Формат выберите пункт ячейки.

    В Microsoft Office Excel 2007 щелкните средство запуска диалогового окна Выравнивание в группе Выравнивание на вкладке Главная.

    Перейдите на вкладку Выравнивание и установите флажок объединить ячейки .

    Нажмите кнопку ОК.

    Не объединяйте ячейки в столбце C.

    Выберите ячейки a1: C3, выберите пункт Сортировка в меню данные , а затем нажмите кнопку ОК.

    В Excel 2007 выберите сортировка & фильтр в группе » Правка » на вкладке » Главная » и нажмите кнопку Настраиваемая сортировка.

    В поле Сортировать нажмите кнопку ОК.

    Хочу отсортировать таблицу, но комп выдаёт ошибку такого типа:

    «Эта ошибка возникает только в случае, когда предпринимается попытка отсортировать диапазон ранее объединенных ячеек, но не все ячейки этого диапазона сортировки объединены или имеют одинаковый размер.
    Чтобы избежать этой ошибки, разделите все объединенные ячейки в диапазоне, либо объедините все ячейки так, чтобы размеры групп объединенных ячеек совпадали с размером самой большой группы.»

    Но мне нужна эта сортировка как раз для того, чтобы удалить вторую часть объединённых ячеек. Есть ли общая команда для их разделения, а затем дальнейшей сортировки?

    Источник

     

    sanantoni

    Пользователь

    Сообщений: 240
    Регистрация: 01.01.1970

    нужно отсортировать объединенные ячейки по столбцу «А», а потом пронумеровать их, или хотя бы отсортировать

     

    Alex_ST

    Пользователь

    Сообщений: 2746
    Регистрация: 22.12.2012

    На лицо ужасный, добрый внутри

    Стандартными средствами сортировать и нумеровать объединённые ячейки нельзя.  
    Объединённые ячейки — зло, вносящее множество неприятностей в работу с таблицами!  
    Избегайте их всеми возможными способами!  
    Разъединяйте данные и заполняйте получившиеся после этого пустые ячейки значениями из первой таким, например, макросом:  
    Sub UnMerge_and_Fill()   ‘ разгруппировать все ячейки в Selection и ячейки каждой бывшей группы заполнить значениями из их первых ячеек  
      If TypeName(Selection) <> «Range» Then Exit Sub  
      If Selection.Cells.Count <= 1 Then Exit Sub  
      Dim rCell As Range, sValue$, sAddress$, i&  
      Application.ScreenUpdating = False  
      For Each rCell In Intersect(Selection, ActiveSheet.UsedRange)  
         If rCell.MergeCells Then  
            sAddress = rCell.MergeArea.Address: sValue = rCell.Value: rCell.UnMerge  
            Range(sAddress).Value = rCell.Value  
         End If  
      Next  
      Application.ScreenUpdating = True  
    End Sub  
    А потом уж сортируйте/нумеруйте сколько хотите.

    С уважением, Алексей (ИМХО: Excel-2003 — THE BEST!!!)
    <#0>

     

    sanantoni

    Пользователь

    Сообщений: 240
    Регистрация: 01.01.1970

    *в таблице очень много повторений, то есть если есть материал с группой описаний, то объединив название материала эти самые группы сольются в неопределенном порядке  
    *есть макрос «что то вроде»  

    http://www.planetaexcel.ru/forum.php?thread_id=24998

    , возможно ли его применение в моем случае?  

      * спасибо за Ваш макрос, все же буду пробовать  

        и.. вопрос все ещё открыт

     

    после Вашего макроса теперь нужен другой, снова объединяющий одинаковые в столбце A

     

    Alex_ST

    Пользователь

    Сообщений: 2746
    Регистрация: 22.12.2012

    На лицо ужасный, добрый внутри

    Ахиллесовой пятой, а если точнее — неизлечимым геморроем Excel’я является не невозможность сортировки группированных ячеек, а возможность их создания, нарушающая принцип построения баз данных и нормальных электронных таблиц!  
    Ну, я бы ещё как-то понял мелко-мягких, если бы они при объединении ячеек просто копировали значение первой ячейки во все скрываемые… Но очищать скрываемые ячейки — это бред!  
    Вот здесь

    http://www.excelworld.ru/forum/3-44-1

    и здесь

    http://www.excelworld.ru/forum/3-43-1

    я описал макросы, хоть как-то улучшающие и заменяющие стандартное объединение ячеек.

    С уважением, Алексей (ИМХО: Excel-2003 — THE BEST!!!)
    <#0>

     

    KuklP

    Пользователь

    Сообщений: 14868
    Регистрация: 21.12.2012

    E-mail и реквизиты в профиле.

    Не согласен, Леш. В отчетах, бланках объединенные ячейки вполне к месту. Но не в рабочих таблицах, с к-рыми предполагается совершать какие либо действия. Там они так же неуместны, как шорты в Большом театре. Если пользователь бестолков и не понимает этого — это не проблема мелких. И правильно то, что под объединениями значения очищаются, потому как позволяет избежать непредсказуемых результатов при невидимых данных. И обязательно нашлись бы недовольные считающие, что оставлять надо не верхнее значение, а нижнее или среднее. Нормальный, грамотный пользователь понимает, что возможности экса избыточны. Если неопытный пользователь берет в руки достаточно сложный инструмент не имея необходимых знаний для работы с ним — это его и только его проблемы. Не надо хаять инструмент. Учиться надо.

    Я сам — дурнее всякого примера! …

     

    Alex_ST

    Пользователь

    Сообщений: 2746
    Регистрация: 22.12.2012

    На лицо ужасный, добрый внутри

    Привет, Серёга!  
    О том, что объединённые ячейки имеют право на существование, т.к. улучшают вид электронного документа, который не нужно никак программно обрабатывать, спорить не стану.  
    Но согласись: лист Экселя — это по сути форма для вывода данных из внутренней 2D-таблицы базы данных с регулярной прямоугольной структурой. Ячейки листа — это поля формы для вывода данных из таблицы.  При этом форма легко настраивается пользователем «под себя» (меняется формат ячеек, создаются связи-формулы между данными ячеек и т.д.).  
    В этом-то отношении всё придумано и реализовано отлично. НО с какого дуба нужно было рухнуть чтобы придумать затирать данные из полей таблицы, просто не выводимых в поля формы из-за того, что попали под объединение.  

      Ладно. Теоретическую дискуссию оставим.  
    Ты можешь набросать макрос, который будет объединять в столбце А идущие подряд ячейки с одинаковыми значениями?  
    Просто я завтра не знаю, когда возьмусь. А у автора, похоже, горит.  
    Ну а я, как освобожусь, посмотрю твой вариант и как всегда подполирую и наведу глянец :)

    С уважением, Алексей (ИМХО: Excel-2003 — THE BEST!!!)
    <#0>

     

    KuklP

    Пользователь

    Сообщений: 14868
    Регистрация: 21.12.2012

    E-mail и реквизиты в профиле.

    Не Леш, не хочу заниматься тем, чего сам не одобряю. Автору подсказал другое решение здесь:

    http://www.planetaexcel.ru/forum.php/tips.php?thread_id=40231

    Я сам — дурнее всякого примера! …

     

    Alex_ST

    Пользователь

    Сообщений: 2746
    Регистрация: 22.12.2012

    На лицо ужасный, добрый внутри

    Ну, я бы не сказал, что тот твой «посыл» можно считать полноценной подсказкой… :-)  
    Честно говоря, я и сам-то там тебя с трудом понял.  
    Ну а если автору никак без объединения не обойтись, а сортировать всё-таки надо?  
    Я ему показал как можно разъединить ячейки с восстановлением утерянных при объединении данных.  
    После этого он может сортировать как хочет.  
    А после его обработки нужно обратно объединить ячейки с одинаковыми значениями(ну, требуют, например, для большей наглядности).

    С уважением, Алексей (ИМХО: Excel-2003 — THE BEST!!!)
    <#0>

     

    ran

    Пользователь

    Сообщений: 7091
    Регистрация: 21.12.2012

     

    sanantoni

    Пользователь

    Сообщений: 240
    Регистрация: 01.01.1970

     

    одной отрывистой фразой RAN сокрушил полемику )

     

    Alex_ST

    Пользователь

    Сообщений: 2746
    Регистрация: 22.12.2012

    На лицо ужасный, добрый внутри

    Ну, если устроил вариант Андрея [RAN], то и ладно.
    Только интересно, sanantoni, что вы будете делать когда через некоторое время понадобится провести аналогичную операцию, но с таблицей, в которой по другому расположены столбцы? Или критерий сортировки нужен будет другой? :)  

      Всё-таки, ИМХО, должно быть 3 этапа обработки данных таблицы с объединёнными ячейками:  
    1 — Разъединить все ячейки указанной пользователем области (макросом с заполнением образовавшихся пустых ячеек значениями из первой ячейки группы)  
    2 — Ручная обработка (сортировка/добавление/удаление) разгруппированной таблицы пользователем так, как ему захочется  
    3 — Группировка в указанных пользователем столбцах подряд идущих ячеек с одинаковыми значениями

    С уважением, Алексей (ИМХО: Excel-2003 — THE BEST!!!)
    <#0>

     

    ran

    Пользователь

    Сообщений: 7091
    Регистрация: 21.12.2012

    Привет, Леш!  
    С обратным объединением проблем гораздо больше. Т.е. для одного столбца — больших вопросов нет, а в примере ТС после разгруппировки в столбце А 2 группы (условно 6 и 4 ячейки),которым в столбце В соответствуют 10 одинаковых. И как В объединять? По подряд идущим уже не катит.  А ежели еще столбец добавить? Поэтому что-то универсальное предложить сложно.  
    А с этим макросом я перемудрил слегка, можно и упростить.

     

    Alex_ST

    Пользователь

    Сообщений: 2746
    Регистрация: 22.12.2012

    На лицо ужасный, добрый внутри

    Привет, Андрей!  
    Я тут написАл два макроса по своей методике.  
    Посмотри.  
    Только я что-то, кажется, в цикле объединения одинаковых намудрил… Чувствую, что можно как-то проще… Но как?

    С уважением, Алексей (ИМХО: Excel-2003 — THE BEST!!!)
    <#0>

     

    sanantoni

    Пользователь

    Сообщений: 240
    Регистрация: 01.01.1970

     

    sanantoni

    Пользователь

    Сообщений: 240
    Регистрация: 01.01.1970

    ОБЪЕДИНЕНИЕ идет только по второму столбцу на примере

     

    nerv

    Пользователь

    Сообщений: 3071
    Регистрация: 22.12.2012

    Простите, чем Вы тут занимаетесь? : ) Что требуется получить? [тему не читал]

     

    Alex_ST

    Пользователь

    Сообщений: 2746
    Регистрация: 22.12.2012

    На лицо ужасный, добрый внутри

    sanantoni,  
    что-то я не понял:  
    1 — как в вашем примере может что-то работать, когда в нём не прописаны мои макросы?  
    2 — Когда я туда перенёс модуль с макросами всё заработало.  
    Может, вы не поняли: разгруппировка с заполнением также как и группировка одинаковых идёт в ВЫДЕЛЕННОМ диапазоне, а не в конкретном столбце.  
    3 — Я xlsx понимаю с трудом (для 2003-го приходится конвертировать). Если уж со мной общаться, то лучше с помощью XLS

    С уважением, Алексей (ИМХО: Excel-2003 — THE BEST!!!)
    <#0>

     

    ran

    Пользователь

    Сообщений: 7091
    Регистрация: 21.12.2012

    Мой и не будет работать с этим примером, поскольку он перед тем, как объединять, должен сначала разъединить.  
    Макрос Алексея — тоже. Причины я указал выше.

     

    Alex_ST

    Пользователь

    Сообщений: 2746
    Регистрация: 22.12.2012

    На лицо ужасный, добрый внутри

    {quote}{login=nerv}{date=11.04.2012 02:49}{thema=}{post}Простите, чем Вы тут занимаетесь? : ) Что требуется получить? [тему не читал]{/post}{/quote}
    Саш, мы тут эта… Разъединяем, объединяем, … В общем «плюшками балуемся» :)  

      Андрей,  
    а почему это мой не будет работать? Раз нечего разъединять, он и не разъединит. А если найдёт, что объединять, то объединит.  
    Только что проверил на адресованном тебе post_326322.xls: всё прекрасно объединил на листе «пример как есть»

    С уважением, Алексей (ИМХО: Excel-2003 — THE BEST!!!)
    <#0>

     

    nerv

    Пользователь

    Сообщений: 3071
    Регистрация: 22.12.2012

    {quote}{login=RAN}{date=11.04.2012 02:55}{thema=}{post}Мой и не будет работать с этим примером, поскольку он перед тем, как объединять, должен сначала разъединить.  
    Макрос Алексея — тоже. Причины я указал выше.{/post}{/quote}  

      Андрей, скажу по секрету, у товарища в 1-ом столбце уникальные. Объединять по ним )  

        Alex_ST : )

     

    ran

    Пользователь

    Сообщений: 7091
    Регистрация: 21.12.2012

    Леша, так да не так!  
    В файле 5 кодов, которым соответствует названиа Сталь угловая.  
    Все 5 кодов объединяются правильно в 5 ячеек.  
    А вся сталь — в одну.  
    Я понимаю, что с Selection твой макрос отработает правильно и по второму столбцу, если в нем выделить 5 различных диапазонов, но для этого есть кнопочка на ленте (или в меню), и макрос не нать.  
    Я вижу так — проходим Selection, смотрим, где могут быть объединенные ячейки, запоминаем адреса столбцов, затем идем по столбцам и объединяем с учетом наличия объединенных ячеек в предыдущем столбце. Но чем дальше в лес — тем больше волки…-:)  

      Саша, вопрос не в уникальных

     

    nerv

    Пользователь

    Сообщений: 3071
    Регистрация: 22.12.2012

    {quote}{login=RAN}{date=11.04.2012 03:33}Саша, вопрос не в уникальных{/post}{/quote}Тогда в чем?

     

    Alex_ST

    Пользователь

    Сообщений: 2746
    Регистрация: 22.12.2012

    На лицо ужасный, добрый внутри

    Андрей,  
    мы с тобой об одном и том же листе «пример как есть» файла post_326322.xls говорим?  
    Если ДА, то там в столбце А ШЕСТЬ подряд идущих записей шифра товара «1.1-1-1110», которым соответствует наименование товара «Сталь угловая равнополочная общего назначения» в столбце В, и ТРИ подряд идущих записи с шифром товара 1.1-1-1111, которым соответствует точно такое же наименование товара «Сталь угловая равнополочная общего назначения» в столбце В.  
    Программа, естественно, просматривая ячейки столбца А, объединяет ШЕСТЬ подряд идущих ячеек с шифром 1.1-1-1110, а потом — ТРИ с шифром 1.1-1-1111  
    Аналогично — со столбцом В  
    И то, что разным шифрам товара у автора соответствуют одинаковые наименования, это никто кроме него самого знать не может. И никакой автоматизации это не поддаётся.  
    Я для того и написАл два макроса чтобы можно было спокойно перемещатьсортироватьудалять строки. А потом уж — наводить красоту, объединяя одинаковые ячейки.  
    Если не нужно чтобы товары с одинаковыми названиями объединялись, то нужно их просто разнести в таблице (например, вставив между ними пустую строку, которую после группировки можно будет удалить).

    С уважением, Алексей (ИМХО: Excel-2003 — THE BEST!!!)
    <#0>

     

    ran

    Пользователь

    Сообщений: 7091
    Регистрация: 21.12.2012

    Именно об этом я и говорю.  
    А для автора нужно пройти твоим макросом по столбцу А, объединить ячейки, затем пробежать снова, и объединить параллельно объединенным ячейки в В.

     

    nerv

    Пользователь

    Сообщений: 3071
    Регистрация: 22.12.2012

     

    Alex_ST

    Пользователь

    Сообщений: 2746
    Регистрация: 22.12.2012

    На лицо ужасный, добрый внутри

    К стати, я всегда стараюсь делать макросы более-менее универсальными, поэтому обычно не использую конкретных названий книг, листов, адресов…    
    А под конкретные нужды конкретного пользователя мне делать просто не интересно, т.к. это получается работа на один раз и не для себя. А оно мне нужно?  
    Потому и в темах я участвую только в тех, результат которых я в итоге смогу положить в свою копилку потом где-то когда-нибудь применить (для того и комментарии подробные пишу чтобы мне же легче по прошествии времени разбираться было).  
    Написанные в этом топике макросы я, наверное, смогу где-нибудь применить. Потому и писАл.

    С уважением, Алексей (ИМХО: Excel-2003 — THE BEST!!!)
    <#0>

     

    sanantoni

    Пользователь

    Сообщений: 240
    Регистрация: 01.01.1970

    Нашу базу теперь нужно отсортировать по шифру товара, дабы убить повторы, коих огромное количество, а проблема сортировки в том что описания в разных ячейках, Алекс, предложил разбить заполнить по верхнему значению шифр а затем сортировать и объединять как надоразбить вроде как разбили, а вот с объединением теперь проблема в макросе рана слетает в разные стороны шапка, в алекса- остается одно описание а коды разные, excel ведет себя как кошка после валерьянки

     

    nerv

    Пользователь

    Сообщений: 3071
    Регистрация: 22.12.2012

    #30

    11.04.2012 16:35:41

    Приветствую ) Если шифры повторяются, придется при разгруппировке это отслеживать, например, доп. столбец заполнять (уникальными) и при группировке ориентироваться по нему.

    Чебурашка стал символом олимпийских игр. А чего достиг ты?
    Тишина — самый громкий звук
    https://github.com/nervgh

    @pjflora 

    Maybe this information will help you … if not please just ignore it.

    You may receive an error message when you sort a range that contains merged cells in Excel

    Symptoms

    When you sort a range in a Microsoft Excel worksheet, Excel does not sort the range. Additionally, you may receive the following error message:

    This operation requires the merged cells to be identically sized.

    Cause

    This issue might occur if you sort a range of cells, and if the following conditions are true:

    • You previously merged some of the cells, but not all of the cells in the sort range.
    • You previously merged all of the cells in the sort range and the cells are not all the same size.

    Workaround

    To work around this issue, split all the merged cells in the range, or merge all the cells in the range so that the merged cells are the same size. Each merged cell in the range must occupy the same number of rows and columns as the other merged cells in the range.

    Hope I was able to help you with this info.

    NikolinoDE

    I know I don’t know anything (Socrates)

    Как объединить ячейки в Excel

    Сначала расскажем что такое объединенные ячейки в Excel и как их сделать. Тут нет ничего сложно, достаточно выделить две или более ячеек и выбрать команду на ленте Главная -> Выравнивание -> Объединить и поместить в центре.

    Важно отметить, что Excel при объединении ячеек, которые содержат значения, оставит значение только той ячейки, которая находится в верхнем левом углу выбранного диапазона. Остальные же значения будут удалены. Однако, с помощью нашей надстройки, данное недоразумение можно избежать с помощью специальной команды.

    Вы можете объединять ячейки как по горизонтали, так и по вертикали. Также можно объединить области, содержащие боле одной строки и столбца.

    Способы объединения ячеек

    Если внимательней посмотреть на команду объединения ячеек, то можно увидеть выпадающее меню, которое в свою очередь содержит следующие дополнительные действия:

    • Объединить по строкам — позволяет выбрать диапазон ячеек, который содержит несколько строк. В этом случае Excel будет создавать объединенные ячейки по одной на каждой строке
    • Объединить ячейки — объединяет выделенные ячейки в одну, но при этом не выравнивает текст в ячейке.
    • Отменить объединение ячеек — позволяет разбить объединенную ячейку на несколько.

    Какие проблемы возникают при использовании объединенных ячеек

    Как уже говорили, пользоваться объединенными ячейками стоит аккуратно, так как они ограничивают функционал Excel и могут в дальнейшем принести неприятности. Если все-таки решили пользоваться объединенными ячейками, всегда помните о следующих моментах:

    • Если диапазон содержит объединенные ячейки, то пользоваться сортировкой и фильтрацией в этом диапазоне будет невозможно.
    • Также невозможно будет преобразовать такой диапазон в таблицу (форматировать как таблицу).
    • Также можно забыть об автоматическом выравнивании ширины или высоты ячейки. Например если имеется объединенная ячейка A1:B1, то выравнять ширину столбца A уже не получится.
    • Если Вы пользуетесь горячими клавишами для навигации, например переходите в начало и конец таблицы путем сочетания клавиш Ctrl + стрелка вверх и вниз, то переход не удастся, и курсор будет «упираться» в объединенные ячейки.
    • Если вы выделяете столбцы (или строки) с помощью горячих клавиш Ctrl (Shift) +Пробел, то при наличии объединенных ячеек, вы не сможете выделить 1 столбец (или строку).

    Как найти все объединенные ячейки и разъединить их

    Чтобы разъединить все ячейки и удалить объединенные, достаточно выполнить следующие действия:

    1. Выделить все ячейки на листе. Это можно сделать путем нажатия сочетания клавиш Ctrl + A или кликнуть на черный треугольник между заголовками строк и столбцов на листе.
    2. Нажать на команду Главная -> Выравнивание -> Объединить и поместить в центре если она выделена. Если же она не выделена, значит выбранный лист не содержит объединенных ячеек.

    Если же необходимо найти все объединенные ячейки в книге, то это можно сделать через панель поиска. Для этого выполните следующие шаги:

    1. Откройте окно Найти и заменить. Сделать это можно сочетанием клавиш Ctrl + F.
    2. Поле Найти оставьте пустым и нажмите на кнопку Параметры.
    3. Должна отобразиться кнопка Формат. Нажмите левой кнопкой мыши по ней.
    4. В диалоговом окне Найти формат на вкладке Выравнивание выберите опцию Объединение ячеек. Далее нажмите Ok.
    5. В диалоговом окне Найти и заменить нажмите Найти далее или Найти все в зависимости от вашей дальнейшей задачи.

    Альтернативы использования объединенных ячеек

    Как правило объединенные ячейки применяют для целей выравнивания текста. Однако мало кто знает, что текст можно выровнять и без объединения ячеек и потери функционала. Для этого можно использовать обычное форматирование ячеек:

    1. Выделите диапазон ячеек, который хотите отцентрировать. При этом сам текст должен содержаться в левой верхней ячейке.
    2. Выберите команду формат ячеек или нажмите сочетание клавиш Ctrl + 1.
    3. В диалоговом окне Формат ячеек перейдите на вкладку Выравнивание.
    4. В выпадающем списке выравнивания по горизонтали выберите значение по центру выделения и нажмите OK.

    Еще один способ избежать объединения ячеек — это использовать надписи. В них также можно вставлять текст и выбирать направление текста по вертикали. Способ конечно также накладывает много ограничений, но в каких-то случаях имеет место быть.

    Все способы можно скачать нажав кнопку вначале статьи.

    Признаки

    При попытке отсортировать диапазон на листе Microsoft Excel этот диапазон не сортируется. Кроме того, вы можете получить следующее сообщение об ошибке:

    Для выполнения этой операции Объединенные ячейки должны иметь одинаковый размер.

    Причина

    Эта проблема может возникнуть при сортировке диапазона ячеек и при соблюдении следующих условий:

    • Ранее вы объединили некоторые ячейки, но не все ячейки в диапазоне сортировки.
    • Ранее вы объединили все ячейки в диапазоне сортировки и ячейки имеют одинаковый размер.

    Временное решение

    Чтобы обойти эту проблему, разделите все объединенные ячейки в диапазоне или объедините все ячейки в диапазоне, чтобы объединенные ячейки совпадали с размером. Каждая Объединенная ячейка в диапазоне должна занимать то же количество строк и столбцов, что и другие объединенные ячейки в диапазоне.

    Действия по воспроизведению проблемы

    На листе введите следующие данные:

    Объедините ячейки a1 и B1, a2 и B2, а затем a3 и B3. Для этого выполните следующие действия:

    Выделите каждую из этих ячеек.

    В меню Формат выберите пункт ячейки.

    В Microsoft Office Excel 2007 щелкните средство запуска диалогового окна Выравнивание в группе Выравнивание на вкладке Главная.

    Перейдите на вкладку Выравнивание и установите флажок объединить ячейки .

    Нажмите кнопку ОК.

    Не объединяйте ячейки в столбце C.

    Выберите ячейки a1: C3, выберите пункт Сортировка в меню данные , а затем нажмите кнопку ОК.

    В Excel 2007 выберите сортировка & фильтр в группе » Правка » на вкладке » Главная » и нажмите кнопку Настраиваемая сортировка.

    В поле Сортировать нажмите кнопку ОК.

    Хочу отсортировать таблицу, но комп выдаёт ошибку такого типа:

    «Эта ошибка возникает только в случае, когда предпринимается попытка отсортировать диапазон ранее объединенных ячеек, но не все ячейки этого диапазона сортировки объединены или имеют одинаковый размер.
    Чтобы избежать этой ошибки, разделите все объединенные ячейки в диапазоне, либо объедините все ячейки так, чтобы размеры групп объединенных ячеек совпадали с размером самой большой группы.»

    Но мне нужна эта сортировка как раз для того, чтобы удалить вторую часть объединённых ячеек. Есть ли общая команда для их разделения, а затем дальнейшей сортировки?

    Сортировка столбца с объединенными ячейками.

    Amator

    Дата: Понедельник, 26.05.2014, 17:04 |
    Сообщение № 1

    Группа: Проверенные

    Ранг: Форумчанин

    Сообщений: 107


    Репутация:

    0

    ±

    Замечаний:
    0% ±


    Excel 2007

    Здравствуйте уважаемые. Помогите с макросом для сортировки по дате (В4:В433). Если дата одинакова тогда по номеру ТТН (G4:G433). Может у кого есть пример. Спасибо.

    К сообщению приложен файл:

    3669328.xlsm
    (71.5 Kb)

     

    Ответить

    Amator

    Дата: Понедельник, 26.05.2014, 22:17 |
    Сообщение № 2

    Группа: Проверенные

    Ранг: Форумчанин

    Сообщений: 107


    Репутация:

    0

    ±

    Замечаний:
    0% ±


    Excel 2007

    НЕУЖЕЛИ НЕТ РЕШЕНИЯ ЭТОЙ ЗАДАЧИ ? Помогите кто-нибудь.

     

    Ответить

    Alex_ST

    Дата: Понедельник, 26.05.2014, 22:40 |
    Сообщение № 3

    Группа: Друзья

    Ранг: Участник клуба

    Сообщений: 3176


    Репутация:

    604

    ±

    Замечаний:
    0% ±


    2003

    Кардинальное решение есть — избавляться от объединённых ячеек!
    Объединённые ячейки — ЗЛО!!!
    Если ещё не поздно, меняйте структуру данных.
    Можно, конечно, применить и «костыль для увечного» — переформатировать объединённые ячейки так, чтобы можно было нормально фильтровать. Тогда, вполне возможно, можно будет и сортировать. Надо пробовать.
    Например, переобъединить ячейки методом, описанным в топике Макрос «ReMerge», подпилив его таким образом, чтобы в скрываемых ячейках писалась не формула-ссылка на первую ячейку объединённого диапазона, а значения из неё (как это сделать, посмотрите в топике Макрос «MergePlus»)
    Но даже если и заработает, потом всё равно намучаетесь: стоит кому-нибудь разъединить хитро объединённую ячейку, как объединить её обратно так же как было он без макроса не сможет.
    Объединённые ячейки — ЗЛО!!!



    С уважением,
    Алексей
    MS Excel 2003 — the best!!!

    Сообщение отредактировал Alex_STПонедельник, 26.05.2014, 22:42

     

    Ответить

    Amator

    Дата: Вторник, 27.05.2014, 15:41 |
    Сообщение № 4

    Группа: Проверенные

    Ранг: Форумчанин

    Сообщений: 107


    Репутация:

    0

    ±

    Замечаний:
    0% ±


    Excel 2007

    Скажите ALEX ST .А как сделать таким образом . Создать временный лист . Скопировать в него нужный диапазон .Разъединить ячейки .Отсортировать. Обратно объединить. Скопировать на исходный лист. Временный лист удалить .

     

    Ответить

    Amator

    Дата: Вторник, 27.05.2014, 16:07 |
    Сообщение № 5

    Группа: Проверенные

    Ранг: Форумчанин

    Сообщений: 107


    Репутация:

    0

    ±

    Замечаний:
    0% ±


    Excel 2007

    Alex_ST, посмотрите , пожалуйста сообщение №4

     

    Ответить

    RAN

    Дата: Вторник, 27.05.2014, 16:23 |
    Сообщение № 6

    Группа: Друзья

    Ранг: Экселист

    Сообщений: 5645


    Быть или не быть, вот в чем загвоздка!

     

    Ответить

    nilem

    Дата: Вторник, 27.05.2014, 17:18 |
    Сообщение № 7

    Группа: Авторы

    Ранг: Старожил

    Сообщений: 1612


    Репутация:

    563

    ±

    Замечаний:
    0% ±


    Excel 2013, 2016

    … и совсем даже не зло (просто мороки больше):)
    например:
    [vba]

    Код

    Sub ertert()
    Dim i&: Application.ScreenUpdating = False
    With Range(«A4:AD433»)
         .UnMerge
         .Columns(31).Value = .Columns(2).Value
         .Columns(32).Value = .Columns(7).Value
         .Columns(31).Resize(, 2).SpecialCells(4).FormulaR1C1 = «=R[-1]C»
         With .Resize(, .Columns.Count + 2)
             .Sort Key1:=.Cells(1, 31), Order1:=xlAscending, _
                   Key2:=.Cells(1, 32), Order2:=xlAscending
         End With
         .Columns(31).Resize(, 2).ClearContents
         For i = 1 To 430 Step 5
             .Cells(i, 1).Resize(5).Merge
             .Cells(i, 2).Resize(5).Merge
             .Cells(i, 7).Resize(5).Merge
         Next
    End With
    Application.ScreenUpdating = True
    End Sub

    [/vba]


    Яндекс.Деньги 4100159601573

     

    Ответить

    Alex_ST

    Дата: Вторник, 27.05.2014, 21:29 |
    Сообщение № 8

    Группа: Друзья

    Ранг: Участник клуба

    Сообщений: 3176


    Репутация:

    604

    ±

    Замечаний:
    0% ±


    2003

    Создать временный лист . Скопировать в него нужный диапазон .Разъединить ячейки .Отсортировать.

    После разъединения ячеек данные останутся только в первой. В остальных — пусто. И как они (пустые ячейки) будут сортироваться?
    Именно для того, чтобы в скрытых под объединением ячейках были прописаны данные (что обычный Excel не может и честно об этом предупреждает перед объединением не пустых ячеек) и предназначены макросы, на которые я давал ссылки.

    4 nilem,
    Николай, твой код видел, но не разбирал. Был бешеный день. Только сейчас залез в и-нет. Башка не варит абсолютно. Извини.



    С уважением,
    Алексей
    MS Excel 2003 — the best!!!

     

    Ответить

    Amator

    Дата: Вторник, 27.05.2014, 23:08 |
    Сообщение № 9

    Группа: Проверенные

    Ранг: Форумчанин

    Сообщений: 107


    Репутация:

    0

    ±

    Замечаний:
    0% ±


    Excel 2007

    RAN, Подставил данный код , работает не коректно. Посмотрите , пожалуйста .

    К сообщению приложен файл:

    5441868.xlsm
    (77.5 Kb)

     

    Ответить

    RAN

    Дата: Вторник, 27.05.2014, 23:23 |
    Сообщение № 10

    Группа: Друзья

    Ранг: Экселист

    Сообщений: 5645

    Этот код вроде nilem писал. <_<
    Я тут с какого бока?


    Быть или не быть, вот в чем загвоздка!

     

    Ответить

    Alex_ST

    Дата: Вторник, 27.05.2014, 23:27 |
    Сообщение № 11

    Группа: Друзья

    Ранг: Участник клуба

    Сообщений: 3176


    Репутация:

    604

    ±

    Замечаний:
    0% ±


    2003

    Нет, Андрей! Ты же профессионал и должен сам понять, из какого из указанных по твоей ссылке топиков и из какого из их постов Amator взял код, который у него не работает, и куда его вставил :)



    С уважением,
    Алексей
    MS Excel 2003 — the best!!!

     

    Ответить

    RAN

    Дата: Вторник, 27.05.2014, 23:35 |
    Сообщение № 12

    Группа: Друзья

    Ранг: Экселист

    Сообщений: 5645

    А че понимать то?
    ertert кто еще пишет? :)


    Быть или не быть, вот в чем загвоздка!

     

    Ответить

    nilem

    Дата: Среда, 28.05.2014, 09:27 |
    Сообщение № 13

    Группа: Авторы

    Ранг: Старожил

    Сообщений: 1612


    Репутация:

    563

    ±

    Замечаний:
    0% ±


    Excel 2013, 2016

    работает не коректно. Посмотрите , пожалуйста .

    Посмотрел, вроде все норм. Что именно не корректно?


    Яндекс.Деньги 4100159601573

     

    Ответить

    Amator

    Дата: Среда, 28.05.2014, 11:08 |
    Сообщение № 14

    Группа: Проверенные

    Ранг: Форумчанин

    Сообщений: 107


    Репутация:

    0

    ±

    Замечаний:
    0% ±


    Excel 2007

    nilem, после сортировки бросает в конец диапазона. Файл в сообщение №9.

     

    Ответить

    nilem

    Дата: Среда, 28.05.2014, 11:42 |
    Сообщение № 15

    Группа: Авторы

    Ранг: Старожил

    Сообщений: 1612


    Репутация:

    563

    ±

    Замечаний:
    0% ±


    Excel 2013, 2016

    кажется, увидел
    попробуйте так:
    [vba]

    Код

    Sub ertert()
    Dim i&, r As Range: Application.ScreenUpdating = False
    With Range(«A4:AD433»)
         .UnMerge
         .Columns(31).Value = .Columns(2).Value
         .Columns(32).Value = .Columns(7).Value
         For Each r In .Columns(2).SpecialCells(2)
             r(2, 30).Resize(4, 2).FormulaR1C1 = «=R[-1]C»
         Next r
         With .Resize(, .Columns.Count + 2)
             .Sort Key1:=.Cells(1, 31), Order1:=xlAscending, _
                   Key2:=.Cells(1, 32), Order2:=xlAscending
         End With
         .Columns(31).Resize(, 2).ClearContents
         For i = 1 To 430 Step 5
             .Cells(i, 1).Resize(5).Merge
             .Cells(i, 2).Resize(5).Merge
             .Cells(i, 7).Resize(5).Merge
         Next
    End With
    Application.ScreenUpdating = True
    End Sub

    [/vba]


    Яндекс.Деньги 4100159601573

     

    Ответить

    Amator

    Дата: Среда, 28.05.2014, 12:06 |
    Сообщение № 16

    Группа: Проверенные

    Ранг: Форумчанин

    Сообщений: 107


    Репутация:

    0

    ±

    Замечаний:
    0% ±


    Excel 2007

    nilem, спасибо , код работает как надо .Нужна одна поправка : столбец «А» не трогать , потому что изменяется нумерация .Или чтоб код после сортировки сделал новую нумерацию в столбце «А».

     

    Ответить

    nilem

    Дата: Среда, 28.05.2014, 14:49 |
    Сообщение № 17

    Группа: Авторы

    Ранг: Старожил

    Сообщений: 1612


    Репутация:

    563

    ±

    Замечаний:
    0% ±


    Excel 2013, 2016

    можно попробовать изменить индексы:
    [vba]

    Код

    Sub ertert()
    Dim i&, r As Range: Application.ScreenUpdating = False
    With Range(«B4:AD433»)
         .UnMerge
         .Columns(30).Value = .Columns(1).Value
         .Columns(31).Value = .Columns(6).Value
         For Each r In .Columns(1).SpecialCells(2)
             r(2, 30).Resize(4, 2).FormulaR1C1 = «=R[-1]C»
         Next r
         With .Resize(, .Columns.Count + 2)
             .Sort Key1:=.Cells(1, 30), Order1:=xlAscending, _
                   Key2:=.Cells(1, 31), Order2:=xlAscending
         End With
         .Columns(30).Resize(, 2).ClearContents
         For i = 1 To 430 Step 5
             .Cells(i, 1).Resize(5).Merge
             .Cells(i, 6).Resize(5).Merge
         Next
    End With
    Application.ScreenUpdating = True
    End Sub

    [/vba]


    Яндекс.Деньги 4100159601573

     

    Ответить

    Amator

    Дата: Среда, 28.05.2014, 21:54 |
    Сообщение № 18

    Группа: Проверенные

    Ранг: Форумчанин

    Сообщений: 107


    Репутация:

    0

    ±

    Замечаний:
    0% ±


    Excel 2007

    nilem, большое спасибо ! Работает отлично.

     

    Ответить

    Понравилась статья? Поделить с друзьями:
  • Excel не сортирует значения
  • Excel не суммирует суммы
  • Excel не сортирует данные от а до я
  • Excel не суммирует пустые ячейки
  • Excel не суммирует отрицательные числа