2017-01-24 11 views
0
=IF(
Payment_Rules = Save_Only, 
IF(
    VLOOKUP(
     F7 & $B$13, 
     $Y$13:$AC$429, 
     IF(
      $Z$11 = $B$6, 
      2, 
      IF(
       $B$6 = $AA$11, 
       3, 
       IF(
        $B$6 = $AB$11, 
        4, 
        5 
       ) 
      ) 
     ), 
     FALSE 
    ) < D6, 
    D6, 
    VLOOKUP(
     F7 & $B$13, 
     $Y$13:$AC$429, 
     IF(
      $Z$11 = $B$6, 
      2, 
      IF(
       $B$6 = $AA$11, 
       3, 
       IF(
        $B$6 = $AB$11, 
        4, 
        5 
       ) 
      ) 
     ), 
     FALSE 
    ) 
), 
VLOOKUP(
    F7 & $B$13, 
    $Y$13:$AC$429, 
    IF(
     $Z$11 = $B$6, 
     2, 
     IF(
      $B$6 = $AA$11, 
      3, 
      IF(
       $B$6 = $AB$11, 
       4, 
       5 
      ) 
     ) 
    ), 
    FALSE 
) 

)EXCEL добавления новых столбцов в вложенном, если оператор

До сих пор я вложенный, если заявление в моем Excel файл, как это и она отлично работает, но новые столбцы добавляются в книгу, поэтому я должен настроить этот код немного, чтобы покрыть новые столбцы. (колонка AC: AF добавляются)

=IF(
Payment_Rules = Save_Only, 
IF(
    VLOOKUP(
     F6 & $B$13, 
     $Y$13:$AF$429, 
     IF(
      $Z$11 = $B$6, 
      2, 
      IF(
       $B$6 = $AA$11, 
       3, 
       IF(
        $B$6 = $AB$11, 
        4, 
        IF(
         $B$6 = $AC$11, 
         5, 
         IF(
          $B$6 = $AD$11, 
          6, 
          IF(
           $B$6 = $AE$11, 
           7, 
           IF(
            $B$6 = $AF$11, 
            8 
           ) 
          ) 
         ) 
        ) 
       ) 
      ) 
     ), 
     FALSE 
    ) < D5, 
    D5, 
    VLOOKUP(
     F6 & $B$13, 
     $Y$13:$AF$429, 
     IF(
      $Z$11 = $B$6, 
      2, 
      IF(
       $B$6 = $AA$11, 
       3, 
       IF(
        $B$6 = $AB$11, 
        4, 
        IF(
         $B$6 = $AC$11, 
         5, 
         IF(
          $B$6 = $AD$11, 
          6, 
          IF(
           $B$6 = $AE$11, 
           7, 
           IF(
            $B$6 = $AF$11, 
            8 
           ) 
          ) 
         ) 
        ) 
       ) 
      ) 
     ), 
     FALSE 
    ) 
), 
VLOOKUP(
    F6 & $B$13, 
    $Y$13:$AC$429, 
    IF(
     $Z$11 = $B$6, 
     2, 
     IF(
      $B$6 = $AA$11, 
      3, 
      IF(
       $B$6 = $AB$11, 
       4, 
       IF(
        $B$6 = $AC$11, 
        5, 
        IF(
         $B$6 = $AD$11, 
         6, 
         IF(
          $B$6 = $AE$11, 
          7, 
          IF(
           $B$6 = $AF$11, 
           8 
          ) 
         ) 
        ) 
       ) 
      ) 
     ) 
    ), 
    FALSE 
) 

)

Это то, что я получил для моего нового кода, но это дает мне # ССЫЛКА! ошибка. Я не могу понять, в чем дело. Поскольку оригинальный код работает отлично, я знаю, что нет ничего плохого в вызове ссылки. Как я могу исправить эту ошибку?

Спасибо!

+1

Я думаю, было бы довольно сложно проанализировать эту функцию без вашей книги. Попробуйте использовать формулу оценки. – Vinnie

ответ

0

Изменить все IF() внутри ВПР в СООТВЕТСТВУЕТ:

=MATCH($B$6,$Y$11:$DD$11,0) 

Это не должны быть обновлены, если не больше, чем столбец DD.

=IF(Payment_Rules=Save_Only,IF(VLOOKUP(F7&$B$13,$Y$13:$DD$429, 
MATCH($B$6,$Y$11:$DD$11,0),FALSE)<D6,D6,VLOOKUP(F7&$B$13,$Y$13:$DD$429, 
MATCH($B$6,$Y$11:$DD$11,0),FALSE)),VLOOKUP(F7&$B$13,$Y$13:$DD$429, 
MATCH($B$6,$Y$11:$DD$11,0),FALSE)) 
+0

= IF (Payment_Rules = Save_Only, IF (VLOOKUP (F6 и $ B $ 13, $ Y $ 13: $ AF $ 429, MATCH ($ B $ 6, $ Y $ 11: $ DD $ 11,0)), FALSE) terny

+0

Так что я написал так, но это дает мне слишком много аргументов для ошибки функции. Есть ли способ исправить это? Благодаря! – terny

+0

Вам также нужно изменить все '$ Y $ 13: $ AF $ 429' на' $ Y $ 13: $ DD $ 429' –