2016-08-04 8 views
1

色の変化に基づいてセルの値を変更しようとしています...セルの色を変更すると何も起こりません。セルのテキストは設定されません。Googleスプレッドシート:アクティブセルの値を動的に変更しますか?

+0

あなたは色に基づいて、セルの値を設定したいですか?もしそうなら、コードを実行するとどうなりますか?それは素晴らしいスタート地点のように見えます。 –

+0

@DouglasGaskell - 色を変更すると何も起こりません。セルのテキストは設定されません。 – sbaden

+0

それから質問にその詳細を含めるべきでしょう。この関数に対して 'onEdit'トリガを設定しましたか? –

答えて

1

私はこのアウトを試してみましたが、二つのことに気づきました。まず、redの代わりに#ff0000という名前の代わりに色の16進コードを使用する必要があります。また、セルの背景色を変更することは編集とは見なされないようです。そのため、セルの色を変更してその中に何かを入力すると(たとえ1つのスペースでも)、セルを終了するとテキストが目的のものに変わります。私のために、次の作品 - 私の代わりに、トリガの完全な単一のonEdit(e)を使用し、色に基づいてスイッチをした:

function onEdit(e){ 
    var cell = e.source.getActiveSheet().getActiveCell(); 

    var currentColor = cell.getBackgroundColor(); 

    switch (currentColor){ 

    case '#ffdc32': 
     cell.setValue('IN PROGRESS'); 
     break; 

    case '#00ff00': 
     cell.setValue('COMPLETED'); 
     break; 

    case '#ff0000': 
     cell.setValue('ERRORS'); 
     break; 

    default: 
     break; 
    } 
} 
1

トリガする機能を取得するには、トリガをセットアップする必要があります。

最も簡単な方法は、関数名をonEditに変更することです。これは自動的に簡単なトリガーとして機能します。

また、セットアップResourcesメニューに行き、そしてCurrent Projects Triggersに、no triggers setup...テキストをクリックしてから機能を選択し、スプレッドシートから選択して、インストールトリガは、その後、下図のように、編集に選択することができます。

enter image description here

enter image description here

Simple Triggers Documentation

Installable Triggers Documentation

+0

まだ動作しません。私は元のコードにコードを追加しようとしました...元のコードを見てください(編集済み)。 – sbaden

+0

@sbadenああ、そうだ。セル上で関数を使用しています。関数が実行されているセルの値を設定することはできません。値を返す必要があります。私は自分のコンピュータに戻ってきたときに投稿を編集します。 –

+0

トリガーを作成したときにセルの機能を削除しました。トリガーは、右に編集されたすべてのセルで機能するはずですか?私の関数はアクティブなセルを取得しています。 – sbaden

関連する問題