Extensão das Planilhas Google

O Google Apps Script permite que você faça coisas novas e interessantes com o Planilhas Google. Você pode use o Apps Script para adicionar menus personalizados, caixas de diálogo e barras laterais das Planilhas Google. Ela também permite escrever funções personalizadas para Planilhas, bem como integrar o Planilhas com outros Serviços do Google, como Agenda, Drive e Gmail

A maioria dos scripts criados para o Planilhas Google manipula matrizes para interagem com as células, linhas e colunas em uma planilha. Se você não estiver com as matrizes em JavaScript, o Codecademy oferece uma ótimo módulo de treinamento para matrizes. Este curso não foi desenvolvido nem está associado ao Google.

Para uma introdução rápida ao uso do Apps Script com o Planilhas Google, consulte a guia de início rápido de cinco minutos para Macros, menus e funções personalizadas.

Primeiros passos

O Apps Script inclui APIs especiais que permitem criar, ler e editar Planilhas Google. O Apps Script pode interagir com as Planilhas Google de duas formas formas: qualquer script pode criar ou modificar uma planilha se o usuário do script tiver permissões apropriadas para a planilha, e um script também pode ser vinculado a uma planilha, o que dá ao script recursos especiais para alterar a interface do usuário ou responder quando a planilha é aberta. Para criar um script vinculado, selecione Extensões > Apps Script de dentro Planilhas Google.

O serviço Planilhas trata o Google Planilhas como uma grade, operando com matrizes bidimensionais. Para recuperar os dados da planilha, você deve ter acesso à planilha onde estão os dados armazenados, obtenha o intervalo na planilha que contém os dados e, em seguida, obtenha valores das células. O Apps Script facilita o acesso aos dados lendo dados estruturados na planilha e criar objetos JavaScript para eles.

Como ler dados

Suponha que você tenha uma lista de nomes e números de produtos armazenados em em uma planilha, como mostrado na imagem abaixo.

O exemplo abaixo mostra como recuperar e registrar os nomes e os nomes de produtos números grandes.

function logProductInfo() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var data = sheet.getDataRange().getValues();
  for (var i = 0; i < data.length; i++) {
    Logger.log('Product name: ' + data[i][0]);
    Logger.log('Product number: ' + data[i][1]);
  }
}

Ver registros

Para visualizar os dados que foram registrados, na parte superior do editor de script, clique em Registro de execução.

Como gravar dados

Para armazenar dados, como um novo nome e número de produto para o planilha, adicione o seguinte código ao final do script.

function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}

O código acima anexa uma nova linha na parte inferior da planilha, com os valores especificados. Se você executar essa função, verá uma nova linha adicionada ao planilha.

Menus e interfaces do usuário personalizados

Você pode personalizar as Planilhas Google adicionando menus personalizados, caixas de diálogo e barras laterais. Para aprender os conceitos básicos da criação de menus, consulte a guia de cardápios. Para saber como personalizar o conteúdo de uma caixa de diálogo, consulte a guia do serviço HTML.

Você também pode anexar uma função de script a uma imagem ou desenho em uma planilha; a função será executada quando um usuário clicar na imagem ou desenho. Para saber mais, consulte Imagens e desenhos no Planilhas Google.

Se você planeja publicar sua interface personalizada como parte de um complemento, siga as guia de estilo para manter a consistência com o e o layout do editor do Planilhas Google.

Conectando ao app Formulários Google

Com o Apps Script, você conecta os Formulários Google ao Planilhas Google usando Formulários e Serviços de planilha. Este recurso podem criar automaticamente um Formulário Google com base nos dados de uma planilha. O Apps Script também permite usar acionadores, como onFormSubmit para executar uma ação específica depois que um usuário responder ao formulário. Para saber mais sobre como conectar Planilhas Google a Formulários Google, consulte a seção Gerenciar Respostas para os Formulários Google. Guia de início rápido de cinco minutos.

Formatação

A classe Range tem métodos como setBackground(color) para acessar e modificar o formato de uma célula ou intervalo de células. O seguinte mostra como definir o estilo da fonte de um intervalo:

function formatMySpreadsheet() {
  // Set the font style of the cells in the range of B2:C2 to be italic.
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[0];
  var cell = sheet.getRange('B2:C2');
  cell.setFontStyle('italic');
}

Validação de dados

Com o Apps Script, você pode acessar regras de validação de dados no app Planilhas Google. ou criar novas regras. Por exemplo, o exemplo a seguir mostra como definir um regra de validação de dados que permite apenas números entre 1 e 100 em uma célula.

function validateMySpreadsheet() {
  // Set a rule for the cell B4 to be a number between 1 and 100.
  var cell = SpreadsheetApp.getActive().getRange('B4');
  var rule = SpreadsheetApp.newDataValidation()
     .requireNumberBetween(1, 100)
     .setAllowInvalid(false)
     .setHelpText('Number must be between 1 and 100.')
     .build();
  cell.setDataValidation(rule);
}

Para mais detalhes sobre como trabalhar com regras de validação de dados, consulte SpreadsheetApp.newDataValidation(), DataValidationBuilder, e Range.setDataValidation(rule)

Gráficos

O Apps Script permite incorporar gráficos em uma planilha que representam os dados em uma em um intervalo específico. O exemplo a seguir gera um gráfico de barras incorporado, supondo que você tem dados gráficos nas células A1:B15:

function newChart() {
  // Generate a chart representing the data in the range of A1:B15.
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[0];

  var chart = sheet.newChart()
     .setChartType(Charts.ChartType.BAR)
     .addRange(sheet.getRange('A1:B15'))
     .setPosition(5, 5, 0, 0)
     .build();

  sheet.insertChart(chart);
}

Para saber mais sobre como incorporar um gráfico à sua planilha, consulte EmbeddedChart e criadores de gráficos específicos, EmbeddedPieChartBuilder

Funções personalizadas no app Planilhas Google

Uma função personalizada é semelhante a uma função integrada da planilha como =SUM(A1:A5), mas você define o de funções com o Apps Script. Por exemplo, é possível criar um in2mm(), que converte um valor de polegadas para milímetros, depois usa a fórmula em sua planilha digitando =in2mm(A1) ou =in2mm(10) em uma célula

Para saber mais sobre as funções personalizadas, teste Menus e funções personalizadas de cinco minutos ou confira os detalhes guia de funções personalizadas.

Macros

As macros são outra forma de executar o código do Apps Script na interface do Planilhas Google. Ao contrário das funções personalizadas, você as ativa com um atalho de teclado ou o menu Planilhas Google. Para mais informações, consulte Macros do Planilhas Google.

Complementos para o Planilhas Google

Os complementos são fornecidos especialmente no Apps Script. projetos que são executados no Planilhas Google e podem ser instalados na loja de complementos do Planilhas Google. Se você desenvolveu um script para as Planilhas Google e quiser compartilhá-lo com o mundo, o Apps Script permite que você publicar seu script como para que outros usuários possam instalá-lo da loja de complementos.

Gatilhos

Scripts que estão vinculados a um arquivo do Planilhas Google podem usar gatilhos simples, como as funções onOpen() e onEdit() para responder automaticamente quando um usuário que editou acesso à planilha abre ou edita a planilha.

Como gatilhos simples, acionadores instaláveis permitem que as Planilhas Google executar uma função automaticamente quando um determinado evento ocorrer. Pode ser instalado os gatilhos oferecem mais flexibilidade do que gatilhos simples e suporte os seguintes eventos: aberto, editar, alterar, envio de formulário e orientado por tempo (relógio).