↓
 ↑
Регистрация
Имя/email

Пароль

 
Войти при помощи
Временно не работает,
как войти читайте здесь!

Комментарий к сообщению


21 декабря 2020
В Exel помогает функция ВПР. Правда объяснять сложно. Но попробуем.
Синтаксис:
= ВПР (ключ для поиска; таблица поиска;колонка для извлечения;признак)
Как она работает? Допустим, у нас есть таблица - какой клиент сколько принес денег и за что. Столбцы - Фамилия, сумма, услуга
Например:
Деленн | 1650 | пересадка волос
Моллари| 50 | стрижка
Леньер| 17| полировка лысины
Кош| 90 | протирка скафандра

Для простоты объяснения таблица лежит в ячейках А1:С4 на Листе 1. Символами | я отделил ячейки друг от друга.

Задача: в отдельную таблицу (пусть и на другом листе) нам надо выдернуть данные по Леньеру и Деленн.

Функция =ВПР ('Леньер';Лист1!$А$1:$С$4;3;ЛОЖЬ) выдаст нам результат "полировка лысины". Как именно?

1. Функция ищет ключ "Леньер" в крайней слева колонке таблицы что мы указали в функции ВПР - А1:С4 на Листе 1.
2. Функция берет ту строку, где есть первое точное совпадение (так как признак = ЛОЖЬ). Это будет строка "Леньер| 17| полировка лысины"
3. Из данной строки ВПР выдернет значение третьей ячейки слева (3 - ибо цифру 3 мы поставили в ВПР. Первая ячейка- Леньер, вторая - 17, третья - полировка лысины). Это и есть результат.

Соответственно, на листе 2 формируем следующую таблицу (расположена в ячейках А1:В2):
A | B
Леньер | =ВПР (A1;Лист1!$А$1:$С$4;3;ЛОЖЬ)
Деленн |
Вместо слова "Леньер" указание на ячейку с этим словом.

Протаскиваем формулу вниз и получим следующую таблицу:
A | B
Леньер | =ВПР (A1;Лист1!$А$1:$С$4;3;ЛОЖЬ)
Деленн | =ВПР (A2;Лист1!$А$1:$С$4;3;ЛОЖЬ)

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

Или, если брать значения:
A | B
Леньер | полировка лысины
Деленн | пересадка волос

А что теперь будет если в исходной таблице отсортировать строки, например, по стоимости? Главное сделать это правильно, чтобы отсортировалась не только колонка В, но и вместе с ней сдвинулись остальные колонки. То есть получить примерно это:

Леньер| 17| полировка лысины
Моллари| 50 | стрижка
Кош| 90 | протирка скафандра
Деленн | 1650 | пересадка волос

Функция ВПР по-прежнему будет искать в таблице Лист1!$А$1:$С$4 первую сверху строчку, где в крайней левой колонке есть слово "Леньер". По-прежнему найдет строку "Леньер| 17| полировка лысины", которая, правда, здесь находится в ином месте. По-прежнему выдернет нужное - третье слева значение. Тоже самое для Деленн.

Результат достигнут!

Нюансы:
1. Ключ (то, по чему ищут, в примере - слово Леньер) - должен быть уникален, не должен повторяться. Можно в качестве ключа использовать цифры.
2. Если мы заменим в исходной таблице данные, то они изменятся и в новой. Поменяем Леньера на Дукхата - и ВПР не найдет Леньера в таблице и выдаст ошибку. Заменим "полировка лысины" на "замазывание синяков" - и ВПР выдаст "замазывание синяков"
3. Надо быть осторожным с добавлением и удалением строк в таблице с исходными данными. Если мы просто допишем строку снизу, то ВПР её не увидит - у нас-то зафиксированы строки с 1 по 4, и что там на 5й, 6й... функции неинтересно. Надо либо менять адрес таблицы в функции и снова протаскивать её (что не сложно), либо добавлять строку посередине с помощью функции "вставить строки"... и проверять, что будет. Exel должен сам изменить адрес в функции.
ПОИСК
ФАНФИКОВ







Закрыть
Закрыть
Закрыть