Come impostare il valore di una cella in Fogli Google utilizzando Script di app?


134

Voglio impostare il testo o il numero nel foglio di Google dallo script.

Voglio impostare Helloo numerare 9nella cella F2. Ho trovato questo codice finora:

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

ma questo non specifica quale cella.


4
posso suggerire di leggere le basi di appscript provando i tutorial?
Serge insas,

Risposte:


214

Il seguente codice fa ciò che è richiesto

function doTest() {
  SpreadsheetApp.getActiveSheet().getRange('F2').setValue('Hello');
}

2
come getRange con i numeri? quali sono le coordinate della cella c2?
Juan Pablo,

5
C2 è la seconda riga della terza colonna, quindi >> getRange (2,3) >> getRange (row, col)
Serge insas

Ciao Ora come ottenere la riga e il numero col della cella corrente? Come posso impostare il valore sulla cella corrente?
Charles Chow,

@CharlesChow, mi dispiace, ma non sono più coinvolto nello sviluppo di GAS. Si prega di fare riferimento a questo e questo gli elementi di aiuto. Penso che potrebbero aiutare.
megabyte1024

1
@CharlesChow Puoi usare SpreadsheetApp.getActiveSheet (). GetActiveCell (). GetRow () e SpreadsheetApp.getActiveSheet (). GetActiveCell (). GetColumn ()
Agostino C

42

Utilizzare il setValuemetodo di Rangeclasse per impostare il valore di una cella particolare.

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);
}

Puoi anche selezionare una cella usando i numeri di riga e colonna.

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

È anche possibile impostare il valore di più celle contemporaneamente.

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

var range = sheet.getRange("B2:D2");
range.setValues(values);

16

Soluzione: SpreadsheetApp.getActiveSheet().getRange('F2').setValue('hello')

Spiegazione :

Impostazione del valore in una cella nel foglio di calcolo a cui è allegato lo script

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

Impostazione del valore in una cella nel foglio attualmente aperta e a cui è associato lo script

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

Impostazione del valore in una cella in alcuni fogli di calcolo a cui lo script NON è allegato (nome del foglio di destinazione noto)

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

Impostazione del valore in una cella in alcuni fogli di calcolo a cui lo script NON è collegato (posizione del foglio di destinazione nota)

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

Queste sono costanti, devi definirle tu stesso

SHEET_ID

SHEET_NAME

POSITION

VALUE

RANGE

Per script allegato a un foglio intendo che lo script risiede nell'editor di script di quel foglio. Non allegato significa non risiedere nell'editor di script di quel foglio. Può essere in qualsiasi altro posto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.