2011-01-21 2 views
2

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

Abc
Bcd
Efg
HIJ.

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

Кроме того, в моем MS Excel 2007, View Code на правой кнопкой мыши на листе, а также Visual Basic & Макросы в Tab Developer отключены. Пожалуйста, помогите мне с вашими предложениями.

+0

Если вы нажмете Alt + F11, вы входите в VBEditor? – CaBieberach

ответ

0

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

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

  1. ВЕРХНИЙ каждое значение рода
  2. Преобразование каждого символа в число с помощью функции CODE (ASCII только)
  3. Соединить все эти числа вместе
  4. Применить функция VALUE, чтобы остановить их анализирование как текст
  5. RANK объединенных номеров.
  6. ВПР ряды, добавляя дополнительную логику, чтобы иметь дело со связями ...

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

+0

@SyncMaster, если вам нравится этот ответ, пожалуйста, не могли бы вы его перенести? – user667489

Смежные вопросы