2016-11-04 3 views
0

Я пытаюсь придумать обычную систему таким образом, чтобы я мог выполнить оператор if для выполнения списка заполненных данными имен без использования макроса VBA. Это использовало бы оператор IF, чтобы увидеть, имеет ли значение столбца D имя, а если он это делает, помещает его в выполненный список, а если нет, то ничего не делает и помещает следующее имя там, если оно имеет значение. В неисполненном списке всегда будет 8 элементов, так как это фиксированные/постоянные имена (значения в E будут меняться) и 4 или менее в выполненном списке.Excel IF statments

ОЖИДАЕМЫЕ РЕЗУЛЬТАТЫ:

Fulfilled List       UnFulfilled List 
     A  B         D   E 
    Apples 50        Apples  50 
    Oranges 75        Peanuts  
    Grapes 60        Oranges  75 
    Avacados 100        Grapes  60 
               Carrots  
               Avacados  100 

Вот вроде моей мысли. Он будет проверять значение, если значение есть, поместить значение и затем поместить имя, если значение не существует, проверьте следующую ячейку вниз. Однако это провалится, так как это займет e2 независимо от того, когда мы хотим, чтобы он принимал действительные элементы.

Cell B1 = =if(e1="",e2,e1) 
Cell A1 = =if(b1="Apples,d1,d2) nested if statement possibly? 

Любая помощь будет оценена как я могу это сделать. Благодаря!

+0

* I я пытаюсь придумать обычную систему таким образом, чтобы я мог выполнить оператор if для выполнения списка (возможно 4 max) заполненных данными имен * <переписать эту инструкцию на английском языке. (т. е. что означает любое из этих терминов * *, учитывая, что мы не можем читать ваши мысли?). В этой заметке вы можете переписать весь свой вопрос, включая примеры ожидаемых результатов, или лучшее описание того, что вы ожидаете. –

+0

Возможно, вы хотите использовать функцию 'VLOOKUP'. –

+1

Это то, что вы ищете: '= IF (E1 =" ", IF (E2 =" ", IF (E3 =" ", ..., E3), E2), E1)'? Это просто идет по столбцу E до тех пор, пока не будет найдено какое-либо значение. Если вы хотите сопоставить записи из списка в столбце A с соответствующими значениями из списка в столбцах D/E, вы должны использовать некоторые [INDEX] (https://support.office.com/en-us/article/INDEX- функция-A5DCF0DD-996D-40A4-A822-B56B061328BD)/[СПИЧКА] (https://support.office.com/en-us/article/MATCH-function-E8DFFD45-C762-47D6-BF89-533F4A37673A) или [VLOOKUP] (https://support.office.com/en-us/article/VLOOKUP-function-0BBC8083-26FE -4963-8AB8-93A18AD188A1) функция. –

ответ

2

Если я правильно понимаю, вы можете либо использовать сводную таблицу или использовать формулу массива, например, как это в A1:

=IFERROR(INDEX($D$1:$D$3,SMALL(IF($E$1:$E$3>0,ROW($E$1:$E$3)),ROW())),"") 

Примечание: Нажмите Ctrl + Shift + Enter, а затем перетащить вниз по мере необходимости

Примечание2: в данном случае использовал строку 1, если данные были ниже, а затем (например, tbale с заголовком), где сТРОКА() является становится -> сТРОКА() - сТРОКА (ссылки на заголовок ячейка)

Вам нужно изменить:

$ D $ 1: $ D $ 3 - это должно быть полный список элементов в столбце D

$ E $ 1: $ E $ 3 - аналогично это должно быть полный список графов в столбце E (изменение в обоих местах - рядом с ПЧ и ближайшие к рядам)

Затем в колонке B вы можете иметь ВПР формулу, такие как:

=IF(LEN(A1)>0,VLOOKUP(A1,$D$1:$E$3,2,FALSE),"") 

Примечание: это предполагает, что у вас нет дубликатов в колонке D

Опять вам нужно будет изменить $ D $ 1: $ E $ 3 так, что он имеет все содержание в этих колонках

Надежда, что помогает

+0

Формула, которую вы предоставили, отлично работает, если список данных начинается в строке 1. Но если у вас есть заголовки и список, скажем, '$ D $ 2: $ D $ 8' (и E 2-8), то он дает неправильные вывода (по крайней мере, для моего тестирования). Вы можете отредактировать формулу, чтобы работать независимо от первой строки. –

+0

@ Maxhob17 это очень хороший пример! Это именно то, что я искал. Я должен буду смотреть дальше на функциональность VLOOKUP и малую функциональность. Спасибо за подсказку/ответ! – Brad

+0

Хорошее мышление в 'Vlookup()', вместо того, чтобы иметь две формулы массива, которые должны сократить время вычисления и размер рабочей книги. – BruceWayne