Правила Форума редакция от 22.06.2020 |
|
|
|
|
|
Опции темы | Опции просмотра | Language |
03.05.2005, 18:16 | #1 |
Guest
Сообщений: n/a
|
MS Excel - решение практических задач
В этой теме размещаем вопросы и ответы, а также советы и рекомендации по решению конкретных задач, которые требуют создания формулы, применения макроса, написания кода VBA, т.е. Практикум.
------------------------------ Вопросы и ответы, а также советы и рекомендации по настройке MS Excel, ошибки в работе программы, решение задач по импорту/экспорту документов, ссылки и обсуждение надстроек для Excel, обучающие материалы и т.п. размещаем в теме MS Excel - настройка, импорт/экспорт.Если решение задачи не требует применения формул и макросов (VBA), то это обсуждение будет перенесено в тему по настройкам. Все пожелания по принципам размещения сообщений по этим темам рассматриваются - пишите в личку Andrey_k. Последний раз редактировалось regist; 30.11.2012 в 15:04.. Причина: закрепил шапку |
23.01.2010, 18:23 | #331 |
Неактивный пользователь
Пол: Регистрация: 23.12.2009
Сообщений: 54
Репутация: 38
|
Re: Вопросы по Excel
Формула массива:
Для второго Код:
=ИНДЕКС($A$1:$A$13;НАИМЕНЬШИЙ(ЕСЛИ($A$1:$A$13<>"";СТРОКА($A$1:$A$13));2)) Код:
=ИНДЕКС($A$1:$A$13;НАИМЕНЬШИЙ(ЕСЛИ($A$1:$A$13<>"";СТРОКА($A$1:$A$13));6)) Формулы массива - завершать ввод в ячейку не просто нажатием Enter, а сочетанием клавиш Ctrl+Shift+Enter. Формула автоматически будет заключена в фигурные скобки - {} Ссылка на файл пример - Скачать файл Последний раз редактировалось The_Prist; 23.01.2010 в 18:26.. |
Эти 3 пользователя(ей) сказали cпасибо за это полезное сообщение: |
Реклама: | Супермаркет офисной техники KNS предлагает ноутбук OSiO FocusLine F160i-009 - Подарок каждому покупателю! | столы журнальные трансформеры | siemens qac2030 | 23 февраля | фильтр флф 250 |
23.01.2010, 18:40 | #332 |
Re: Вопросы по Excel
Можно обойтись и без функций массива, но тогда потребуется несколько ячеек использовать в качестве временных переменных (или забить все в одну формулу)
По аналогии с рекомендацией The_Prist: $A$1:$A$13 - диапазон Ваших данных. $B$1=СЧИТАТЬПУСТОТЫ($A$1:$A$13) тогда второе значение найдется по формуле НАИМЕНЬШИЙ($A$1:$A$13;$B$1+2), тогда шестое значение найдется по формуле НАИМЕНЬШИЙ($A$1:$A$13;$B$1+6). Возможно, для корректной работы функции НАИМЕНЬШИЙ потребуется присвоить пустым ячейкам значение 0. В этом случае подсчет количества пустых ячеек надо будет делать функцией СЧЁТЕСЛИ($A$1:$A$13;0).
__________________
Хочешь сказать - нажми кнопку Последний раз редактировалось andrey_k; 23.01.2010 в 18:43.. |
|
23.01.2010, 19:10 | #333 |
Неактивный пользователь
Пол: Регистрация: 23.12.2009
Сообщений: 54
Репутация: 38
|
Re: Вопросы по Excel
Не согласен, т.к. в данном случае функция НАИМЕНЬШИЙ: во-первых - будет возвращать числа не по порядковому номеру в столбце, а по возрастанию; во-вторых: даже для возврата второго значения($B$1+2) функция вернет #ЧИСЛО, не найдя девять числовых констант. |
23.01.2010, 19:41 | #334 | |||||||||||||||||||||||
Re: Вопросы по Excel
По первому согласен - упустил, что нужно в ином порядке выбирать данные - тогда действительно, лучше использовать прямые ссылочные функции. По второму - я указал, что нужно исключить пустые ячейки - их сначала требуется заполнить нулевыми значениями. Так что придется людям учиться использовать функции массива :-)
__________________
Хочешь сказать - нажми кнопку |
||||||||||||||||||||||||
23.01.2010, 23:15 | #335 |
Неактивный пользователь
Пол: Регистрация: 23.12.2009
Сообщений: 54
Репутация: 38
|
Re: Вопросы по Excel
|
Сказали спасибо: |
24.01.2010, 00:55 | #336 |
Пользователь
Пол: Регистрация: 20.11.2005
Сообщений: 111
Репутация: 21
|
Re: Вопросы по Excel
andrey_k, по вашему не получается. Все равно спасибо за участие. The_Prist, спасибо большое. Круто! С массивами почти не приходилось работать, буду знать.
|
07.02.2010, 16:44 | #337 |
Неактивный пользователь
Пол: Регистрация: 03.03.2009
Сообщений: 20
Репутация: 43
|
Re: Вопросы по Excel
Добрый день. Подсакжите, пожалуйста. Как сделать, чтобы в таблице я перемножаю столбцы, но в одном столбце я писал не цифру а слово (например, ок или да).
|
09.02.2010, 17:43 | #338 | |||||||||||||||||||||||
Постоялец
Пол: Регистрация: 02.07.2009
Сообщений: 393
Репутация: 79
|
Re: Вопросы по Excel
Не совсем понятно что должно быть результатом в этом случае... Можно сделать проверку.... типа Если(И(Эточисло(Аргумент1), ЭтоЧисло(Аргумент2)), Аргумент1*Аргумент2, "Оба аргумента должны быть числом") Могу не помнить только как конкретно функции называются в ехеле... но подход примерно такой...
__________________
Каждый человек, которому вы ответили на форуме "гугл в помощь" - потенциальный "возвращенец" в винды. (ц) |
|||||||||||||||||||||||
09.02.2010, 22:02 | #339 | |||||||||||||||||||||||
Re: Вопросы по Excel
Точнее формулируйте задачу. Слово должно заменяться каким-то числом при перемножении или, наоборот, в зависимости от результата перемножения должно формироваться это слово?
__________________
Хочешь сказать - нажми кнопку |
||||||||||||||||||||||||
16.02.2010, 13:57 | #340 |
Новичок
Пол: Регистрация: 19.01.2009
Сообщений: 2
Репутация: 0
|
Re: Вопросы по Excel
|
02.03.2010, 20:08 | #341 |
Неактивный пользователь
Пол: Регистрация: 20.02.2008
Сообщений: 11
Репутация: 5
|
Re: Вопросы по Excel
Здравствуйте, подскажите можно ли автоматизировать заливку ячеек, ну или постановку в них знака?
Например есть горизонтальные 24 ячейки, нужно выделить каждую 6 ячейку, а в другом случае каждую 8 или 12 и т.д. |
03.03.2010, 11:40 | #342 | |||||||||||||||||||||||
Неактивный пользователь
Пол: Регистрация: 11.12.2007
Сообщений: 2
Репутация: 1
|
Re: Вопросы по Excel
меню "формат" -"условное форматирование" -формула =И(1=1;(ЦЕЛОЕ(СТОЛБЕЦ(A1)/3)=СТОЛБЕЦ(A1)/3)) (потом перезайти и убрать кавычки) кнопка формат-вид -выбираем заливку затем копируем формат на весь лист Пример тут: http://exfile.ru/download/87205 |
|||||||||||||||||||||||
Сказали спасибо: |
05.03.2010, 12:49 | #343 |
Неактивный пользователь
Пол: Регистрация: 15.01.2010
Адрес: Украина
Сообщений: 18
Репутация: 0
|
Re: Вопросы по Excel
Интересная у меня задачка, хотелось бы узнать ваше мнение....
Есть таблица Excel, левая крайняя колонка - идентификационный код человека (во всех моих таблицах является уникальным индексом для функции ВПР() ) вторая колонка - ФИО третья колонка - номер месяца (1-12) следующие колонки - данные, которые мне нужно извлекать До настоящего момента на каждого человека у меня не более одной строки и индекс является уникальным, в функции ВПР - значение интервальный просмотр - "ЛОЖЬ", но данных настолько много, что не вмещаются в 255 колонок Excel 2003 (по различным причинам не использую 2007), поэтому хочу изменить структуру таким образом, чтоб на каждого человека припадало по 12 строк(по одной на каждый месяц), но в таком случае не знаю как извлекать данные -( Мне нужна такая функция, похожая на ВПР, но чтоб критерий поиска индекса был в два этапа, первый - идентификационный номер человека, второй - номер месяца. я еще не до конца понимаю значение слова "интервальный просмотр", но мне кажется он в данной ситуации не поможет, т.к. отличное от значения "ЛОЖЬ" даст приближенное значение (ближайшую по значению строку), что меня не устраивает... Буду рад любым подсказкам .. С ув. Олег. |
05.03.2010, 17:30 | #344 | |||||||||||||||||||||||
Re: Вопросы по Excel
Как я понял, Вы хотите инфу разместить на разных листах соответственно по месяцам? Тогда поиск будет в два этапа - найти название листа по номеру месяца и на этом листе в обычном режиме найти нужную запись. Я такое делаю сочетанием функций ДВССЫЛ и ВПР. Кстати, по опыту проверено: для большого массива (от 1,5-3 тыс элементов) в качестве поисковой функции вместо ВПР/ГПР быстрее работает СУММЕСЛИ. Если искомые данные - числа, и поле для поиска единственное в массиве, то ускорение будет в разы. Также нет необходимости обрабатывать ошибку Н/Д - СУММЕСЛИ просто выводит 0. И если Вы будете менять таблицу (вставлять/удалять столбцы/строки), то в ВПР надо вручную отслеживать ссылку на столбец, а СУММЕСЛИ с ее прямым указанием столбца изменит все сама.
__________________
Хочешь сказать - нажми кнопку |
||||||||||||||||||||||||
05.03.2010, 23:16 | #345 |
Неактивный пользователь
Пол: Регистрация: 23.12.2009
Сообщений: 54
Репутация: 38
|
Re: Вопросы по Excel
Можно использовать двойной проход той же ВПР. Можно использовать формулы массива. Нужно видеть пример исходных данных и то, чего хочется получить в итоге. Тогда проще будет Вам помочь.
Ладно, не хотите выкладывать пример - смотрите мой. 1 Вариант: Формула массива(завершается нажатием клавиш Ctrl+Shift+Enter) =--ПОДСТАВИТЬ(ВПР(E1&F1;$A$1:$A$6&$B$1:$C$6;2;0);E1;" ") E1&F1 - сцепка ФИО и номер месяца $A$1:$A$6&$B$1:$C$6 - диапазон значений - сцепка ФИО, номер месяца и столбец искомых значений. 2 Вариант: Обычная формула. =СУММПРОИЗВ((I2=$A$1:$A$6)*(J2=$B$1:$B$6);$C$1:$C$ 6) Для большей понятливости лучше скачать файл P.S. есть и еще варианты, но думаю Вам хватит и этого... Последний раз редактировалось The_Prist; 08.03.2010 в 11:19.. |
Сказали спасибо: |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ЛовиОтвет (Лови ответ) - решение задач и примеров по математике | Евгений92752 | Freeware софт | 7 | 27.05.2015 08:29 |
конвертер PDF to Excel | master05 | Скорая помощь | 4 | 12.08.2011 15:37 |
EXCEL в Delph 7. | Toxa07 | Delphi | 5 | 18.05.2009 20:49 |
Как разблокировать диспетчер задач «Диспетчер задач отключен Администратором». | Rench1k | Microsoft Windows | 20 | 30.01.2009 10:18 |
VCL для Excel | Embolus | Delphi | 26 | 13.11.2008 23:25 |
|
|