Уважаемые специалисты, помогите, пожалуйста, со следующей ситуацией:
Имеется столбец "А" с данными (пример):
ААААААА
ААААААА
ААААААА
СССССС
ВВВВВВВ
ААААААА
ВВВВВВВ
ААААААА и т.д.
Как сделать так, чтобы в результате в соседнем столбце "Б" получить:
столбец "А" столбец "Б"
ААААААА 1
ААААААА 1
ААААААА 1
СССССС 3
ВВВВВВВ 2
ААААААА 1
ВВВВВВВ 2
ААААААА 1
стандартными средствами Excel
Спасибо!
Помогите с Excel..
Модератор: Naeel Maqsudov
- Naeel Maqsudov
- Сообщения: 2570
- Зарегистрирован: 20 фев 2004, 19:17
- Откуда: Moscow, Russia
- Контактная информация:
Эх! Если бы AAAAA, ВВВВВВ, ССССС были бы числовыми.....
А так единственный способ (стандартный, т.е. как я понимаю не прибегая к макросам), который мне пока видится, это следующий:
1)
Надо получить для начала таблицу с индексами (можно на другом листе)
ААААААА 1
ВВВВВВВ 2
СССССС 3
Как это сделать: Скопировать данные на новое место. Затем с помошью меню Данные Итоги получить:
После этого надо сделать Данные/Группировка/Удалить структуру
И после несложно манипуляции с сортировкой в первой колонке и авотзаменой получить исходные данные, но без повторений.
ААААААА
ВВВВВВВ
СССССС
Далее с помощью автозаполнения пронумеровать:
ААААААА 1
ВВВВВВВ 2
СССССС 3
2)
Второй этап самый простой. Справа от исходных данных вписываем функцию ВПР, которая и поставит в соответствие каждому значению его индекс.
=ВПР(A1;$G$5:$H$7;2;ЛОЖЬ)
$G$5:$H$7 - это ссылка на табличку с индексами, которая получена на первом этапе.
Первый этап можно наверное существенно сократить, если воспользоваться стандартной надстройкой ODBC. Надо иметь установленной эту надстройку, озаглавить столбец с исходными данными, диапазону с исходными данными дать имя, сохранить книгу. Затем в отдельном диапазоне с помощью функции =SQL.REQUEST выполнить запрос "select distinct... order by...". Получатся отсортированные данные без повторений. Причем, они автоматически будут корректироваться при изменении исходных данных!
А так единственный способ (стандартный, т.е. как я понимаю не прибегая к макросам), который мне пока видится, это следующий:
1)
Надо получить для начала таблицу с индексами (можно на другом листе)
ААААААА 1
ВВВВВВВ 2
СССССС 3
Как это сделать: Скопировать данные на новое место. Затем с помошью меню Данные Итоги получить:
Код: Выделить всё
ААААААА Максимум 0
ААААААА
ААААААА
ААААААА
ААААААА
ААААААА
ВВВВВВВ Максимум 0
ВВВВВВВ
ВВВВВВВ
СССССС Максимум 0
СССССС
И после несложно манипуляции с сортировкой в первой колонке и авотзаменой получить исходные данные, но без повторений.
ААААААА
ВВВВВВВ
СССССС
Далее с помощью автозаполнения пронумеровать:
ААААААА 1
ВВВВВВВ 2
СССССС 3
2)
Второй этап самый простой. Справа от исходных данных вписываем функцию ВПР, которая и поставит в соответствие каждому значению его индекс.
=ВПР(A1;$G$5:$H$7;2;ЛОЖЬ)
$G$5:$H$7 - это ссылка на табличку с индексами, которая получена на первом этапе.
Первый этап можно наверное существенно сократить, если воспользоваться стандартной надстройкой ODBC. Надо иметь установленной эту надстройку, озаглавить столбец с исходными данными, диапазону с исходными данными дать имя, сохранить книгу. Затем в отдельном диапазоне с помощью функции =SQL.REQUEST выполнить запрос "select distinct... order by...". Получатся отсортированные данные без повторений. Причем, они автоматически будут корректироваться при изменении исходных данных!