0

過去数か月間、Googleドキュメントスプレッドシートで次の数式を使用しています。約4週間前に動作を停止しました。理由がわかりません。数式の動作に変更があったことを示すものは何も見つかりませんでした。また、データに変更を加えたり変更したりしていません。

私が得るエラーは次のとおりです。

「エラー:引数が空白です」、あまり役に立ちません。

式は次のとおりです。

=arrayformula(
        sum(
            (Sheet1!$B$2:$B$100458=$A3)
            *
            (arrayformula(
                month(Sheet1!$A$2:$A$100458)
                )
                = month(C$1)
            )
            *
            (arrayformula(
                year(Sheet1!$A$2:$A$100458)
                )
                =year(C$1)
            )
        )
    )

最初の列に一意のIDがあり、一番上の行に日付(毎月1日)があります。次に、シート1を調べて、月と年にそのIDに一致するレコードの数を探し、カウントを返します。しばらくは問題なく動作していましたが、何が起こったのかわかりませんでした。改訂履歴に戻ってみても違いはありません。

4

1 に答える 1

0

以前はなぜ機能したのかわかりませんが、各ステップを実行した後、これを機能させるために私がしなければならなかったことです。

=arrayformula(
    sum(
        iferror(
            arrayformula(Sheet1!$B$2:$B$100458=$A3)
            , FALSE
        )
        *
        iferror(
            arrayformula(
                month(Sheet1!$A$2:$A$100458)
                = month(C$1)
            )
            ,FALSE
        )
        *
        iferror(
            arrayformula(
                year(Sheet1!$A$2:$A$100458)  
                =year(C$1)
            )
            ,FALSE
        )   
    )
)

基本的に、いくつかの配列式の順序を変更し、iferror()関数を追加します。レコードの終わりを通過したときに、arrayformulasがfalseではなくエラーをスローしているように見えたため、sumもエラーをスローしていました。Iferror()はそれを修正しました。

于 2012-07-05T16:12:48.997 に答える