Agente autônomo Copilot Studio Excel: guia completo
Aprenda a criar um agente autônomo Copilot Studio Excel que lê planilhas, aplica regras de uma base de conhecimento e escreve os valores via Graph API.

Toda operação com um canal de e-mail de alto volume, seja um setor de vendas, um SAC interno, um financeiro que recebe pedidos de segunda via de boleto, convive com o mesmo padrão: a maioria das mensagens pede informação que já existe em algum lugar. Preço de produto, horário de atendimento, política de troca, prazo de entrega. Um analista gasta minutos lendo, procurando a resposta certa e digitando de volta algo que, na prática, é uma consulta a uma tabela ou a um documento de perguntas frequentes.
O Copilot Studio permite montar um agente que intercepta esse e-mail assim que ele chega na caixa de entrada, decide sozinho quais fontes consultar (um documento de conhecimento, uma planilha, ou ambos), monta a resposta no formato certo e devolve a mensagem ao remetente sem que ninguém precise abrir o Outlook. Não é um chatbot dentro de um site. É um agente acionado por evento, que só aparece quando um e-mail entra na fila.
Antes de sair clicando em telas, vale entender as peças que compõem essa automação, porque cada uma delas tem uma função específica e um ponto de falha próprio:
Essa separação entre conhecimento documental e conhecimento tabular é a decisão de arquitetura mais importante do projeto. Documento Word é bom para respostas qualitativas e estáveis, tipo política e horário. Planilha é melhor para dado que muda, porque o agente consulta a linha em tempo real em vez de depender de um índice de busca sobre texto não estruturado.
Abra o Copilot Studio e crie um agente novo. Dê um nome que identifique claramente o canal e o departamento que ele atende, por exemplo Agente de Resposta - Vendas, e uma descrição objetiva do escopo, como “responde mensagens enviadas à caixa de entrada do departamento comercial”.
O ponto que mais separa um agente que soa profissional de um que soa robótico é o conjunto de instruções de formatação. Escreva algo próximo disto no campo de instruções do agente:
Responda como se estivesse escrevendo um e-mail de volta ao remetente. Seja claro e direto. Não inclua informação que não foi pedida explicitamente. Comece com “Olá, (Nome do remetente),” em um parágrafo separado. Se não houver nome disponível, use “Olá,” Termine com a assinatura “Esta é uma resposta automática gerada por IA” em parágrafo separado. Use tags HTML apenas para parágrafos e quebras de linha. Não use negrito, itálico ou sublinhado em HTML. Não use tabelas HTML, prefira listas com marcadores. Escreva como uma pessoa escreveria, sem parecer texto gerado por IA. Não use emojis. Não use travessões.
Essa instrução resolve um problema concreto: por padrão, o Copilot Studio tende a formatar respostas com marcações do Teams ou do chat web, que não renderizam bem dentro de um cliente de e-mail. Forçar HTML simples, sem tabela e sem negrito via markdown, evita que o destinatário receba uma mensagem cheia de asteriscos ou colunas quebradas.
Crie uma biblioteca de documentos dedicada e, dentro dela, um arquivo Word com perguntas e respostas no formato pergunta seguida de resposta, cobrindo os tópicos que hoje geram volume de e-mail repetitivo: horário de funcionamento, política de garantia, prazos, formas de contato, condições comerciais gerais. Quanto mais essa base espelhar perguntas reais já recebidas, melhor a taxa de acerto do agente.
Um erro comum aqui é tentar colocar dado tabular dentro do Word, como uma lista de preços por produto. Isso funciona mal porque o mecanismo de busca sobre documentos indexa por similaridade semântica de texto, não por chave exata. Para dado que precisa de precisão numérica exata, o caminho correto é planilha, não documento, o que leva à próxima etapa.
Na aba de conhecimento do agente, escolha adicionar arquivo do SharePoint, selecione o documento Word e confirme. O arquivo aparece com status de processamento até ficar com status “Pronto”, indicando que já foi indexado e está disponível para consulta.
Em seguida, vá até as configurações gerais do agente e desative duas opções: permitir respostas sem fundamentação (ungrounded responses) e usar informações da web. Essa é a etapa que garante que o agente só responda com base no que está no documento carregado, sem inventar informação nem misturar dado da internet com a política interna da empresa. Ignorar esse passo é o erro mais caro da lista: sem ele, o agente pode responder com segurança sobre algo que nunca esteve na base, e isso sai como e-mail oficial da empresa sem revisão humana.
Na mesma biblioteca do SharePoint, crie um arquivo Excel com uma tabela formatada (não apenas um intervalo de células, precisa ser uma tabela do Excel de fato, com Ctrl+T) contendo as colunas relevantes para o tipo de consulta esperada. Em um cenário de vendas, colunas como modelo, fabricante, preço de lista e quantidade em estoque já cobrem boa parte das perguntas de preço.
Vá até o menu de ferramentas do agente e adicione a ação List rows present in a table do conector Excel Online (Business), apontando para o arquivo e a tabela criados. O ponto que exige mais cuidado é o campo de filtro de consulta (Filter Query), porque é ele que decide se o agente traz a linha certa.
Escreva a descrição desse campo de entrada de forma explícita, ensinando o agente a montar a query OData e a lidar com variação de digitação do usuário:
Monte uma query de filtro OData para restringir os modelos retornados:
Model eq '(Nome do Modelo)'. O nome do modelo é a versão do veículo produzida por um fabricante. Se o usuário escrever o nome errado ou com capitalização incorreta, corrija para a grafia correta antes de montar a query.
Isso é necessário porque o filtro OData é sensível a correspondência exata de string. Se o cliente escrever “corola” em vez de “Corolla”, uma query literal não retorna nada. É a instrução em linguagem natural, interpretada pelo modelo antes de montar a chamada, que corrige a grafia e evita que o agente responda “não encontrei esse modelo” para um erro de digitação trivial.
Use a janela de teste do próprio Copilot Studio para simular perguntas antes de ligar o gatilho de e-mail. Faça perguntas que exigem consultar as duas fontes ao mesmo tempo, por exemplo pedindo o preço de um modelo e o horário de atendimento na mesma mensagem, e confira se o agente aciona a ferramenta de planilha e a busca de conhecimento corretamente, e se a resposta final respeita o formato definido nas instruções. Esse é o momento de ajustar o prompt, não depois que o agente já está enviando e-mail de verdade para clientes reais.
Na aba de visão geral do agente, na seção de gatilhos, adicione um novo gatilho. Se a caixa de entrada monitorada for uma caixa compartilhada, escolha o gatilho de nova mensagem em caixa compartilhada e informe o endereço de origem; se for uma caixa pessoal, use o gatilho equivalente para caixa individual. Em ambos os casos, aponte a pasta como Inbox.
Depois de criado, abra o gatilho no Power Automate e ajuste a configuração de disparo para dividir por valor (split on value). Sem esse ajuste, se chegarem três e-mails ao mesmo tempo, o fluxo tenta processar os três em uma única execução, o que quebra a lógica de resposta individual. Com o split configurado, cada e-mail dispara uma execução independente do fluxo.
Na ação que envia o corpo do e-mail para o agente, é preciso converter o corpo do gatilho, que chega como um objeto estruturado com assunto, remetente, corpo e destinatários, em texto simples, porque o campo de mensagem do agente não aceita tipo objeto:
string(triggerBody())Essa conversão empacota todos os metadados do e-mail original (quem enviou, assunto, corpo) em uma única string que o agente recebe como se fosse uma mensagem de chat comum, e a partir daí ele extrai o que precisa para responder.
Quando o agente responde com base em conhecimento documental, ele normalmente inclui marcadores de citação, do tipo [1], apontando para a fonte. Isso é útil em uma interface de chat, onde o usuário pode clicar e ver o trecho original. Em um e-mail, esses marcadores aparecem como ruído, porque quem recebe a mensagem no Outlook não tem como abrir a citação.
Crie um novo tópico chamado, por exemplo, Resposta Gerada por IA, com o gatilho de sistema “AI Response Generated”. Esse gatilho intercepta a resposta antes que ela seja mostrada ao usuário, permitindo alterá-la. Defina a variável de continuidade da resposta padrão como falsa, para impedir que a mensagem original (com citação) seja enviada, e use uma fórmula em Power Fx para gerar uma versão limpa do texto:
Trim(
With(
{
// Corta o texto a partir do início do bloco de citações.
// Se não houver citação, mantém o texto inteiro.
TextoSemRodape: First(Split(System.Response.FormattedText, "[1]:")).Value
},
// Remove marcadores inline de [1] a [6] que ainda restarem no corpo
Substitute(
Substitute(
Substitute(
Substitute(
Substitute(
Substitute(
TextoSemRodape, "[1]", ""
), "[2]", ""
), "[3]", ""
), "[4]", ""
), "[5]", ""
), "[6]", ""
)
)
)Guarde o resultado em uma variável, algo como respostaSemCitacao, e envie esse conteúdo através de um nó de mensagem no lugar da resposta padrão do sistema.
O mesmo agente pode ser testado por chat e usado em produção via e-mail, o que simplifica muito a manutenção. Para isso, o tópico de pós-processamento precisa identificar de onde veio a solicitação e agir de forma diferente em cada canal.
Faça o parsing dos dados de canal (ChannelData) recebidos, usando uma estrutura YAML que descreve os campos esperados, entre eles o identificador do fluxo, o payload do gatilho e o tipo de conector de origem. Em seguida, faça o parsing do corpo da última mensagem (armazenado como texto, resultado do string(triggerBody()) configurado antes), extraindo campos como remetente, assunto, corpo, identificador da conversa e se a mensagem tem anexo.
Com esses dados parseados, configure a ação de resposta condicional: se a origem for o gatilho de e-mail, use a ação de responder ao e-mail original (Reply to email do conector Outlook), preenchendo o campo de mensagem com o texto sem citação e usando o identificador da mensagem original extraído do payload. Se a origem for o chat de teste, apenas exiba a mensagem normalmente.
Publique o agente e envie um e-mail real para a caixa monitorada, com uma pergunta que exija consultar tanto o documento quanto a planilha. Acompanhe a execução no histórico do fluxo do Power Automate para confirmar que o gatilho disparou uma vez por mensagem, que o agente acionou as duas fontes de conhecimento, e que a resposta chegou ao remetente formatada em HTML simples, sem citação e com a assinatura de automação.
Construir esse fluxo é direto. Operá-lo em produção com segurança exige atenção a pontos que não aparecem na tela de configuração:
Esse tipo de agente compensa quando existe volume real de perguntas repetitivas, com respostas objetivas e verificáveis em uma fonte estruturada. Faz menos sentido quando a maioria das mensagens recebidas exige julgamento, negociação ou contexto histórico do relacionamento com o cliente, porque aí o risco de uma resposta automática mal calibrada custa mais caro do que o tempo economizado.
O ganho real não é só velocidade de resposta. É consistência: o agente responde da mesma forma toda vez, sem variação de humor ou de disponibilidade de quem estaria de plantão naquele horário, e libera a equipe para tratar apenas os casos que de fato exigem critério humano.
Montar esse fluxo até o teste funciona em um dia de trabalho concentrado. Fazer ele operar com segurança em produção, com governança de permissões, controle de licenciamento e regras de exceção bem definidas, é onde entra a experiência de quem já implantou isso em ambientes reais. Se esse é o tipo de automação que sua operação precisa, a Trinapse acompanha desde o desenho da arquitetura até a estabilização em produção.
Aprenda a criar um agente autônomo Copilot Studio Excel que lê planilhas, aplica regras de uma base de conhecimento e escreve os valores via Graph API.
Aprenda a montar um fluxo de assinatura eletrônica no Power Automate com Docusign: envelope, signatários em ordem, campos de assinatura e envio automático.
SharePoint Copilot Apps chega em preview no SPFx 1.24: Copilot cuida da intenção, o app executa a ação com validação, permissão e governança real.