Что бы вы хотели научиться делать в Excel, но не знаете как?
|
|
dsb75 | Дата: Воскресенье, 18.05.2014, 08:56 | Сообщение # 1 |
Генералиссимус
Группа: Администраторы
Сообщений: 133
Статус: Offline
| Часто бывает так, что вы каждый день делаете какую-то рутинную операцию в Excel, которая отнимает ваше время. Пусть 5 минут, но постоянно. И вы слишком заняты, чтобы всё бросить и автоматизировать / упростить себе жизнь. Напишите мне, что вам мешает - подумаем вместе!
|
|
| |
sizoffav | Дата: Среда, 03.09.2014, 15:38 | Сообщение # 2 |
Майор
Группа: Проверенные
Сообщений: 5
Статус: Offline
| Подскажите пожалуйста, как прописть VLOOKUP, чтобы он искал слово из ячейки в составе предолений вписанных в ячейки поисковой области? Ну если по русски. Есть список фамилий и нужно организовать сопоставление этих фамилий с ячейками где эти фамилии могут содержаться в составе набора данных. Адрес, ФИО, название фирмы и тд. Количество слов и знаков везде разное.
|
|
| |
dsb75 | Дата: Среда, 03.09.2014, 15:43 | Сообщение # 3 |
Генералиссимус
Группа: Администраторы
Сообщений: 133
Статус: Offline
| Это не тривиальная задача. Беру время на подумать...
|
|
| |
dsb75 | Дата: Среда, 03.09.2014, 16:00 | Сообщение # 4 |
Генералиссимус
Группа: Администраторы
Сообщений: 133
Статус: Offline
| Родился вот такой вариант. Самописная функция SeekWord, которая разбивает предложение на слова (разделитель - строго пробел) и для каждого слова организовывает в своём теле вызов VLOOKUP, пока не найдёт что-то. Как только находит, поиски прекращает и возвращает результат.
|
|
| |
dsb75 | Дата: Среда, 03.09.2014, 16:03 | Сообщение # 5 |
Генералиссимус
Группа: Администраторы
Сообщений: 133
Статус: Offline
| Кстати, отличная тема для статьи
|
|
| |
MCH | Дата: Среда, 03.09.2014, 17:40 | Сообщение # 6 |
Генералиссимус
Группа: Модераторы
Сообщений: 8
Статус: Offline
| По примеру из 23 поста, формула массива: Код =ИНДЕКС(Table1[Имена];ПОИСКПОЗ(ИСТИНА;ЕЧИСЛО(ПОИСК(" "&Table1[Имена]&" ";" "&A2&" "));)) или немассивная формула Код =ПРОСМОТР(9^9;ПОИСК(" "&Table1[Имена]&" ";" "&A2&" ");Table1[Имена])
Сообщение отредактировал MCH - Среда, 03.09.2014, 17:43 |
|
| |
dsb75 | Дата: Среда, 03.09.2014, 21:49 | Сообщение # 7 |
Генералиссимус
Группа: Администраторы
Сообщений: 133
Статус: Offline
| Михаил, вот смотрю я на вашу формулу, где 9 в 9 степени и вообще никаких идей нет, как это работает :)))) Сейчас буду разбираться... Ваши формулы выглядят парадоксально для неподготовленных умов
|
|
| |
dsb75 | Дата: Среда, 03.09.2014, 22:36 | Сообщение # 8 |
Генералиссимус
Группа: Администраторы
Сообщений: 133
Статус: Offline
| Со второй формулой разобрался. Сильно.
|
|
| |
dsb75 | Дата: Четверг, 04.09.2014, 09:26 | Сообщение # 9 |
Генералиссимус
Группа: Администраторы
Сообщений: 133
Статус: Offline
| Цитата MCH ( ) =ПРОСМОТР(9^9;ПОИСК(" "&Table1[Имена]&" ";" "&A2&" ");Table1[Имена]) Михаил, а где вы прочли, что ПОИСК кушает массивы в параметрах? В стандартной документации такого нет. Я хочу тоже это почитать
|
|
| |
sizoffav | Дата: Четверг, 04.09.2014, 16:36 | Сообщение # 10 |
Майор
Группа: Проверенные
Сообщений: 5
Статус: Offline
| Маэстро, вы гений!!!
|
|
| |
MCH | Дата: Четверг, 04.09.2014, 19:39 | Сообщение # 11 |
Генералиссимус
Группа: Модераторы
Сообщений: 8
Статус: Offline
| Цитата dsb75 ( ) а где вы прочли, что ПОИСК кушает массивы в параметрах? В стандартной документации такого нет. В документации много чего нет, метод проб и ошибок, а также общение на форумах очень сильно прибавляет знания.
Добавлено (04.09.2014, 19:39) --------------------------------------------- В большинстве случаев функции могут возвращать массивы, если в качестве аргументов им предоставить массив (при этом в справке приводятся примеры с одиночным параметром). такие функции как ПОИСК, НАЙТИ, СЧЕТЕСЛИ, СУММЕСЛИ, ПОИСКПОЗ, ПРОСМОТР, ДЛСТР, ЛЕВСИМВ, ПРАВСИМВ, ПСТР, ДАТА, и многие другие. Примеры: Код =СЧЁТЕСЛИ(A1:A5;B1:D1) Код =ПОИСКПОЗ(B1:D1;A1:A5;)
Есть функции которые не могут возвратить массив ни при каких обстоятельствах: СУММ, СУММПРОИЗВ, И, ИЛИ и др.
Есть функции которые как бы не возвращают массив, если им дать массив в качестве аргумента: может вернуть массив из двух элементов, а вот - не может вернуть массив
также ИНДЕКС не возвращает массивы при таком использовании: Код =ИНДЕКС(A1:A5;{1;3;5};)
но ВПР и ИНДЕКС можно обмануть: Код =ВПР(Ч(ИНДЕКС({1;2};));A1:C5;3;) или Код =ВПР(Т(ИНДЕКС({"А";"Б"};));A1:C5;3;) в зависимости от того что ищем числа или текст
Пример с ИНДЕКСом, возвращающей массив Код =ИНДЕКС(A1:A5;Ч(ИНДЕКС({1;3;5};)))
Сообщение отредактировал MCH - Четверг, 04.09.2014, 19:48 |
|
| |
dsb75 | Дата: Четверг, 04.09.2014, 21:16 | Сообщение # 12 |
Генералиссимус
Группа: Администраторы
Сообщений: 133
Статус: Offline
| Михаил, спасибо, интересная тема, поэксперементирую на досуге.
|
|
| |
sizoffav | Дата: Понедельник, 08.09.2014, 10:29 | Сообщение # 13 |
Майор
Группа: Проверенные
Сообщений: 5
Статус: Offline
| Спасибо товарищу МСН за формульное просвящение в массы! Добавлено (08.09.2014, 10:29) --------------------------------------------- Денис, а могешь прикрутить к сайту переводчик формул с русского на английский и обратно. Чтобы типа как в яндекс переводчике было? Сдается мне, что будет популярный инструмент.
|
|
| |
dsb75 | Дата: Воскресенье, 14.09.2014, 12:27 | Сообщение # 14 |
Генералиссимус
Группа: Администраторы
Сообщений: 133
Статус: Offline
| Цитата sizoffav ( ) Денис, а могешь прикрутить к сайту переводчик формул с русского на английский и обратно. Чтобы типа как в яндекс переводчике было? Сдается мне, что будет популярный инструмент. Не, к сайту не могу, а вот в Excel запросто. Сделаю, как-нибудь.
|
|
| |
MCH | Дата: Понедельник, 15.09.2014, 18:05 | Сообщение # 15 |
Генералиссимус
Группа: Модераторы
Сообщений: 8
Статус: Offline
| У Сергея Изотова на ExcelWorld переводчик формул прикручен на форуме Кроме того есть онлайн сервис по переводу формул: http://www.planetaexcel.ru/blog/270/
|
|
| |