Относно използване на IF и формула/функция
Добро утро, колеги.
Въпросът ми:
Ако T10=януари изпълни VLOOKUP(A16;[Таблица12.xlsx]Sheet1!$A$58:$AT$81;46;FALSE),
T10=февруари изпълни VLOOKUP(A16;[Таблица01.xlsx]Sheet1!$A$58:$AT$81;46;FALSE),
T10=март изпълни VLOOKUP(A16;[Таблица02.xlsx]Sheet1!$A$58:$AT$81;46;FALSE),
T10=април изпълни VLOOKUP(A16;[Таблица03.xlsx]Sheet1!$A$58:$AT$81;46;FALSE),
T10=май изпълни VLOOKUP(A16;[Таблица04.xlsx]Sheet1!$A$58:$AT$81;46;FALSE),
T10=юни изпълни VLOOKUP(A16;[Таблица05.xlsx]Sheet1!$A$58:$AT$81;46;FALSE),
T10=юли изпълни VLOOKUP(A16;[Таблица06.xlsx]Sheet1!$A$58:$AT$81;46;FALSE),
T10=август изпълни VLOOKUP(A16;[Таблица07.xlsx]Sheet1!$A$58:$AT$81;46;FALSE),
T10=септември изпълни VLOOKUP(A16;[Таблица.xlsx]Sheet1!$A$58:$AT$81;46;FALSE),
ако не, напиши "ERROR"
Нещо такова:
=IF(T10="януари";VLOOKUP(A16;[Таблица12.xlsx]Sheet1!$A$58:$AT$81;46;FALSE;IF(T10=февруари;VLOOKUP(A16;[Таблица01.xlsx]Sheet1!$A$58:$AT$81;46;FALSE;IF(T10=март;VLOOKUP(A16;[Таблица02.xlsx]Sheet1!$A$58:$AT$81;46;FALSE;IF(T10=април;VLOOKUP(A16;[Таблица03.xlsx]Sheet1!$A$58:$AT$81;46;FALSE;IF(T10=май;VLOOKUP(A16;[Таблица04.xlsx]Sheet1!$A$58:$AT$81;46;FALSE;IF(T10=юни;VLOOKUP(A16;[Таблица05.xlsx]Sheet1!$A$58:$AT$81;46;FALSE;IF(T10=юли;VLOOKUP(A16;[Таблица06.xlsx]Sheet1!$A$58:$AT$81;46;FALSE;IF(T10=август;VLOOKUP(A16;[Таблица07.xlsx]Sheet1!$A$58:$AT$81;46;FALSE;IF(T10=септември;VLOOKUP(A16;[Таблица.xlsx]Sheet1!$A$58:$AT$81;46;FALSE;"ERROR")
Общо взето идеята е как да използвам IF функцията, като при изпълнено условие да се изпълнява формула /в случая функцията VLOOKUP/. Синтаксисът ми убягва, ако въобще е възможно.
Благодаря предварително.
Отговор: Относно използване на IF и формула/функция
Май навсякъде след FALSE си изпуснал си по една затваряща скоба:
=IF(T10="януари";VLOOKUP(A16;[Таблица12.xlsx]Sheet1!$A$58:$AT$81;46;FALSE);IF(...
А иначе синтаксиса е
=IF(logical_test;[value_if_true];[value_if_false])
ПП.
И след последното "ERROR" трябва да има общо девет затварящи скоби
...46;FALSE);"ERROR")))))))))
Отговор: Относно използване на IF и формула/функция
Благодаря, MitkoS. Примера, който дадох беше да обясня идеята, със сигурност липсват скоби, мислех само за сън в него време. :)
Исках да избегна обяснението с думи. На много места в самата таблица използвам =IF(logical_test;[value_if_true];[value_if_false]), със самата структура проблем нямам. Идеята е, че при тези използвания работя с текстови/цифрови стрингове след изпълнение или неизпълнение на условието. Да речем =IF(logical_test;[текст_if_true];[текст_if_false]).
Затруднявам се да направя следното:
=IF(logical_test;[формула_if_true];[текстов стринг_if false]). Не мога да накарам формулата да работи, бъркам синтаксиса в част от реда, а не логиката.
Или:
При изпълнено условие , търси във външния масив и напиши намерената стойност / ако не е изпълнено условие 1, провери за изпълнение на условие 2, търси във външния масив и напиши намерената стойност / ако не е изпълнено условие 2, провери за изпълнение на условие 3, търси във външния масив и напиши намерената стойност .... / ако не е изпълнено условие 11, провери за изпълнение на условие 12, търси във външния масив и напиши намерената стойност / ако не намериш нито едно изпълно условие напиши "ERROR".
Не знам, може би аз не мога да обясня.
Текстовите стрингове се изпълняват, формулата не. Преди формулата, а може би и след нея трябва да укажа на excel, че това е формула, а не стринг. Въпроса е как.
Отговор: Относно използване на IF и формула/функция
Виж това видео относно функцията VLOOKUP
https://support.office.com/en-us/art...8-93a18ad188a1
ПП.
Що не провериш в някоя празна клетка какъв ще е резултата от VLOOKUP без никакви IF
Например ако D5 е празна клетка, то напиши в нея
=VLOOKUP(A16;[Таблица12.xlsx]Sheet1!$A$58:$AT$81;46;FALSE)
и виж дали е това което трябва
Отговор: Относно използване на IF и формула/функция
Разбрах къде е проблемът. Всичко правя както трябва, но Excel е... да си съвъкуплява майката и бъгава история!
Понеже изпълнявам VLOOKUP в друга таблица, не в тази с който работя в момента, във формулата указвам пътя до файла и sheet-а който ще използвам. Както и областта в която да търси. При запазване на текущата таблица обаче, Excel си конвертира пътя както му е удобно и то не в цялото условие, а където му скимне. И съответно се генерира грешка.
Коригирах пътя там където го е омазал и сега всичко е наред.
Сега ще видим какво ще се случи, тъй като всичко правя на моя компютър, а пакета таблици на практика ще е на друг. Сега е само тестово. И не знам какво ще се случи като ги копирам там, в различен фолдър.
Наистина нямам никакво време за малко повече умения в Access, там подобни недоразумения не се случват.