Как отсортировать пустые ячейки в excel
Перейти к содержимому

Как отсортировать пустые ячейки в excel

  • автор:

Как отсортировать пустые ячейки в excel

Argument ‘Topic id’ is null or empty

Сейчас на форуме

© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru

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

ООО «Планета Эксел»
ИНН 7735603520
ОГРН 1147746834949
ИП Павлов Николай Владимирович
ИНН 633015842586
ОГРНИП 310633031600071

Пустые ячейки в Excel. Бесплатные примеры и статьи.

Используем Условное форматирование для выделения на листе MS EXCEL незаполненных пользователем ячеек.

update Опубликовано: 05 декабря 2012

Удаляем в MS EXCEL пустые строки в таблице

Часто, особенно при импорте данных в EXCEL , на листе могут формироваться таблицы с ПОЛНОСТЬЮ пустыми строками. Научимся быстро удалять эти ненужные строки, которые в дальнейшем могут затруднить работу с …

update Опубликовано: 25 апреля 2013

Заполнение пустых ячеек в MS EXCEL

Вместо того, чтобы вводить повторяющиеся данные, в таблице часто оставляют незаполненные ячейки. Наличие пустых ячеек в таблице затрудняет применение фильтров , сортировку и построение Сводных таблиц . Заполним пустые ячейки …

update Опубликовано: 26 апреля 2013

Удаляем в MS EXCEL пропуски в списке формулами (удалить пустые ячейки и нули в таблице)

Если список значений содержит пропуски (пустые ячейки), то это может существенно затруднить его дальнейший анализ. С помощью формул уберем пустые ячейки из колонки с данными. Также напишем формулу, чтобы удалить …

update Опубликовано: 24 апреля 2013

Подсчет пустых ячеек в MS EXCEL

Подсчет пустых ячеек? Имеется в виду ничего не содержащих ячеек? А есть разница? Разбираемся подробнее.

Сортировка списка данных в Excel для Mac

В Excel можно сортировать числа, текст, рабочие дни, месяцы или элементы настраиваемых списков, которые вы создаете. Можно также выполнять сортировку по цвету шрифта, цвету ячеек или наборам значков. При сортировке можно учитывать регистр.

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

Поле числовых форматов

  • Если столбцы содержат как числа, хранящиеся в числовом формате, так и числа, хранящиеся в текстовом формате, они будут сортироваться неправильно. Числа, сохраненные в виде текста, выравниваются по левому краю, а не по правому. Чтобы привести выделенные числа к единому формату, на вкладке Главная в поле Числовой формат выберите Текст или Число.

Сортировка столбца

Значок сортировки в порядке возрастания

  1. Щелкните ячейку в одном из столбцов, которые хотите отсортировать. Данные в соседних столбцах будут отсортированы в соответствии с данными в выделенном столбце.
  2. На вкладке Данные выберите вариант По возрастанию

Значок сортировки в порядке убывания

или По убыванию

Порядок сортировки Команда
Наименьшие значения в верхней части столбца От А до Я
Наибольшие значения в верхней части столбца От Я до А

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

Сортировка списка по двум или трем столбцам

Можно выполнять сортировку по нескольким столбцам, добавляя уровни условий сортировки. Например, можно отсортировать отчет о продажах по регионам, затем по дате, а затем по продавцам. Каждый уровень сортировки представлен одной строкой в диалоговом окне «Сортировка».

На вкладке

  1. Щелкните ячейку в одном из столбцов, которые хотите отсортировать.
  2. На вкладке Данные выберите элемент Сортировка.

Совет: Если нужный порядок сортировки в списке отсутствует, выберите Настраиваемый список. Если настраиваемого списка с нужным порядком сортировки нет, см. раздел «Создание настраиваемого списка для сортировки».

Значок

  • Если в действии 5 вы выбрали Цвет ячейки, Цвет шрифта или Значок ячейки, то в разделе Цвет/значок щелкните строку, а затем в контекстном меню выберите нужные условия.
  • Для каждого дополнительного столбца, по которому нужно выполнить сортировку, нажмите кнопку Добавить уровень.

    Сортировка списка по строкам

    Примечание: Эту операцию невозможно выполнить в таблице. Чтобы удалить табличное форматирование для сортировки по строкам, на вкладке Таблица выберите элемент Преобразовать в диапазон.

    На вкладке

    1. Щелкните ячейку в строке, по которой нужно выполнить сортировку.
    2. На вкладке Данные выберите элемент Сортировка.

    Совет: Если нужный порядок сортировки в списке отсутствует, выберите Настраиваемый список. Если настраиваемого списка с нужным порядком сортировки нет, см. раздел «Создание настраиваемого списка для сортировки».

    Значок

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

    Создание настраиваемого списка для сортировки

    В Excel есть настраиваемые списки, по которым можно выполнять сортировку. Эти списки содержат дни недели и месяцы года. Вы также можете создавать собственные настраиваемые списки, которые будет содержать, например, год обучения в образовательном учреждении (первый курс, второй курс, третий курс, выпускной курс). Чтобы использовать созданный настраиваемый список, в окне «Сортировка» в разделе Порядок выберите Настраиваемый список.

    1. В меню Excel щелкните Параметры, а затем в разделе Формулы и списки выберите Пользовательские списки.
    2. Нажмите кнопку Добавить.
    3. Введите значения для вашего списка в том порядке, в каком они будут сортироваться, разделяя их запятыми.
    4. Закончив, нажмите кнопку Добавить, а затем закройте окно «Пользовательские списки».

    Сортировка по настраиваемым спискам

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

    На вкладке

    1. Щелкните ячейку в одном из столбцов, которые хотите отсортировать.
    2. На вкладке Данные выберите элемент Сортировка.

    Примечание: Порядок сортировки настраиваемого списка применяется только к столбцу, указанному в разделе Столбец. Для сортировки нескольких столбцов по дням недели, месяцам или другому настраиваемому списку, выполните действия из раздела «Сортировка списка по двум или трем столбцам» отдельно для каждого столбца.

    Сортировка значений даты и времени

    Значок сортировки в порядке возрастания

    1. Выделите столбец со значениями даты или времени в диапазоне ячеек или таблице.
    2. На вкладке Данные выберите вариант По возрастанию

    Значок сортировки в порядке убывания

    или По убыванию

    Примечание: Если вы не получили ожидаемых результатов, проверьте, не сохранены ли значения даты или времени как текст или числа. Чтобы сохранить числа в формате даты или времени, выделите столбец, а затем на вкладке Главная в поле Числовой формат выберите Дата или Время.

    Сортировка текста с учетом регистра

    На вкладке

    1. Щелкните ячейку в одном из столбцов, которые хотите отсортировать.
    2. На вкладке Данные выберите элемент Сортировка.

    Сортировка по цвету ячейки, цвету шрифта или значку

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

    На вкладке

    1. Щелкните ячейку в одном из столбцов, которые хотите отсортировать.
    2. На вкладке Данные выберите элемент Сортировка.

    Значок

  • Если данные содержат строку заголовка, установите флажок В списке есть заголовки. Если данные не содержат строку заголовка, снимите флажок В списке есть заголовки.
  • В разделе Столбец щелкните пустое пространство рядом с элементом Затем по и в контекстном меню выберите столбец, по которому нужно выполнять сортировку.
  • В разделе Сортировка щелкните элемент Значения и в контекстном меню выберите Цвет ячейки, Цвет шрифта или Значок ячейки.
  • В разделе Цвет/значок выберите цвет или значок.
  • В разделе Порядок укажите, где должен находиться выбранный цвет или значок: в начале или в конце списка.
  • Для каждого дополнительного столбца, по которому нужно выполнить сортировку, нажмите кнопку Добавить уровень.

    Сортировка одного столбца в диапазоне ячеек без влияния на другие столбцы

    Важно: Будьте внимательны при использовании этой функции. Сортировка по одному столбцу в диапазоне может привести к нежелательным результатам, например перемещению ячеек в этом столбце далеко от других ячеек в той же строке.

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

    Примечание: Эту операцию невозможно выполнить в таблице. Чтобы удалить табличное форматирование для сортировки одного столбца, на вкладке Таблица выберите элемент Преобразовать в диапазон.

    На вкладке

  • Выделите данные столбца, которые хотите отсортировать.
  • На вкладке Данные выберите элемент Сортировка.

    Значок

    В окне предупреждения выберите вариант Сортировать в пределах указанного выделения и нажмите кнопку Сортировка. Если результаты вас не устраивают, нажмите кнопку Отменить

    Дополнительные сведения о сортировке

    Анализ данных начинается с сортировки. Сортировать можно по тексту (от А к Я или от Я к А), числам (от наименьших к наибольшим или от наибольших к наименьшим), а также датам и времени (от старых к новым или от новых к старым) в одном или нескольких столбцах. Вы также можете сортировать по настраиваемой списку, который вы сами создадите (например, «Большой», «Средний» и «Маленький»). Можно также сортировать по формату, включая цвет ячейки, цвет шрифта или набор значков. Чаще всего сортировка будет происходить по столбцам, но также можно сортировать по строкам.

    Когда вы сортируете данные, изменяется их порядок. С другой стороны, при применении фильтра скрываются ненужные данные. Дополнительные сведения о фильтрации см. в статье Фильтрация списка данных.

    При сортировке диапазона ячеек условия сортировки не сохраняются вместе с книгой. Если вы хотите сохранить условия сортировки, чтобы применить их при следующем открытии книги, можно сохранить данные как Excel table. Сохраняйте данные в таблице, если вы сортируете несколько столбцов или используете сложные условия сортировки, настройка которых занимает много времени.

    При повторном применении условий сортировки могут отобразиться другие результаты. Это может произойти, если значения, возвращаемые формулой, изменились, а лист был пересчитан. Кроме того, это может происходить в случае добавления, изменения или удаления данных в диапазоне ячеек или столбце таблицы.

    Excel выполняет сортировку данных в следующем порядке: 0 1 2 3 4 5 6 7 8 9 (пробел) ! » # $ % & ( ) * , . / : ; ? @ [ \ ] ^ _ ` < | >~ + < = >a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z а б в г д е ё ж з и й к л м н о п р с т у ф х ц ч ш щ ь ы ъ э ю я А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я ИСТИНА ЛОЖЬ (ошибки листов) (пустые ячейки).

    Сортировка столбца

    1. Щелкните ячейку в одном из столбцов, которые хотите отсортировать. Данные в соседних столбцах будут отсортированы в соответствии с данными в выбранном столбце.
    2. На вкладке Данные в разделе Сортировка и фильтр щелкните стрелку рядом с кнопкой Сортировать.
    Порядок сортировки Команда
    Наименьшие значения в верхней части столбца По возрастанию
    Наибольшие значения в верхней части столбца По убыванию

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

    Сортировка списка по двум или трем столбцам

    Можно выполнять сортировку по нескольким столбцам, добавляя уровни условий сортировки. Например, можно отсортировать отчет о продажах по регионам, затем по дате, а затем по продавцам. Каждый уровень сортировки представлен одной строкой в диалоговом окне «Сортировка».

    1. Щелкните ячейку в одном из столбцов, которые хотите отсортировать.
    2. На вкладке Данные в разделе Сортировка и фильтр щелкните стрелку рядом с элементом Сортировать и выберите пункт Настраиваемая сортировка.

    Сортировка списка по строкам

    1. Щелкните ячейку в строке, по которой нужно выполнить сортировку.
    2. На вкладке Данные в разделе Сортировка и фильтр щелкните стрелку рядом с элементом Сортировать и выберите пункт Настраиваемая сортировка.

    Создание настраиваемого списка для сортировки

    В Excel есть настраиваемые списки, по которым можно выполнять сортировку. Эти списки содержат дни недели и месяцы года. Вы также можете создавать собственные настраиваемые списки, которые будет содержать, например, год обучения в образовательном учреждении (первый курс, второй курс, третий курс, выпускной курс).

      В меню Excel щелкните Параметры, а затем в разделе Формулы и списки выберите Настраиваемые списки

    Сортировка по настраиваемым спискам

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

    1. Щелкните ячейку в одном из столбцов, которые хотите отсортировать.
    2. На вкладке Данные в разделе Сортировка и фильтр щелкните стрелку рядом с элементом Сортировать и выберите пункт Настраиваемая сортировка.

    Примечание: Порядок сортировки настраиваемого списка применяется только к столбцу, указанному в разделе Столбец. Для сортировки нескольких столбцов по дням недели, месяцам или другому настраиваемому списку, выполните действия из раздела «Сортировка списка по двум или трем столбцам» отдельно для каждого столбца.

    Сортировка значений даты и времени

    1. Выделите столбец со значениями даты или времени в диапазоне ячеек или таблице.
    2. На вкладке Данные в разделе Сортировка и фильтр щелкните стрелку рядом с элементом Сортировать и выберите пункт По возрастанию или По убыванию.

    Примечание: Если вы не получили ожидаемых результатов, проверьте, не сохранены ли значения даты или времени как текст или числа. Чтобы сохранить числа в формате даты или времени, выделите столбец, а затем на вкладке Главная в разделе Число выберите Числовой формат и щелкните Дата или Время.

    Сортировка по цвету ячейки, цвету шрифта или значку

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

    1. Щелкните ячейку в одном из столбцов, которые хотите отсортировать.
    2. На вкладке Данные в разделе Сортировка и фильтр щелкните стрелку рядом с элементом Сортировать и выберите пункт Настраиваемая сортировка.

    Сортировка одного столбца в диапазоне ячеек без влияния на другие столбцы

    Важно: Будьте внимательны при использовании этой функции. Сортировка по одному столбцу в диапазоне может привести к нежелательным результатам, например перемещению ячеек в этом столбце далеко от других ячеек в той же строке.

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

    Примечание: Эту операцию невозможно выполнить в таблице.
    Сортировка текста на китайском языке по произношению иероглифов или номерам черт

    Текст на китайском языке можно сортировать по произношению иероглифов или номерам черт.

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

    1. Щелкните ячейку в одном из столбцов, которые хотите отсортировать.
    2. На вкладке Данные в разделе Сортировка и фильтр щелкните стрелку рядом с элементом Сортировать и выберите пункт Настраиваемая сортировка.
    Задача Необходимые действия
    Сортировка сверху вниз В разделе Ориентация выберите вариант Строки диапазона.
    Сортировка слева направо В разделе Ориентация выберите вариант Столбцы диапазона.
    Сортировка по чертам В разделе Способ щелкните По чертам.
    Сортировка по слогам В разделе Способ щелкните По слогам.

    Примечание: Порядок сортировки настраиваемого списка применяется только к столбцу, указанному в разделе Столбец. Для сортировки нескольких столбцов по дням недели, месяцам или другому настраиваемому списку, выполните действия из раздела «Сортировка списка по двум или трем столбцам» отдельно для каждого столбца.

    Дополнительные сведения о сортировке

    Анализ данных начинается с сортировки. Сортировать можно по тексту (от А к Я или от Я к А), числам (от наименьших к наибольшим или от наибольших к наименьшим), а также датам и времени (от старых к новым или от новых к старым) в одном или нескольких столбцах. Вы также можете сортировать по настраиваемой списку, который вы сами создадите (например, «Большой», «Средний» и «Маленький»). Можно также сортировать по формату, включая цвет ячейки, цвет шрифта или набор значков. Чаще всего сортировка будет происходить по столбцам, но также можно сортировать по строкам.

    Когда вы сортируете данные, изменяется их порядок. С другой стороны, при применении фильтра скрываются ненужные данные. Дополнительные сведения о фильтрации см. в статье Фильтрация списка данных.

    При сортировке диапазона ячеек условия сортировки не сохраняются вместе с книгой. Если вы хотите сохранить условия сортировки, чтобы применить их при следующем открытии книги, можно сохранить данные как Excel table. Сохраняйте данные в таблице, если вы сортируете несколько столбцов или используете сложные условия сортировки, настройка которых занимает много времени.

    При повторном применении условий сортировки могут отобразиться другие результаты. Это может произойти, если значения, возвращаемые формулой, изменились, а лист был пересчитан. Кроме того, это может происходить в случае добавления, изменения или удаления данных в диапазоне ячеек или столбце таблицы.

    Excel выполняет сортировку данных в следующем порядке: 0 1 2 3 4 5 6 7 8 9 (пробел) ! » # $ % & ( ) * , . / : ; ? @ [ \ ] ^ _ ` < | >~ + < = >a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z а б в г д е ё ж з и й к л м н о п р с т у ф х ц ч ш щ ь ы ъ э ю я А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я ИСТИНА ЛОЖЬ (ошибки листов) (пустые ячейки).

    Как отсортировать пустые ячейки в excel

    Подскажите, пожалуйста, как отсортировать иерархический (древовидный) список строк с пустыми ячейками (сначала по первому столбцу, потом по второму и т.д.).
    В приведенном примере сортировать нужно только по столбцам A, B и C, но их может быть от 1 до 6. Пустые ячейки нужно сохранить — т.е. их конечно можно для правильной сортировки заполнить чем-то, но потом надо снова очистить. Знания VBA к сожалению минимальны.

    Исходный список: ----A---- ----B---- ----C---- ----D------ 2002 год высокое квартал 4 среднее квартал 2 в работе неделя 2 низкое неделя 1 высокое квартал 3 среднее неделя 2 среднее неделя 1 низкое неделя 4 высокое 2001 год среднее квартал 2 низкое неделя 4 нет данных неделя 1 около нуля 2003 год высокое Требуемый список: 2001 год среднее квартал 2 низкое неделя 1 около нуля неделя 4 нет данных 2002 год высокое квартал 2 в работе неделя 1 высокое неделя 2 низкое квартал 3 среднее неделя 1 низкое неделя 2 среднее неделя 4 высокое квартал 4 среднее 2003 год высокое

    Программист VBA
    СуперМодератор
    Регистрация: 13.07.2008
    Сообщений: 6,856

    Пустые ячейки нужно сохранить — т.е. их конечно можно для правильной сортировки заполнить чем-то, но потом надо снова очистить.

    Скорее всего, только так и получится отсортировать.
    Заполнить ячейки, в принципе, не проблема, очистить их потом — тоже.

    Прикрепите файл.

    Объясните, как должна осуществляться сортировка:

    1 вариант: на листе 2 кнопки — заполнить и очистить. Вы нажимаете кнопку Заполнить, потом вручную сортируете как надо, после чего нажимаете Очистить

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

    __ Полезные надстройки для Excel. Парсинг сайтов и файлов.
    Макросы любой сложности на заказ. Мониторинг цен конкурентов

    EducatedFool
    Посмотреть профиль
    Найти ещё сообщения от EducatedFool

    Пользователь
    Регистрация: 28.03.2009
    Сообщений: 18

    Прикрепите файл
    Объясните, как должна осуществляться сортировка

    Конечно, более универсальный вариант предпочтительнее. Таким вроде бы выглядит вариант 1. Но главное, чтобы сортировку можно было сделать по нескольким столбцам: в одном случае — по двум, в другом — по пяти и т.д. и чтоб столбцы эти не очень сложным способом можно было указать. И еще — сортировка должна работать как минимум в Excel 2002-2003 (еще лучше — и для 97 тоже или универсальная).

    А может вариант 2 все-таки лучше: указал в самом макросе сортировка прямая или обратная, задал по каким столбцам сортировать, вернулся в Excel, выделил нужный диапазон строк, нажал всего одну кнопку и готово. Но лучше было бы, чтоб и столбцы, по каким сортировать, можно было указывать из Excel, а не Бейсика.

    Внимание: при заполнении пустых ячеек вручную данными из вышестоящей ячейки и стандартной сортировке (меню Данные -> Сортировка -> по возрастанию), первая строка каждой группы у меня почему-то становится последней в этой группе, что неприемлемо.

    Последний раз редактировалось domo22; 30.03.2009 в 15:43 .
    Программист VBA
    СуперМодератор
    Регистрация: 13.07.2008
    Сообщений: 6,856

    Может, как-то так?

    Нажмите сначала зелёную, а потом желтую кнопочку:

    База-пример 2.rar (15.9 Кб, 218 просмотров)

    __ Полезные надстройки для Excel. Парсинг сайтов и файлов.
    Макросы любой сложности на заказ. Мониторинг цен конкурентов

    Последний раз редактировалось EducatedFool; 30.03.2009 в 16:58 .

    EducatedFool
    Посмотреть профиль
    Найти ещё сообщения от EducatedFool

    Пользователь
    Регистрация: 28.03.2009
    Сообщений: 18

    Боже мой, программа не только правильно сортирует, она еще и элегантно оформлена! Ну это же надо! Спасибо огромное.

    Но все-таки есть несколько вопросов:

    1. Пожалуйста, опишите какие действия происходят при нажатии на Зеленую, Желтую и Красную кнопки. Хоть и мало знаний, но все-таки очень интересно.

    2. Если галочка «Отображать пустые ячейки» снята, то можно ли чтобы программа в этом случае сохраняла исходное форматирование строк? Или даже в любом случае сохраняла? А то строки и ячейки часто раскрашены в разные цвета и все пропадает. Это возможно подправить?

    3. Можно расширить помощь при нажатии на Желтую кнопку? Сейчас «Выполните сортировку через меню Excel», а сделать типа «Выделите нужный диапазон строк, а затем выполните сортировку через меню Excel. Сортировка возможна максимум по . столбцам».

    4. Длину всех трех кнопок сделать где-то на четверть меньше, они чуть длинноваты и иногда приходится тянуть ползунок, что часто неудобно.

    Программист VBA
    СуперМодератор
    Регистрация: 13.07.2008
    Сообщений: 6,856

    какие действия происходят при нажатии на Зеленую, Желтую и Красную кнопки

    Откройте VBA, и посмотрите код.
    Там 3 макроса:
    Sub ЗаполнитьПустыеЯчейки()
    Sub Очистка()
    Sub Сортировка()

    можно ли чтобы программа в этом случае сохраняла исходное форматирование строк?

    Конечно, можно. Достаточно убрать несколько строк.
    Раскраска ячеек (фон, шрифт, и полужирное начертание) реализована исключительно для наглядности.

    Можно расширить помощь при нажатии на Желтую кнопку?

    Можно. Проблема в том, что в некоторые пустые ячейки добавляется единица, что не мешает сортировке по возрастанию. Однако при сортировке по убыванию пустые ячейки надо заполнять не единицами, а строками типа «яяя». То есть макрос перед заполнением пустых ячеек должен знать, какой столбец в каком порядке будет сортироваться.

    Сейчас «Выполните сортировку через меню Excel», а сделать типа «Выделите нужный диапазон строк

    За это отвечает строка
    MsgBox «Выполните сортировку через меню Excel»
    Текст можно поставить любой.

    Длину всех трех кнопок сделать где-то на четверть меньше

    Ну, с этим Вы и сами справитесь.
    Выделите кнопку, удерживая клавишу Ctrl, и измените её размер (или перетащите на нужное место).

    __ Полезные надстройки для Excel. Парсинг сайтов и файлов.
    Макросы любой сложности на заказ. Мониторинг цен конкурентов

    EducatedFool
    Посмотреть профиль
    Найти ещё сообщения от EducatedFool

    Пользователь
    Регистрация: 28.03.2009
    Сообщений: 18

    Еще раз спасибо, теперь уже за профессионально быстрый ответ и пояснения. Однако, если у Вас еще сохранились возможность и желание отвечать мне, все-таки несколько вопросов:

    1. Прошу посмотреть исправленный код и внести правку, если нужно.
    База-пример-3.zip

    2. Правильно ли я понимаю, что сортировка строк возможна только если они находятся начиная с 3-й строки и расположены в 6-ти столбцах и идет она по 4-м столбцам? А иначе надо менять код? Или нет?

    3. Из-за слабых знаний Бейсика мне не удалось сделать сортировку по убыванию. Можете помочь и добавить второй ряд кнопок для сортировки по убыванию?

    Пользователь
    Регистрация: 23.03.2009
    Сообщений: 14
    Извините, не туда залил.

    Книга1.rar (1.7 Кб, 48 просмотров)

    Последний раз редактировалось ing60; 01.04.2009 в 04:09 . Причина: Извините, не туда залил.
    Программист VBA
    СуперМодератор
    Регистрация: 13.07.2008
    Сообщений: 6,856

    Правильно ли я понимаю, что сортировка строк возможна только если они находятся начиная с 3-й строки и расположены в 6-ти столбцах и идет она по 4-м столбцам? А иначе надо менять код? Или нет?

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

    К примеру, надо отсортировать таблицу по 4-му столбцу (в данном случае неважно, по возрастанию или по убыванию).
    Для этого мы во избежание перемешивания строк вынуждены задать сортировку не только по 4-му столбцу, а по всем столбцам, начиная с первого, и заканчивая 4-м.

    И всё бы хорошо, но у меня не установлен Excel 2007. а 2003-я версия не позволяет задать более 3 уровней сортировки:

    В Office Excel 2007 с помощью расширенных средств сортировки и фильтрации можно быстро представить данные в листе таким образом, чтобы получить нужные ответы. Например, теперь можно сортировать данные по цветам и по большему, чем 3 (вплоть до 64), количеству уровней. Можно также фильтровать данные по цветам или датам, отображать более 1000 элементов в раскрывающемся списке «Автофильтр», выделять несколько элементов для фильтрации и фильтровать данные в сводных таблицах.

    Поэтому я не могу предложить Вам универсального решения задачи средствами Excel 2003.

    В общем случае решение может выглядеть так:
    1) Во второй (пустой) строке листа пользователь для каждого столбца (или только для некоторых столбцов) выбирает режим сортировки
    (неважно, как именно — при помощи флажков, или выпадающего списка в ячейке) — по убыванию или по возрастанию

    2) Уже после этого выбора пользователь нажимает зелёную кнопку для заполнения таблицы (пустые ячейки в каждом столбце теперь заполняются значениями «1» или «яяя» — в зависимости от режима сортировки в текущем столбце)

    3) Нажимать желтую кнопочку для сортировки нет необходимости — поскольку критерии сортировки указаны, она будет выполнена автоматически.

    Но, повторюсь, Excel 2007 у меня не установлен, поэтому реализовать и проверить макрос я не могу.

    Ну а то, что строго заданы диапазоны ячеек:

    Const ДиапазонДляЗаполнения = "a:d" Const ДиапазонДляСортировки = "a:f" sh.[3:65000]

    так это не проблема (это было сделано лишь в качестве примера)

    Макрос легко может определить границы таблицы (если Вы укажете критерии), и, соответственно, осуществлять обработку нужного диапазона.

    __ Полезные надстройки для Excel. Парсинг сайтов и файлов.
    Макросы любой сложности на заказ. Мониторинг цен конкурентов

    EducatedFool
    Посмотреть профиль
    Найти ещё сообщения от EducatedFool
  • Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *