Wie lege ich den Wert einer Zelle in Google Sheets mithilfe von Apps Script fest?

134

Ich möchte Text oder Nummer in Google Sheet aus dem Skript festlegen.

Ich möchte in der Zelle setzen Hellooder nummerieren . Ich habe diesen Code bisher gefunden: 9F2

SpreadsheetApp.getActiveRange().setValue('hello');

aber das gibt nicht an, welche Zelle.

Antennen
quelle
4
Darf ich vorschlagen, dass Sie die Grundlagen von Appscript lesen, indem Sie die Tutorials
Serge insas

Antworten:

213

Der folgende Code macht das, was erforderlich ist

function doTest() {
  SpreadsheetApp.getActiveSheet().getRange('F2').setValue('Hello');
}
Megabyte1024
quelle
2
Wie getRange mit Zahlen? Was ist die Koordinate der c2-Zelle?
JuanPablo
5
C2 ist dritte Spalte zweite Zeile, also >> getRange (2,3) >> getRange (Zeile, Spalte)
Serge insas
Hallo Wie können Sie jetzt die Zeilen- und Spaltennummer der aktuellen Zelle ermitteln? Wie kann ich den Wert auf die aktuelle Zelle setzen?
Charles Chow
@CharlesChow, es tut mir leid, aber ich bin nicht mehr an der GAS-Entwicklung beteiligt. Bitte beachten Sie diese und diese Hilfeartikel. Ich denke, sie könnten helfen.
Megabyte1024
1
@CharlesChow Sie können SpreadsheetApp.getActiveSheet (). GetActiveCell (). GetRow () und SpreadsheetApp.getActiveSheet (). GetActiveCell (). GetColumn ()
Augustine C
42

Verwenden setValueMethode der RangeKlasse des Wertes der bestimmten Zelle einzustellen.

function storeValue() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  // ss is now the spreadsheet the script is associated with
  var sheet = ss.getSheets()[0]; // sheets are counted starting from 0
  // sheet is the first worksheet in the spreadsheet
  var cell = sheet.getRange("B2"); 
  cell.setValue(100);
}

Sie können eine Zelle auch anhand von Zeilen- und Spaltennummern auswählen.

var cell = sheet.getRange(2, 3); // here cell is C2

Es ist auch möglich, den Wert mehrerer Zellen gleichzeitig festzulegen.

var values = [
  ["2.000", "1,000,000", "$2.99"]
];

var range = sheet.getRange("B2:D2");
range.setValues(values);
Sudo Bangbang
quelle
16

Lösung: SpreadsheetApp.getActiveSheet().getRange('F2').setValue('hello')

Erklärung:

Festlegen des Werts in einer Zelle in der Tabelle, an die das Skript angehängt ist

SpreadsheetApp.getActiveSpreadsheet().getSheetByName(SHEET_NAME).getRange(RANGE).setValue(VALUE);

Festlegen des Werts in einer Zelle in einem Blatt, das gerade geöffnet ist und an das ein Skript angehängt ist

SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(RANGE).setValue(VALUE);

Festlegen des Werts in einer Zelle in einer Tabelle, an die das Skript NICHT angehängt ist (Name des Zielblatts bekannt)

SpreadsheetApp.openById(SHEET_ID).getSheetByName(SHEET_NAME).getRange(RANGE).setValue(VALUE);

Festlegen des Werts in einer Zelle in einer Tabelle, an die das Skript NICHT angehängt ist (Position des Zielblatts bekannt)

SpreadsheetApp.openById(SHEET_ID).getSheets()[POSITION].getRange(RANGE).setValue(VALUE);

Dies sind Konstanten, die Sie selbst definieren müssen

SHEET_ID

SHEET_NAME

POSITION

VALUE

RANGE

Mit einem an ein Blatt angehängten Skript meine ich, dass sich das Skript im Skripteditor dieses Blattes befindet. Nicht angehängt bedeutet, dass Sie sich nicht im Skripteditor dieses Blattes befinden. Es kann an jedem anderen Ort sein.

Umair Mohammad
quelle