1

私はそのIF声明を理解するのに苦労しています。私がやろうとしていることは(phpで):

    if(isEmpty($cellA) && isNotEmpty($cellB){
        $cellA = CurrentDate;
    }

スプレッドシートでこれを行う私の試みは次のとおりです。

    =IF(ISBLANK($A3), IF(ISBLANK($B3),"",$A3 = NOW()) ,"")

エラーが発生しますerror: Circular dependency detected

よろしくお願いします。

4

1 に答える 1

4

その数式をいずれかに入れるか、数式が数式を含むセルを参照するため、循環依存が発生A3B3ます。これは、再帰的に永久に継続します。=A1非常に単純な例を考えてみてください-セル内の数式A1。数式が評価されると、その値はA1(現在のセルである)の値である必要があることがわかります。次に、シートを見つけA1てその値を取得しようとしますが、先ほど見た=A1ように、数式はであるため、セルに移動します。A1(すでにある場所)もう一度、値を計算してみてください。このプロセスでは無限ループに陥ります。Spreadsheetsは、セルがそれ自体を参照していることに気付いたときに何も計算せず、代わりに循環参照を警告することで、これが発生するのを防ぎます。

また、数式内から任意のセルに値を割り当てることはできないため、その部分は、または$A3 = NOW()を返すブール評価にすぎません。一般的な構文(あなたが持っているように見えます)はです。PHPで行っていることは、実際には、GoogleDocsに組み込まれているJavaScript風のプログラミング言語であるAppScriptに適しています。これを使用すると、探していることを実行できます。そうでない場合は、別の列を作成してそこで計算を実行する必要があります。お役に立てば幸いです:)TrueFalseIF(<condition>, <value_if_true>, <value_if_false)

于 2012-11-22T10:14:18.027 に答える