1

ボタンの作成に関するチュートリアルを読みましたが、非常にシンプルで簡単でした。

ただし、その場でボタンを作成したい。ステータス欄があります。非表示のシートのセルの範囲から作成されたドロップダウン メニューがあります。これは作業コードです。

ウィッシュリストはこちら。「ステータスX」を選択したときにボタンを表示させたい。次に、ユーザーはボタンを押してカウンターをインクリメントできます (表示されます)。ボタンが押されたときに、日付と時刻を追跡する必要があります (履歴も含めて表示されます)。前回のボタン押下日時が常に表示されます。

カウンターがある数値 (たとえば 10) に達すると、警告メッセージがポップアップ表示されますが、これをユーザーが確認する必要があります。その後、ステータスが自動的に変更され、ボタンが消えて、行全体 (色の変化を伴う) が別のページ (または別のスプレッドシート) に移動します。全体的に)。

現在、ステータスが変化したときに行の色を変更し、行を別のページに移動する機能があります。どういうわけかその時点でボタンが作成されると思います。チュートリアルに書かれていること以外は、実際には当てはまらないと思いますが、先に進む方法がよくわかりません。何か助けはありますか?

私の場合、これが実行される可能性のあるページがいくつかあるため、「アクティブなページ」を使用することは悪い考えであることに注意してください。なので、すべて「sourceSheet」と「targetSheet」を使っています。

ありがとうございました

//編集トリガーとしてhappyFunTimeを搭載。

function happyFunTime() {
  var s = SpreadsheetApp.getActiveSheet();
  var r = s.getActiveCell();

    // set row color as soon as we know the status
    var i = r.getRow();

    var targetSheetName=setRowColor(i);


   // moveRow(targetSheetName);

  }

function setRowColor(i)
{

  var sName;
  var outCome = [];
  var color;
  var range = SpreadsheetApp.getActiveSheet().getDataRange();
  var statusColumnOffset = getStatusColumnOffset();
  var rowRange = range.offset(i-1, 0, 1);
  var status = rowRange.offset(0, statusColumnOffset).getValue();


outCome=checkStatus(status);

sName=outCome[0];
color=outCome[1];
rowRange.setBackgroundColor(color);    

return sName;
}
4

1 に答える 1

0

プログラムでこれを達成するためのコードを書いてみましたか? その場合は、ここに投稿してください。作業中のコードをよりよく理解し、それに基づいて構築するのが簡単になるためです。それとも、誰かにコードを書いてもらいたいだけですか? あなたが説明したことはすべて、プログラムで達成することは確かに可能です。目的を達成するための手段として、onEdit トリガーを調査することをお勧めします。

于 2012-11-23T13:19:51.230 に答える