Автоматически сортировать поля в MS Excel - PullRequest
2 голосов
/ 21 января 2011

Я хочу автоматически сортировать поля в Excel при вводе новых данных. Предположим, у меня есть следующие данные,

Abc
Bcd
Efg
Hij.

Если я введу такие значения, как 'Cde' или 'fgh', они должны автоматически сортироваться и перемещаться в соответствующее место. Как я могу сделать это в MS Excel 2007?

Также в моем MS Excel 2007 Просмотр кода при щелчке правой кнопкой мыши листа, а также Visual Basic и макросы на вкладке разработчика отключены. Пожалуйста, помогите мне с вашими предложениями.

1 Ответ

1 голос
/ 28 февраля 2012

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

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

  1. UPPER каждое значение сортировки
  2. Преобразование каждого символа в число с помощью функции CODE (только ASCII)
  3. Объединить все эти числа вместе
  4. Применить функцию VALUE, чтобы они не анализировались как текст
  5. RANK сцепленные числа.
  6. VLOOKUP ряды, добавив дополнительную логику для борьбы со связями ...

Ручная сортировка таблицы не так уж и сложна, если дополнительные строки добавляются только изредка, поэтому, возможно, ни один из этих методов не подходит. Это можно сделать всего 5 нажатиями клавиш - Ctrl + *, чтобы выбрать всю таблицу после выбора 1 ячейки, затем alt + d> s, чтобы открыть окно сортировки, затем ввести для сортировки (несколько дополнительных, если столбец сортировки по умолчанию еще не выбран).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...