Executar scripts do Office com o Power Automate

O Power Automate permite adicionar scripts do Office a um fluxo de trabalho maior e automatizado. Você pode usar o Power Automate para fazer coisas como adicionar o conteúdo de um email à tabela de uma planilha ou criar ações em suas ferramentas de gerenciamento de projetos com base em comentários de pasta de trabalho.

Importante

Para usar scripts do Office no Power Automate, você deve ter uma licença comercial do Microsoft 365. As licenças E1 e Office 365 F3 Office 365 Enterprise podem usar scripts com o Power Automate, mas não têm integrações do Power Automate diretamente no Excel.

Dica

Procurando executar automaticamente um script sem se conectar a outros aplicativos? Use o recurso de agendamento de script .

Introdução

Se você for novo no Power Automate, recomendamos visitar Introdução ao Power Automate. Lá, você pode saber mais sobre todas as possibilidades de automação disponíveis para você. Os documentos aqui se concentram em como os Scripts do Office funcionam com o Power Automate e como isso pode ajudar a melhorar sua experiência no Excel.

Tutoriais passo a passo

Há três tutoriais passo a passo para Power Automate e Scripts do Office. Estes mostram como combinar os serviços de automatização e passar dados entre uma pasta de trabalho e um fluxo.

Criar um fluxo do Excel

Você pode começar a usar o Power Automate no Excel com uma variedade de modelos de fluxo. Na guia Automatizar , selecione Automatizar uma Tarefa.

O botão

Isso abre um painel de tarefas com várias opções para começar a conectar seus Scripts do Office a soluções automatizadas maiores. Selecione qualquer opção para começar. Seu fluxo é fornecido com a pasta de trabalho atual.

Um painel de tarefas mostrando opções de modelo de fluxo, como

Dica

Você também pode começar a fazer um fluxo no menu Mais opções (...) em um script individual.

Conector do Excel

O conector do Excel Online (Business) fornece aos fluxos acesso às pastas de trabalho do Excel. Há duas ações que chamam Scripts do Office.

  • Executar script. Essa é a ação a ser usada com scripts armazenados no local padrão do Seu OneDrive.
  • Execute o script da biblioteca do SharePoint. Essa é a ação a ser usada quando os scripts são armazenados no site do SharePoint da sua equipe.

Para a ação Executar script , o local do script está sempre em seu OneDrive.

A ação Executar script com campos concluídos que mostram que o local é 'OneDrive for Business', a biblioteca de documentos é 'OneDrive', o arquivo é 'daily-readings.xlsx', e o script é chamado de 'Tabela de Formato'.

Segurança de dados em Scripts do Office com Power Automate

A ação "Executar script" fornece às pessoas que usam o conector do Excel acesso significativo à sua pasta de trabalho e seus dados. Além disso, há riscos de segurança com scripts que fazem chamadas de API externas, conforme explicado em chamadas externas do Power Automate. Se o administrador estiver preocupado com a exposição de dados altamente confidenciais, ele poderá desativar o conector do Excel Online ou restringir o acesso aos Scripts do Office por meio dos controles de administrador do Office Scripts.

Para administradores que habilitaram políticas de Acesso Condicional para dispositivos não gerenciados em seu locatário, é uma prática recomendada desabilitar o Power Automate em dispositivos não gerenciados. Esse processo é detalhado na postagem do blog Control Access to Power Apps and Power Automate with Azure AD Conditional Access Policies.

Transferência de dados em fluxos para scripts

O Power Automate permite que você passe partes de dados entre ações de fluxo. Os scripts podem ser configurados para aceitar as informações necessárias e retornar o que você deseja da pasta de trabalho para o fluxo. Os dados são passados para scripts como valores estáticos, expressões ou conteúdo dinâmico. Detalhes sobre o conector de um serviço individual podem ser encontrados na documentação do Conector do Power Automate.

Saiba os detalhes de como passar dados de e para seus scripts com a documentação a seguir.

Exemplo

A captura de tela a seguir mostra um fluxo do Power Automate que é disparado sempre que uma nova resposta a um Formulário é enviada. O fluxo executa um script que adiciona o valor de satisfação do Formulário a uma tabela. A satisfação média atual é retornada e enviada como um email.

O editor de fluxo do Power Automate mostrando o fluxo de exemplo.

A main função do script especifica o novo valor de satisfação como um parâmetro de entrada (newData). O script retorna o valor médio de satisfação da tabela.

function main(workbook: ExcelScript.Workbook, newData: string): number {
  // Add the new data to the table.
  const table = workbook.getTable("SurveyTable");
  table.addRow(-1, [newData]);

  // Get the current satisfaction total.
  const satisfactionColumn = table.getColumnByName("Current Satisfaction");
  const values = satisfactionColumn.getRangeBetweenHeaderAndTotal().getValues();
  let total = 0.0;
  values.forEach((value) => {
    total += value[0] as number;
  });

  // Return the average satisfaction.
  return total / values.length;
}

Observação

O parâmetro de script é do tipo string porque esse é o tipo que a ação Forms retorna para todos os valores.

Encontre exemplos completos com passo a passo passo em exemplos e cenários de Scripts do Office. Muitos usam scripts do Office no centro dos fluxos do Power Automate.

Confira também