Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save ErickPetru/92fdf0cfe3d234bd407366108979ec61 to your computer and use it in GitHub Desktop.
Save ErickPetru/92fdf0cfe3d234bd407366108979ec61 to your computer and use it in GitHub Desktop.
Um suplemento com um botão que deve percorrer os valores de uma lista de números inteiros previamente preenchidos pelo usuário na coluna A, na folha de trabalho ativa da planilha Excel aberta, considerando-se que a quantidade de linhas com números preenchidos é incerta. Para cada número preenchido, deve-se calcular o quadrado do número e a raiz …
name: Exercícios para Revisão - Item 2
description: >-
Um suplemento com um botão que deve percorrer os valores de uma lista de
números inteiros previamente preenchidos pelo usuário na coluna A, na folha de
trabalho ativa da planilha Excel aberta, considerando-se que a quantidade de
linhas com números preenchidos é incerta. Para cada número preenchido, deve-se
calcular o quadrado do número e a raiz quadrada do número, exibindo o primeiro
resultado na coluna B ao lado do número, e o segundo resultado na coluna C ao
lado do número.
host: EXCEL
api_set: {}
script:
content: |
const button = document.querySelector("button");
button.addEventListener("click", () => {
Excel.run(async (context) => {
// Carrega os valores e a quantidade de linhas da coluna A.
const sheet = context.workbook.worksheets.getActiveWorksheet();
const rangeA = sheet.getRange("A1").getExtendedRange("Down");
rangeA.load(["values", "rowCount"]);
await context.sync();
// Cria um Array que vai armazenar todos os resultados.
const results = [];
// Percorre cada linha do range da coluna A.
for (let i = 0; i < rangeA.rowCount; i++) {
// Recupera o número que está na primeira coluna da linha atual.
const n = rangeA.values[i][0];
// Calcula o quadrado e a raíz.
const square = n ** 2;
const root = Math.sqrt(n);
// Armazena o quadrado e uma coluna e a raíz em outra.
results.push([square, root]);
}
// Recupera o range de colunas B e C e coloca os valores calculados lá.
const rangeBC = sheet.getRange(`B1:C${rangeA.rowCount}`);
rangeBC.values = results;
});
});
language: typescript
template:
content: <button>Exibir quadrados e raízes</button>
language: html
style:
content: ''
language: css
libraries: |-
https://appsforoffice.microsoft.com/lib/1/hosted/office.js
@types/office-js
[email protected]/client/core.min.js
@types/core-js
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment