2

最近、スプレッドシート用の Google スクリプトをいじり始めました。現在選択されているセルに基づいてセルの値を変更する方法があるかどうか疑問に思っていました。たとえば、行番号を表示するセルが A1 にあり、ユーザーが B8 を強調表示した場合、A1 は「8」を表示します。それは可能ですか?

Google Apps-script スプレッドシート サービスのページをめくると、.getActiveCell というクラスに気付きました。誰かが私を正しい方向に向けることができますか?

助けてくれてありがとう。

4

2 に答える 2

1

この小さなコード スニペットは必要なことを部分的に実行しますが、単純なセル選択を検出することはできません。セルのコンテンツが変更された場合にのみ起動します。

function onEdit(){
  var ss = SpreadsheetApp.getActive();
  var cell = ss.getActiveCell();
  ss.getRange('A1').setValue(cell.getA1Notation().replace(/[^0-9]/g, ''));// get A1 notation and rip off any non numeric value to keep only the row number
}

私の知る限り、単純なクリックまたはキープレスで選択を取得する直接的な方法はありません。

于 2013-09-30T20:27:47.443 に答える
0

Google スプレッドシート スクリプトを使用すると、onChange(e)トリガーを登録できます。

インストール可能なトリガー

function createSpreadsheetEditTrigger() {
  var ss = SpreadsheetApp.getActive();
  ScriptApp.newTrigger('myFunction')
      .forSpreadsheet(ss)
      .onChange()
      .create();
}

選択が変更されたときにこれが発生するかどうかは試していません。

于 2015-06-15T12:36:46.507 に答える