2

これを手伝ってほしい。Google スプレッドシートにスクリプトが必要です。

CTRL+ ACTRL+が行うことを正確に行うスクリプトが必要ですD

したがって、最初の行に基づいてページ全体が自動的に埋められます。

詳細に関しては。

Sheet1 と Sheet2 の 2 つのシートがあるとします。

Sheet2 はデータベースです。したがって、すべてのセルと行にはプレーンな値/テキストがあります。

Sheet1 には、行 1 の各セルに最も単純な数式があります。

..Column 1....Column 2....Column 3...and so on
=Sheet2!A1, =Sheet2!B1, =Sheet2!C1,

したがって、最初の行を選択すると、ドットをつかんで下にドラッグすると、数式が下の行に入力され、次のようになります

=Sheet2!A1, =Sheet2!B1, =Sheet2!C1,
=Sheet2!A2, =Sheet2!B2, =Sheet2!C2,
=Sheet2!A3, =Sheet2!B3, =Sheet2!C3,

したがって、CTRL+を押すAと Sheet1 全体が選択され、+ を押すCTRLDそのワークシートのすべての行に数式が入力されます。

私の目標は、スクリプトがこれを行うようにすることです。

ここまで書いた

function f5(){
var sheet = SpreadsheetApp.getActiveSheet();
var allData = sheet.getDataRange();
var range = sheet.getRange(1,1,allData.getNumRows(),7)
range.activate();
};

これは目的の範囲を選択しますが、これは正しい方法ではないと思います。キープレスのシミュレーションも考えていましたが、これが可能であるというドキュメントが見つかりません。

4

1 に答える 1

5

次の何かが機能するはずです:

  var oneRowCopy = sheet.getRange(1,1,1, sheet.getLastColumn());
  var targetRows = sheet.getRange(2,1,sheet.getLastRow()-1, sheet.getLastColumn());
  oneRowCopy.copyTo(targetRows);
于 2013-11-13T16:27:11.170 に答える