¿Cómo establecer el valor de una celda en Hojas de cálculo de Google mediante el Script de aplicaciones?


134

Quiero establecer texto o número en Google Sheet desde el script.

Quiero establecer Helloo número 9en la celda F2. Encontré este código hasta ahora:

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

pero eso no especifica qué celda.


44
¿puedo sugerirle que lea los conceptos básicos de appscript probando los tutoriales?
Serge insas

Respuestas:


214

El siguiente código hace lo que se requiere

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

2
¿Cómo obtener rango con números? ¿Cuáles son las coordenadas de la celda c2?
JuanPablo

55
C2 es la segunda columna de la segunda fila, así que >> getRange (2,3) >> getRange (row, col)
Serge insas

Hola ¿Sabes ahora cómo obtener la fila y el número de columna de la celda actual? ¿Cómo puedo establecer el valor en la celda actual?
Charles Chow

@CharlesChow, lo siento, pero ya no estoy involucrado en el desarrollo de GAS. Consulte este y estos elementos de ayuda. Creo que podrían ayudar.
megabyte1024

1
@CharlesChow Puede usar SpreadsheetApp.getActiveSheet (). GetActiveCell (). GetRow () y SpreadsheetApp.getActiveSheet (). GetActiveCell (). GetColumn ()
Augustine C

42

Use el setValuemétodo de Rangeclase para establecer el valor de una celda en particular.

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

También puede seleccionar una celda usando números de fila y columna.

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

También es posible establecer el valor de varias celdas a la vez.

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

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

16

Solución: SpreadsheetApp.getActiveSheet().getRange('F2').setValue('hello')

Explicacion:

Establecer el valor en una celda en la hoja de cálculo a la que se adjunta el script

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

Establecer el valor en una celda en la hoja que está abierta actualmente y a la que se adjunta el script

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

Establecer el valor en una celda en alguna hoja de cálculo a la que NO se adjunta el script (se conoce el nombre de la hoja de destino)

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

Establecer el valor en una celda en alguna hoja de cálculo a la que NO se adjunta el script (se conoce la posición de la hoja de destino)

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

Estas son constantes, debes definirlas tú mismo

SHEET_ID

SHEET_NAME

POSITION

VALUE

RANGE

Por guión adjunto a una hoja quiero decir que ese guión reside en el editor de guiones de esa hoja. No adjunto significa que no reside en el editor de scripts de esa hoja. Puede estar en cualquier otro lugar.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.