Tutorial: Criar e formatar uma tabela do Excel
Este tutorial ensina os conceitos básicos de gravação, edição e escrita de um Script do Office para Excel. Você gravará um script que aplicará uma determinada formatação a uma planilha de registro de vendas. Depois, você editará o script gravado para aplicar outras formatações, criar e classificar uma tabela. Este padrão de registro e edição é uma importante ferramenta para ver como suas ações no Excel são parecidas com um código.
Pré-requisitos
Você precisará de acesso aos Scripts do Office para este tutorial. Examine o suporte da Plataforma se a guia Automatizar não aparecer.
Importante
Este tutorial é destinado a pessoas com conhecimento básico ou de nível intermediário de JavaScript ou TypeScript. Se você é novo no JavaScript, recomendamos começar com o tutorial da Mozilla sobre JavaScript. Visite o ambiente do Editor de Código do Scripts do Office para saber mais sobre o ambiente de script.
Adicione dados e grave um script básico
Primeiro, você precisará de alguns dados e um pequeno script inicial.
Crie uma nova pasta de trabalho do Excel.
Copie os seguintes dados de vendas de frutas e cole-os na planilha, começando na célula A1.
Fruta 2018 2019 Laranjas 1000 1200 Limões 800 900 Limões-galego 600 500 Toranjas 900 700 Abra a guia Automação. Se você não vir a guia Automação, verifique o excedente da faixa de opções selecionando a seta suspensa. Se ainda não estiver lá, siga o conselho do artigo Solução de Problemas de Scripts do Office .
Selecione o botão Gravar Ações.
Selecione as células A2:C2 (a linha "Laranjas") e defina a cor de preenchimento como laranja.
Interrompa a gravação selecionando o botão Parar.
Sua planilha deve ficar assim (não se preocupe se a cor for diferente):
Edite um script existente
O script anterior coloriu a linha "Laranjas" para ficar laranja. Adicione uma linha amarela para os "Limões".
No painel, agora aberto, Detalhes, selecione o botão Editar.
Você deve ver algo semelhante a este código:
function main(workbook: ExcelScript.Workbook) { // Set fill color to FFC000 for range Sheet1!A2:C2 let selectedSheet = workbook.getActiveWorksheet(); selectedSheet.getRange("A2:C2").getFormat().getFill().setColor("FFC000"); }
Este código recebe a planilha atual da pasta de trabalho. Depois, defina a cor de preenchimento do intervalo A2:C2.
Os intervalos são parte fundamental dos Scripts do Office no Excel. Um intervalo é um bloco retangular e contíguo de células que contém valores, fórmula e formatação. Eles são a estrutura básica das células através da qual você executará a maioria das tarefas de script.
Adicione a seguinte linha no final do script (entre onde
color
está definido e o encerramento}
):selectedSheet.getRange("A3:C3").getFormat().getFill().setColor("yellow");
Teste o script selecionando Executar. Sua pasta de trabalho já deve ter esta aparência:
Criar uma tabela
Em seguida, converta esses dados de vendas de frutas em uma tabela. Você continuará modificando o primeiro script para todo o tutorial.
Adicione a seguinte linha no final do script (antes do encerramento
}
):let table = selectedSheet.addTable("A1:C5", true);
Essa chamada retorna um
Table
objeto. Use essa tabela para classificar os dados. Classifique os dados em ordem crescente com base nos valores na coluna "Fruit". Adicione a seguinte linha assim que criar a tabela:table.getSort().apply([{ key: 0, ascending: true }]);
Seu script deve ter esta aparência:
function main(workbook: ExcelScript.Workbook) { // Set fill color to FFC000 for range Sheet1!A2:C2 let selectedSheet = workbook.getActiveWorksheet(); selectedSheet.getRange("A2:C2").getFormat().getFill().setColor("FFC000"); selectedSheet.getRange("A3:C3").getFormat().getFill().setColor("yellow"); let table = selectedSheet.addTable("A1:C5", true); table.getSort().apply([{ key: 0, ascending: true }]); }
As tabelas possuem um objeto
TableSort
, acessado por meio do métodoTable.getSort
. Você pode aplicar critérios de classificação a esse objeto. Oapply
método utiliza uma matriz deSortField
objetos. Nesse caso, você só tem um critério de classificação, portanto, você só usa umSortField
.key: 0
define a coluna com os valores que determinam a classificação como "0" (que nesse caso, é a primeira coluna na tabela A ).ascending: true
classifica os dados em ordem crescente (em vez de ordem decrescente).Execute o script. Você deve visualizar uma tabela como esta:
Observação
Se você executar novamente o script, receberá um erro. Isso ocorre porque você não pode criar uma tabela em cima de outra tabela. No entanto, você pode executar o script em uma planilha ou pasta de trabalho diferente.
Reexecute o script
- Crie uma nova planilha na pasta de trabalho atual.
- Copie os dados das frutas do início do tutorial e cole-os na nova planilha, começando na célula A1.
- Execute o script.
Próximas etapas
Tutorial completo: limpar e normalizar dados da pasta de trabalho do Excel. Ele ensina como ler dados de uma pasta de trabalho com um script do Office.
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários