17

Excel には、早期オプトアウト AND 関数 (短絡評価とも呼ばれます) はありますか?

例えば:

=AND(FALSE, #N/A)

#N/A を返します。関数が「早期オプトアウト」である場合、最初の FALSE が見つかるとすぐに FALSE を返します。追加の値を指定しないと、関数が true を返すことはありません。

エクセルにそのような機能はありますか?

4

2 に答える 2

4

お探しの関数は、ネイティブ Excel には存在しません。

ただし、次を使用して、それを模倣できますIFERROR

=AND(FALSE,IFERROR(A1,FALSE))

(2007 年以降で動作します。2003 年には、=IF(ISERROR(A1),FALSE,A1)代わりにを使用する必要がありますIFERROR(A1,FALSE)。)

または、ユーザー定義関数を作成することもできます。

Public Function EarlyAnd(var1 As Variant, ParamArray vars() As Variant) As Boolean
    On Error GoTo Finalize
    Dim blnTemp As Boolean
    Dim varNext As Variant

    If Not CBool(var1) Then GoTo Finalize
    For Each varNext In vars
        If Not CBool(varNext) Then GoTo Finalize
    Next

    blnTemp = True

Finalize:
    EarlyAnd = blnTemp

End Function

この関数を Visual Basic Editor のモジュールに配置します。=EarlyAnd(False,A1)これで、Excel で使用できます。

于 2013-06-04T20:20:56.720 に答える