何が足りないのでしょうか? この関数に入力した引数が多すぎます - ネストされた IF ステートメント

何が足りないのでしょうか? この関数に入力した引数が多すぎます - ネストされた IF ステートメント

「この関数に入力した引数が多すぎます」というエラーが発生していますが、その理由がわかりません。必要なシナリオのために、ネストされた IF ステートメントと AND ステートメントを用意しました。しかし、何が足りないのかどうしてもわかりません。誰かいますか?

=IF(
    HOUSING_PROVIDED = "Yes",
    0,
     IF(
        AND(
            HOUSING_PROVIDED = "No",
            HOUSING_RECALC_YN = "No",
            PRIOR_EXCESS_HOUSING <= 0
        ),
        0,
         IF(
            AND(
                HOUSING_PROVIDED = "No",
                HOUSING_RECALC_YN = "No",
                PRIOR_EXCESS_HOUSING > 0
            ),
            PRIOR_EXCESS_HOUSING,
             IF(
                AND(
                    HOUSING_PROVIDED = "No",
                    HOUSING_RECALC_YN = "Yes",
                    DUAL_CAREER_YN = "No",
                    EXCESS_HOUSING = "Yes"
                ),
                EXCESS_HOUSING,
                 IF(
                    AND(
                        HOUSING_PROVIDED = "No",
                        HOUSING_RECALC_YN = "Yes",
                        DUAL_CAREER_YN = "No",
                        EXCESS_HOUSING = "No",
                        HOUSING_RENTAL_LIMIT > 0
                    ),
                    HOUSING_RENTAL_LIMIT,
                     IF(
                        AND(
                            HOUSING_PROVIDED = "No",
                            HOUSING_RECALC_YN = "Yes",
                            DUAL_CAREER_YN = "No",
                            EXCESS_HOUSING = "No",
                            HOUSING_RENTAL_LIMIT <= 0
                        ),
                        "Run Data Calc",
                         IF(
                            AND(
                                HOUSING_PROVIDED = "No",
                                HOUSING_RECALC_YN = "Yes",
                                DUAL_CAREER_YN = "Yes",
                                SPOUSE_POLICY <> "Core",
                                EXCESS_HOUSING = "Yes"
                            ),
                            EXCESS_HOUSING,
                             IF(
                                AND(
                                    HOUSING_PROVIDED = "No",
                                    HOUSING_RECALC_YN = "Yes",
                                    DUAL_CAREER_YN = "Yes",
                                    SPOUSE_POLICY <> "Core",
                                    EXCESS_HOUSING = "Yes"
                                ),
                                HOUSING_RENTAL_LIMIT > 0,
                                HOUSING_RENTAL_LIMIT,
                                 IF(
                                    AND(
                                        HOUSING_PROVIDED = "No",
                                        HOUSING_RECALC_YN = "Yes",
                                        DUAL_CAREER_YN = "Yes",
                                        SPOUSE_POLICY <> "Core",
                                        EXCESS_HOUSING = "Yes"
                                    ),
                                    HOUSING_RENTAL_LIMIT <= 0,
                                    "Run Data Calc",
                                     IF(
                                        AND(
                                            HOUSING_PROVIDED = "No",
                                            HOUSING_RECALC_YN = "Yes",
                                            DUAL_CAREER_YN = "Yes",
                                            SPOUSE_POLICY = "Core",
                                            DUAL_CAREER_LOWER_YN = "Yes"
                                        ),
                                        0,
                                         IF(
                                            AND(
                                                HOUSING_PROVIDED = "No",
                                                HOUSING_RECALC_YN = "Yes",
                                                DUAL_CAREER_YN = "Yes",
                                                SPOUSE_POLICY = "Core",
                                                DUAL_CAREER_LOWER_YN = "No",
                                                EXCESS_HOUSING = "Yes"
                                            ),
                                            EXCESS_HOUSING,
                                             IF(
                                                AND(
                                                    HOUSING_PROVIDED = "No",
                                                    HOUSING_RECALC_YN = "Yes",
                                                    DUAL_CAREER_YN = "Yes",
                                                    SPOUSE_POLICY = "Core",
                                                    DUAL_CAREER_LOWER_YN = "No",
                                                    HOUSING_RENTAL_LIMIT > 0
                                                ),
                                                HOUSING_RENTAL_LIMIT,
                                                 IF(
                                                    AND(
                                                        HOUSING_PROVIDED = "No",
                                                        HOUSING_RECALC_YN = "Yes",
                                                        DUAL_CAREER_YN = "Yes",
                                                        SPOUSE_POLICY = "Core",
                                                        DUAL_CAREER_LOWER_YN = "No",
                                                        HOUSING_RENTAL_LIMIT <= 0
                                                    ),
                                                    "Run Data Calc",
                                                    "Dont Run Data Calc"
                                                )
                                            )
                                        )
                                    )
                                )
                            )
                        )
                    )
                )
            )
        )
    )
)

答え1

これを正しく読むと、次のIF()呼び出しには 4 つの引数があります。

 IF(
    AND(
        HOUSING_PROVIDED = "No",
        HOUSING_RECALC_YN = "Yes",
        DUAL_CAREER_YN = "Yes",
        SPOUSE_POLICY <> "Core",
        EXCESS_HOUSING = "Yes"
    ),
    HOUSING_RENTAL_LIMIT > 0,
    HOUSING_RENTAL_LIMIT,
     IF(
        ...
    )
)

展開されたコードの 53 行目から始まります。

63 行目から始まる別のステートメントにも 4 つの引数があります。

 IF(
    AND(
        HOUSING_PROVIDED = "No",
        HOUSING_RECALC_YN = "Yes",
        DUAL_CAREER_YN = "Yes",
        SPOUSE_POLICY <> "Core",
        EXCESS_HOUSING = "Yes"
    ),
    HOUSING_RENTAL_LIMIT <= 0,
    "Run Data Calc",
     IF(
        ...
    )
)

でも、本当に、そんなことはしないでください。明後日から、これを修正することは絶対にできなくなります。単に、なぜそれをしたのか、どうやってやったのか、そしておそらく何をやったのかさえ理解できないからです。;)

関連情報