Compartilhar via


Registrar alterações diárias no Excel e denunciá-las com um fluxo do Power Automate

Power Automate e Office Scripts combinam para lidar com tarefas repetitivas para você. Neste exemplo, você tem a tarefa de gravar uma única leitura numérica em uma pasta de trabalho todos os dias e relatar a alteração desde ontem. Você criará um fluxo para obter essa leitura, fazer logon na pasta de trabalho e relatar a alteração por meio de um email.

Instalação: Exemplo de arquivo do Excel

Esta pasta de trabalho contém os dados, objetos e formatação esperados pelo script.

Código de exemplo: registrar e relatar leituras diárias

Adicione o script a seguir à pasta de trabalho de exemplo. No Excel, use Automatizar>Novo Script para colar o código e salvar o script. Salve-o como Registro de valor diário e experimente a amostra por conta própria!

function main(workbook: ExcelScript.Workbook, newData: string): string {
  // Get the table by its name.
  const table = workbook.getTable("ReadingTable");

  // Read the current last entry in the Reading column.
  const readingColumn = table.getColumnByName("Reading");
  const readingColumnValues = readingColumn.getRange().getValues();
  const previousValue = readingColumnValues[readingColumnValues.length - 1][0] as number;

  // Add a row with the date, new value, and a formula calculating the difference.
  const currentDate = new Date(Date.now()).toLocaleDateString();
  const newRow = [currentDate, newData, "=[@Reading]-OFFSET([@Reading],-1,0)"];
  table.addRow(-1, newRow);

  // Return the difference between the newData and the previous entry.
  const difference = Number.parseFloat(newData) - previousValue;
  console.log(difference);
  return difference.toString();
}

Fluxo de exemplo: relatar alterações diárias

Siga estas etapas para criar um fluxo do Power Automate para o exemplo.

  1. Crie um novo fluxo de nuvem agendado.

  2. Agende o fluxo para repetir a cada 1 dia.

    A etapa de criação de fluxo mostrando que ela se repetirá todos os dias.

  3. Selecione Criar.

  4. Em um fluxo real, você adicionará uma etapa que obtém seus dados. Os dados podem vir de outra pasta de trabalho, um cartão adaptável do Teams ou qualquer outra fonte. Para testar o exemplo, faça um número de teste. Adicione uma ação e escolha a ação Inicializar variável . Dê-lhe os valores a seguir.

    1. Nome: Entrada
    2. Tipo: Inteiro
    3. Valor: 190000

    A ação De inicializar variável com os valores fornecidos.

  5. Adicione uma ação e escolha a ação executar script do conector do Excel Online (Business). Use os valores a seguir para a ação.

    1. Localização: OneDrive for Business
    2. Biblioteca de Documentos: OneDrive
    3. Arquivo: daily-readings.xlsx (Escolhido por meio do navegador de arquivos)
    4. Script: Registrar valor diário
    5. newData: Entrada (conteúdo dinâmico)

    A ação Executar script com os valores fornecidos.

  6. O script retorna a diferença de leitura diária como conteúdo dinâmico chamado "resultado". Para o exemplo, você pode enviar as informações por email para si mesmo. Adicione uma ação e escolha a ação Enviar um email (V2) do conector do Outlook (ou qualquer cliente de email que você preferir). Use os valores a seguir para concluir a ação.

    1. Para: Seu endereço de email
    2. Assunto: alteração diária de leitura
    3. Corpo: resultado de "Diferença de ontem:" (conteúdo dinâmico do Excel)

    O conector do Outlook concluído no Power Automate.

  7. Salve o fluxo e experimente-o. Use o botão Testar na página do editor de fluxo. Certifique-se de permitir o acesso quando solicitado.