"Sheet1"と "Sheet2"という名前の2枚のスプレッドシートがあります。私は次の使用例は、シート1に、ブラウザに最初の範囲を選択Google Script getActiveRange
function foo(){
var oSheet1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1"),
oSheet2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet2");
Logger.log(oSheet1.getActiveRange().getValues());
Logger.log(oSheet2.getActiveRange().getValues());
} // foo
、その後、Sheet2の上でクリックして、最初の異なる第二の範囲を、選択します。私は、メニュー項目をクリックする上で実行して、スクリプトを持っています。メニュー項目foo()をクリックします。ロガーはoSheet1とoSheet2で同じ結果を表示します。どうして?そして、私はどのように非アクティブシート上の選択範囲を得ることができますか?ここで
は私が間違っていたと推測フルアクセスhttps://docs.google.com/spreadsheets/d/1lfQl9H1PW2lKL-4YJir7uxl-ZMnDR6Zn1_FndG07WGY/edit#gid=1264703349
まず距離画像 - https://i.stack.imgur.com/GBdtF.png第2の範囲の画像 - https://i.stack.imgur.com/Qcivq.png – roskoshinsky
それが動作するかどうかあなたは ';' 1行目のセミコロンと2行目の先頭のvar。もちろん、ログを見る必要があります.2次元配列を2つ探してみましょう。だからあなたのスプレッドシートのようには見えません。しかし、この方法でデータを移動することには慣れておくべきです。なぜなら、少なくとも1桁は速く、細胞を乱すからです。 – Cooper
クーパー、意味する 関数foo(){ var oSheet1 = SpreadsheetApp.getActiveSpreadsheet()。getSheetByName( "Sheet1"); var oSheet2 = SpreadsheetApp.getActiveSpreadsheet()。getSheetByName( "Sheet2"); Logger.log(oSheet1.getActiveRange()。getValues()); Logger.log(oSheet2.getActiveRange()。getValues()); SpreadsheetApp.getUi()。alert(oSheet1.getActiveRange()。getValues()); SpreadsheetApp.getUi()。alert(oSheet2.getActiveRange()。getValues()); } // foo - セミコロンで状況を保存した場合、私は驚くでしょう。そして、このケースログは、異なるシートの選択肢を用いて2つの同じ結果を示す。 – roskoshinsky