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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.08.2010, 09:24   #1
0mega
Форумчанин
 
Регистрация: 12.09.2009
Сообщений: 232
По умолчанию 2 "ЕСЛИ" в одной формуле

всем доброго времени суток.
Парадокс.
формула =ЕСЛИ выполняет свои функции и работает
Вторая ЕСЛИ тоже справляется со своей задачей
Вместе они работать не хотят ?!
Где ошибка ?
Вложения
Тип файла: zip 2если.xls.zip (6.6 Кб, 28 просмотров)
0mega вне форума Ответить с цитированием
Старый 23.08.2010, 09:46   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Вы в формуле напутали со скобками...
Проверяйте: http://excelvba.ru/XL_Files/Sample__...__11-46-03.zip
EducatedFool вне форума Ответить с цитированием
Старый 23.08.2010, 09:49   #3
0mega
Форумчанин
 
Регистрация: 12.09.2009
Сообщений: 232
По умолчанию

спасибо.
все работает. сейчас буду разбираться где я "споткнулся"
0mega вне форума Ответить с цитированием
Старый 23.08.2010, 10:09   #4
0mega
Форумчанин
 
Регистрация: 12.09.2009
Сообщений: 232
По умолчанию если дата начинается с 1-го числа

to EducatedFool
со скобками разобрался.
Очередной "подводный камень"
если начальная дата начинается с 01.01.2010 тогда машина выдает "11мес31дн" .
возможно ли лечени молой кровью ?
Спасибо
0mega вне форума Ответить с цитированием
Старый 23.08.2010, 10:24   #5
0mega
Форумчанин
 
Регистрация: 12.09.2009
Сообщений: 232
По умолчанию

вопрос снимается.
добавил еще одно ЕСЛИ(ИЛИ
0mega вне форума Ответить с цитированием
Старый 23.08.2010, 14:12   #6
DV68
Форумчанин
 
Регистрация: 05.08.2009
Сообщений: 465
По умолчанию

Можно еще так:
Т6:
Код:
=СЦЕПИТЬ(РАЗНДАТ(МАКС(D6;40179);МИН(E6;40543);"m");"мес";РАЗНДАТ(МАКС(D6;40179);МИН(E6;40543);"md")+1;"дн.")
"Все следует делать настолько простым, насколько это возможно, но не проще." Альберт Эйнштейн
DV68 вне форума Ответить с цитированием
Старый 23.08.2010, 21:24   #7
0mega
Форумчанин
 
Регистрация: 12.09.2009
Сообщений: 232
По умолчанию

спасибо, интересное решение, возьму на заметку
0mega вне форума Ответить с цитированием
Старый 24.08.2010, 10:00   #8
0mega
Форумчанин
 
Регистрация: 12.09.2009
Сообщений: 232
По умолчанию

to DV68
на досуге стал разбираться с предложенной формулой.
что-то у меня дебет с кредитом не сходится...
Мы имеем 2-е даты:

. D6 _________ E6
22.06.2009 _ 10.04.2012

МАКС(D6;40179) =01.01.2010 МИН(E6;40543)= 31.12.2010
т.е. в любом случае, если даты не входят в текущий год, тогда формула работает только с числами 40179 и 40543 В результате ответ всегда будет 1 год
P.S.
"подводный камень", о котором я упоминал выше - он тоже здесь присутствует (11мес 31дн)
Изображения
Тип файла: jpg Снимок экрана 8.jpg (15.3 Кб, 145 просмотров)

Последний раз редактировалось 0mega; 24.08.2010 в 10:02.
0mega вне форума Ответить с цитированием
Старый 24.08.2010, 13:17   #9
DV68
Форумчанин
 
Регистрация: 05.08.2009
Сообщений: 465
По умолчанию

1. Так нужен стаж за текущий год или что?
2. Согласен.
Вот исправленная версия
Код:
=РАЗНДАТ(МАКС(D6;ДАТА(G$1;1;1))-1;МИН(E6;ДАТА(G$1+1;1;1));"m")&"мес"&
РАЗНДАТ(МАКС(D6;ДАТА(G$1;1;1));МИН(E6+1;ДАТА(G$1+1;1;1));"md")&"дн."
"Все следует делать настолько простым, насколько это возможно, но не проще." Альберт Эйнштейн

Последний раз редактировалось DV68; 24.08.2010 в 13:22.
DV68 вне форума Ответить с цитированием
Старый 25.08.2010, 09:34   #10
0mega
Форумчанин
 
Регистрация: 12.09.2009
Сообщений: 232
По умолчанию

спасибо. идея очень хорошая, взял на вооружение
но оставил свою формулу. Она короче
0mega вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
если >30 тогда "да" иначе "нет"... DBgrid Daur БД в Delphi 4 30.05.2010 16:54
"ОКРВВЕРХ", "ОКР", "ЕСЛИ". Как бы их связать. Каравай Microsoft Office Excel 13 17.02.2010 09:53
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
если пользователь наберет какой-то другой символ не "y" или "n" и нажмет enter, программа проигнорирует skobets Общие вопросы C/C++ 2 03.06.2008 06:51
cтранная запись формулы ЕСЛИ: "=+ЕСЛИ(..." icore2008 Microsoft Office Excel 4 10.04.2008 21:32