 |
on-line-teaching.com Онлайн курсы MS Office: Word, Excell. Как сделать сайт: HTML, JS, PHP
|
Предыдущая тема :: Следующая тема
|
Автор |
Сообщение |
SVR Prizivnik - draftee

Зарегистрирован: 31.01.2006 Сообщения: 2
|
Добавлено: Вт Янв 31, 2006 10:11 am Заголовок сообщения: Исключение повторных значений из списка. |
|
|
Как сделать это самое исключение ? Например, есть список:
Ауди, ВАЗ, ГАЗ, БМВ, ГАЗ.
ГАЗ повторяется два раза, т.е. его нужно выкинуть. Чтобы было:
Ауди, ВАЗ, ГАЗ, БМВ.
Или более сложный вариант. Исключить повторы повторы по 2-м параметрам. Например:
Ауди 3шт, ВАЗ 2шт, ГАЗ 1шт, БМВ 3шт, ГАЗ 2шт, ГАЗ 1шт.
ГАЗ 1шт повторяется два раза. И его надо исключить.
Как все это сделать ? |
|
Вернуться к началу |
|
 |
AsIs captain


Зарегистрирован: 27.01.2006 Сообщения: 250 Откуда: СПб
|
Добавлено: Вт Янв 31, 2006 11:21 am Заголовок сообщения: |
|
|
Не совсем понятно, что подразумевается под исключением?
Удалить вообще из списка такие записи, или просто скрыть их?
В первом случае, можно использовать расширенный фильтр с переносом записей в другое место. Во втором случае, можно использовать просто фильтрацию на месте.
Далее.
1. Если нужно оставить только уникальные записи, т.е. исключить те записи, в которых совпадают все поля, то в расширенном фильтре (Данные \ Фильтр \ Расширенный фильтр) есть галочка Только уникальные записи.
2. Если необходимо проверить совпадение данных только в одном столбце. Один из вариантов:
- добавить вспомогательный столбец.
- ввести такую формулу:
Код: | =ЕСЛИ(СЧЁТЕСЛИ($C$2:$C$81;C2)>1;1;0) |
В Вашем примере напротив каждой записи с ГАЗом будет 1.
Здесь $C$2:$C$81 - столбец с данными, C2 - текущая ячейка, которую мы ищем.
или такую формулу:
Код: | =ЕСЛИ(СЧЁТЕСЛИ(C3:$C$82;C2)>0;1;0) |
Тогда 1 будет напротив всех ГАЗов, кроме одного, чтобы при фильтрации этот один ГАЗ все-таки в списке остался.
Обратите внимание, что адреса ячеек для просмотра другие.
После этого, в этом вспомогательном столбце появятся 0 и 1 (где есть совпадения) и нужно по нему делать фильтрацию. |
|
Вернуться к началу |
|
 |
AsIs captain


Зарегистрирован: 27.01.2006 Сообщения: 250 Откуда: СПб
|
Добавлено: Вт Янв 31, 2006 11:39 am Заголовок сообщения: |
|
|
Да, что касается уникальности по нескольким столбцам, то опять же, самый простой способ как это сделать:
Опять же завести дополнительный столбец, где делать объединение данных из других полей:
У Вас будет получаться что-то типа:
Таким образом задача сводится к поиску уникальных записей именно в этом дополнительном столбце, а здесь смотри ответ выше.
PS: на самом деле задача не совсем тривиальная... Тут есть еще много подводных камней... Может Вы с ними и столкнетесь...  |
|
Вернуться к началу |
|
 |
SVR Prizivnik - draftee

Зарегистрирован: 31.01.2006 Сообщения: 2
|
Добавлено: Ср Фев 01, 2006 9:59 am Заголовок сообщения: |
|
|
Тут более-менее имеет смысл только первая формула. Она считает количество повторов, которое указывает напротив кажого значения.
Так:
Ауди 1
ВАЗ 1
ГАЗ 2
БМВ 1
ГАЗ 2
Само по себе это интересно, но к фильтрации не имеет никакого отношения.
Смысл второй формулы не ясен вообще. По какому принципу указывается диапозон значений ? Если с исключением того значения, для которого ведется подсчет, то, во-первых, такой диапозон невозможно указать вообще, ибо он будет с разрывом столбца. А во-вторых, даже, если б мы это сделали, получилось бы следующее:
Ауди 0
ВАЗ 0
ГАЗ 1
БМВ 0
ГАЗ 1
Т.е. опять нет смысла.
В расширенном фильтре есть опция исключения повторов. Но там нужно указывать критерии отбора. Какие ? |
|
Вернуться к началу |
|
 |
AsIs captain


Зарегистрирован: 27.01.2006 Сообщения: 250 Откуда: СПб
|
Добавлено: Ср Фев 01, 2006 11:12 am Заголовок сообщения: |
|
|
SVR писал(а): | Тут более-менее имеет смысл только первая формула. Она считает количество повторов, которое указывает напротив кажого значения.
Так:
Ауди 1
ВАЗ 1
ГАЗ 2
БМВ 1
ГАЗ 2
Само по себе это интересно, но к фильтрации не имеет никакого отношения. |
Да? Это почему это так?
Фильтр разве нельзя задать по вспомогательному столбцу с условием оставить только те записи, где значение =1.
SVR писал(а): | Смысл второй формулы не ясен вообще. По какому принципу указывается диапозон значений ? Если с исключением того значения, для которого ведется подсчет, то, во-первых, такой диапозон невозможно указать вообще, ибо он будет с разрывом столбца. А во-вторых, даже, если б мы это сделали, получилось бы следующее:
Ауди 0
ВАЗ 0
ГАЗ 1
БМВ 0
ГАЗ 1
Т.е. опять нет смысла. |
Прежде чем судить о смысле, попробуйте просто формулу ввести.
Пояснять КАК работает формула пока не буду, т.к. долго, а вот ее смысл. повторюсь еще раз,
1. Во всех записях, где совпадение в списке при просмотре вниз не обнаружено, т.е. значение встречается только один раз, будет 0.
2. На всех позициях, где есть совпадение ниже (!), (само текущее значение и то что выше не считаем), значение будет больше 0.
После ввода формулы, применяем фильтр, оставить только записи, где результат формулы = 0.
В итоге Вы получаете список записей, которые не совпадают + записи которые совпадают, но из них останется только один экземпляр.
ПРИМЕР.
--- Оригинальный список.
АУДИ
ВАЗ
ГАЗ
МАЗ
БМВ
ГАЗ
ГАЗ
АУДИ
ВОЛЬВО
--- Первая формула + последующая фильтрация
ВАЗ
МАЗ
БМВ
ВОЛЬВО
--- Вторая формула + последующая фильтрация
ВАЗ
МАЗ
БМВ
ГАЗ
АУДИ
ВОЛЬВО
Какой из вариантов Вам подходит?
SVR писал(а): | В расширенном фильтре есть опция исключения повторов. Но там нужно указывать критерии отбора. Какие ? |
Про расишренный фильтр - повторюсь еще раз, там проверка уникальности работает с полными записями, т.е. Excel проверяет совпадение не в каком-то конкретном столбце, а по совокупности всех ячеек на строке. Т.е. если у Вас кроме марки автомобиля в списке еще что-то есть (например, количество, номер, цена и т.п.), то и эти данные тоже будут сравниваться. В результате, если есть две записи с ГАЗом, но у них что-то отличается, например цена, то записи считаются разными.
Видимо это Вам не подойдет (я не прав?), тогда и про условия можете в справке НЕ читать, не обременять себя.  |
|
Вернуться к началу |
|
 |
AsIs captain


Зарегистрирован: 27.01.2006 Сообщения: 250 Откуда: СПб
|
Добавлено: Ср Фев 01, 2006 11:14 am Заголовок сообщения: |
|
|
Да, и еще, Вы не ответили на мой вопрос:
"Не совсем понятно, что подразумевается под исключением?
Удалить вообще из списка такие записи, или просто скрыть их? " |
|
Вернуться к началу |
|
 |
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|