Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.08.2011, 10:56   #1
FENIX888
 
Регистрация: 15.08.2011
Сообщений: 3
По умолчанию Задача EXCEL составить функцию Если.

Помогите пожайлуста.Функция не работает в первом листе, графа льготы.
Вложения
Тип файла: zip Копия Рабочая книга.zip (93.1 Кб, 26 просмотров)
FENIX888 вне форума Ответить с цитированием
Старый 19.08.2011, 14:15   #2
Anatole
Форумчанин
 
Аватар для Anatole
 
Регистрация: 07.04.2009
Сообщений: 245
По умолчанию

у вас не правильно записана проверка условия во втором ЕСЛИ. Вы написали выражение 2000<W9<40000. А нужно И(2000<W9;W9>4000)
Всякое безобразие должно быть единообразным. Тогда это называется порядком.
Anatole вне форума Ответить с цитированием
Старый 19.08.2011, 16:51   #3
FENIX888
 
Регистрация: 15.08.2011
Сообщений: 3
По умолчанию

Не работает с изменением. И не закрывается.
FENIX888 вне форума Ответить с цитированием
Старый 19.08.2011, 17:35   #4
Anatole
Форумчанин
 
Аватар для Anatole
 
Регистрация: 07.04.2009
Сообщений: 245
По умолчанию

Привожу полную формулу для 1-го листа колонки "Льготы", 18 строки: =ЕСЛИ(20000>W18;"W18'-(400+600*N18)";ЕСЛИ(И(20000<W18;W18 <40000);"W18'-600*N18";ЕСЛИ(W18>40000;"0")))
Результат будет:W18'-600*N18
Всякое безобразие должно быть единообразным. Тогда это называется порядком.
Anatole вне форума Ответить с цитированием
Старый 19.08.2011, 22:03   #5
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

Похоже, сократил правильно. Проверьте:
Код:
=ЕСЛИ(20000>W9;W9-(400+600*N9);ЕСЛИ(W9<40000;W9-600*N9;))
vikttur вне форума Ответить с цитированием
Старый 20.08.2011, 01:17   #6
Comfnumb
 
Регистрация: 20.08.2011
Сообщений: 3
По умолчанию

Во первых уберите кавычки там где должны быть вычисления, он читает как текст, во вторых знак равенства добавьте где должны быть вычисления.vikttur формула не будет работать
Comfnumb вне форума Ответить с цитированием
Старый 20.08.2011, 02:10   #7
Comfnumb
 
Регистрация: 20.08.2011
Сообщений: 3
По умолчанию

=IF(20000>W18,W18-(400+600*N18),IF(20000<W18<40000,W1 8-600*N18,IF(W18>40000,"0","тук тук")))
Comfnumb вне форума Ответить с цитированием
Старый 20.08.2011, 02:10   #8
Comfnumb
 
Регистрация: 20.08.2011
Сообщений: 3
По умолчанию

так работает
Comfnumb вне форума Ответить с цитированием
Старый 20.08.2011, 09:50   #9
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

Цитата:
Сообщение от Comfnumb Посмотреть сообщение
vikttur формула не будет работать
Вы так считаете? Проверять пробовали?
Формула исправлена согласно правил Excel и сокращена. В математическую правильность расчетов не вдавался, это уже пусть автор проверит правильность математики.
Цитата:
Сообщение от Comfnumb
Так работает.
=IF(20000>W18,W18-(400+600*N18),IF(20000<W18<40000,W18-600*N18,IF(W18>40000,"0","тук тук")))
Смею Вас заверить, что так работает только частично.
То, что Вы убрали кавычки и апострофы, правильно.
Во второй ЕСЛИ() запись 20000<W18<40000 неправильна, это отметил Anatole. В данной формуле проверка 20000<W18 лишняя, т.к. это условие уже проверено в первой функции.
Третья ЕСЛИ() тоже не нужна, условие проверено во второй функции и "тук-тук" не сработает никогда. Вернее, по примеру автора, "тук-тук" должно выводиться только при W18=40000 или W18=20000, но это, я считаю, ошибка при составлении формулы и, где требуется, нужно поставить ">=" или "<=".
Если хочется получить текст вместо нуля, то в предложенной мной формуле после последней точки с запятой вписать "0". Или "тук-тук"

Можно немного сократить
Код:
=ЕСЛИ(W9>40000;;W9-ЕСЛИ(W9>20000;600*N9;400+600*N9))
Как вариант
Код:
=ВЫБОР(1+(W9>20000)+(W9>40000);W9-(400+600*N9);W9-600*N9;)

Последний раз редактировалось vikttur; 20.08.2011 в 10:10. Причина: добавлена формула
vikttur вне форума Ответить с цитированием
Старый 23.08.2011, 16:53   #10
onenures
Пользователь
 
Регистрация: 22.02.2010
Сообщений: 21
По умолчанию

Здравствуйте. Помогите добавить условие в формулу, что-то не получается.
Начальная формула:
=ЕСЛИ(ЕОШИБКА(I1014+P1014+Q1014);0; ЕСЛИ(P1014+Q1014=0;0;ЕСЛИ(I1014=0;0 ;1)))
нужно добавить еще одно условие - ЕСЛИ(I1014>0;1;0)

В принципе вопрос решил другим способом, но решение, с этой формулой, с удовольствием бы увидел.

Последний раз редактировалось onenures; 23.08.2011 в 20:36.
onenures вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Составить функцию формирующую новый список Ame Помощь студентам 0 17.04.2011 20:47
Используя функцию, составить программу Васильева Зинаида Помощь студентам 1 18.11.2010 22:04
как составить функцию Sdeeee Microsoft Office Excel 3 03.02.2010 17:07
Пожалуйста,помогите составить программу задачи на языке Турбо Паскаль-задача на функцию Jan Помощь студентам 1 07.01.2009 19:39
Процедуру и функцию помогите составить плиз Oleg36 Помощь студентам 2 26.12.2008 11:27