Como definir o valor de uma célula no Planilhas Google usando o Script do Google Apps?


134

Quero definir texto ou número na planilha do Google a partir do script.

Eu quero definir Helloou número 9na célula F2. Encontrei este código até agora:

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

mas isso não especifica qual célula.


4
posso sugerir que você leia o básico do appscript tentando os tutoriais?
Serge insas

Respostas:


214

O código a seguir faz o que é necessário

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

2
como getRange com números? quais são as coordenadas da célula c2?
juanpablo

5
C2 é fileira terceira coluna segundo modo >> GetRange (2,3) >> GetRange (linha, coluna)
Serge INSAS

Oi Você agora como obter o número de linha e coluna da célula atual? Como posso definir o valor para a célula atual?
Charles Chow

@ CharlesChow, desculpe, mas não estou mais envolvido no desenvolvimento de GAS. Por favor, consulte este e este itens de ajuda. Eu acho que eles poderiam ajudar.
megabyte1024

1
@CharlesChow Você pode usar SpreadsheetApp.getActiveSheet (). GetActiveCell (). GetRow () e SpreadsheetApp.getActiveSheet (). GetActiveCell (). GetColumn ()
Agostinho C

42

Use o setValuemétodo da Rangeclasse para definir o valor de uma célula específica.

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

Você também pode selecionar uma célula usando os números de linha e coluna.

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

Também é possível definir o valor de várias células ao mesmo tempo.

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

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

16

Solução: SpreadsheetApp.getActiveSheet().getRange('F2').setValue('hello')

Explicação:

Definindo valor em uma célula da planilha à qual o script está anexado

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

Definindo valor em uma célula da planilha que está aberta atualmente e a qual script está anexado

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

Definir valor em uma célula em uma planilha à qual o script NÃO está anexado (nome da planilha de destino conhecido)

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

Definir valor em uma célula em uma planilha à qual o script NÃO está anexado (posição da folha de destino conhecida)

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

Estas são constantes, você mesmo deve defini-las

SHEET_ID

SHEET_NAME

POSITION

VALUE

RANGE

Por script anexado a uma planilha, quero dizer que o script reside no editor de scripts dessa planilha. Não anexado significa não residir no editor de scripts dessa planilha. Pode estar em qualquer outro lugar.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.