Começar
Arranque rápido
Põe de pé um suplemento de Excel funcional que executa as tuas próprias funções contra os teus próprios dados — sem que nenhum dado da folha de cálculo saia da tua rede. Este guia percorre todo o caminho, do registo até escreveres a tua primeira fórmula =NAMESPACE.MODULE.FN(…) numa célula.
9 min de leitura
O ConnXL tem duas metades. O dashboard (esta aplicação) é onde defines as ligações e as funções. O agent — um único binário chamado connxl-agent — corre na tua infraestrutura, serve o suplemento ao Excel e executa cada chamada de função contra as tuas fontes de dados. O ConnXL nunca vê os dados das tuas células; o agent faz todo o trabalho dentro da tua rede.
Do que vais precisar
Um host que controlas (uma VM, um contentor ou hardware dedicado) que os utilizadores de Excel consigam alcançar por HTTPS, um certificado e uma chave TLS para esse host, e acesso à internet de saída do host para este backend. Também vais adicionar um cartão de pagamento quando criares o teu primeiro suplemento — o primeiro suplemento é gratuito durante um mês.
Inicia sessão e cria a tua organização
Abre o dashboard e inicia sessão. O ConnXL só permite início de sessão federado — continua com a tua identidade Microsoft (Entra); não há palavra-passe para definir, e a tua conta é criada no primeiro início de sessão.
Se o domínio do teu e-mail ainda não faz parte de uma organização, aterras em Create your organization — dá um nome ao teu espaço de trabalho e continua. Uma organização é o teu tenant: contém os teus suplementos, membros e faturação. (Se um colega já criou a organização, aceita antes o convite dele a partir do teu e-mail e saltas este passo.)
Cria um suplemento
No dashboard, cria um suplemento. Um suplemento é aquilo que os teus utilizadores finais instalam — uma entrada no centro de administração do Microsoft 365, um espaço de nomes de fórmulas, um painel de tarefas.
- Namespace — o prefixo de fórmula que os teus utilizadores escrevem (
=NAMESPACE.MODULE.FN(…)). Deixa-o em branco para o valor por omissãoCONNXL, ou escolhe o teu (por ex.NORTHWIND). É imutável após a criação, por isso escolhe-o com intenção. - Ambientes — é sempre criado um ambiente Development. Adiciona QA/Staging/Production agora ou mais tarde.
- Faturação — adiciona um cartão de pagamento (gerido pelo Paddle; o ConnXL nunca lhe toca). O teu primeiro suplemento é gratuito durante um mês; o cartão só é cobrado quando o mês gratuito termina.
Cada ambiente corre o seu próprio agent, e autentica-se no ConnXL com o seu próprio certificado de cliente mTLS. Não configuras isso à mão — no passo seguinte transferes um binário com a identidade deste ambiente já incorporada, e ele inscreve-se para obter o seu certificado no primeiro arranque.
Correr o agent no teu próprio host
Na página do Agente do ambiente, no dashboard (separador Implementação), clica em Transferir agent configurado e escolhe o sistema operativo/arquitetura do teu host (Windows x64, Linux x64, Linux arm64). O binário vem com a identidade deste ambiente já incorporada — o URL do backend, o suplemento e o ambiente, e um token de inscrição de uso único novo — por isso não há nada para configurar. Descompacta-o no teu host.
Duas coisas têm de estar ao lado do binário no disco:
cert.pem+key.pem— os suplementos de Office exigem HTTPS, por isso o agent recusa-se a arrancar sem um certificado e uma chave TLS (para testes locais, gera-os com o mkcert; para um host real, usa um certificado de confiança pública — ver Instalar).- o diretório
static/que vem na transferência — contém o shell do painel de tarefas e os logótipos neutros que o agent serve. Mantém-no junto ao binário (o agent procura./static).
# working directory holds: connxl-agent, cert.pem, key.pem, static/
./connxl-agent # reads its embedded identity, enrolls, and listens on https://<host>:3000Sem certificado, sem arranque
Se o agent não encontrar um par certificado/chave, sai com um erro em vez de servir o suplemento por HTTP não seguro. Isto é deliberado — o Excel não carrega um suplemento a partir de uma origem insegura.
Preferes cablar a identidade à mão?
A via por variáveis de ambiente continua totalmente suportada e é a adequada para contentores ou IaC — obtém um binário cru em Configuração avançada / manual no mesmo painel e define CONNXL_BACKEND_URL + CONNXL_ENROLL_TOKEN tu mesmo (clica em Regenerar para revelar um token). Qualquer variável CONNXL_* que definas sobrepõe-se ao valor incorporado num binário configurado. Ver Instalar para a referência completa.
Adicionar uma ligação e uma função
De volta ao dashboard, aponta o agent a uma fonte de dados criando uma ligação (Postgres, uma REST API, um ficheiro S3 e mais uma dúzia), e depois constrói uma função por cima. Uma função pertence a um módulo e mapeia para uma fórmula que os teus utilizadores vão escrever.
- O dashboard guarda apenas metadados e uma referência
secret://para qualquer credencial — nunca o valor do segredo em si. - O agent sonda a fonte a partir de dentro da tua rede quando clicas em Testar ligação; o backend nunca contacta as tuas fontes de dados. (O teste corre num agent ativo, por isso põe primeiro o agent de pé — ou salta o teste e valida mais tarde.)
Consulta Ligações e Funções para exemplos práticos contra uma REST API e uma base de dados.
Publica o ambiente
As tuas ligações e funções são rascunhos até as publicares. Na página Versions do ambiente, clica em Save version com "Make this version live" marcado. Só então o agent recebe a configuração e começa a servir as tuas funções ao Excel.
Nada chega ao Excel até publicares
Editar uma ligação ou uma função atualiza o rascunho de trabalho — não chega ao agent por si só. Se as tuas fórmulas não devolvem nada e a configuração do agent mostra zero funções, é quase certo que não publicaste: guarda uma versão ativa. Depois dessa primeira publicação, as edições seguintes também fluem ao vivo pelo canal de configuração assim que guardas uma nova versão ativa — sem reiniciar o agent, sem reimplementação.
Transferir o manifesto e fazer sideload
Define o host do agent do ambiente com o URL HTTPS público onde o teu agent é alcançável (definições do ambiente → Agent host), depois transfere o manifesto de Office gerado — um ficheiro XML ou JSON unificado (não um binário; não há passo pela Office Store). O manifesto aponta o Excel diretamente para o teu host do agent, por isso o tráfego de células dos teus utilizadores só chega ao teu agent. Transfere-o a partir do painel de instalação do Excel do ambiente, depois faz-lhe sideload, ou entrega o URL do manifesto ao teu administrador do Microsoft 365 para implementação centralizada.
Um suplemento por ambiente
O nome gerado é sufixado com o ambiente em todos os ambientes exceto produção (por exemplo My Add-in-QA), por isso cada ambiente é instalado como o seu próprio suplemento distinto.
Usá-lo no Excel
Abre o painel de tarefas a partir do friso para percorrer as tuas funções, ou simplesmente escreve a fórmula. As funções personalizadas vivem sob o espaço de nomes do teu suplemento, com o teu módulo e o nome da função:
=NORTHWIND.SALES.TOP_CUSTOMERS(10)O Excel envia a chamada para o teu agent, o agent executa-a contra a tua ligação e devolve o resultado, e a célula é preenchida. Uma função que devolve linhas derrama para um intervalo; uma que devolve um único valor fica na célula única.
Os ambientes fora de produção sufixam o espaço de nomes
Em qualquer ambiente que não seja Production, o espaço de nomes das fórmulas é sufixado com o ambiente — as funções de Development chamam-se =NAMESPACE_DEV.MODULE.FN(…), QA é NAMESPACE_QA, e assim por diante. Isto impede que um livro ligado a Development chame silenciosamente Production. Só o suplemento Production promovido usa o espaço de nomes puro que escolheste.
Conceitos fundamentais
Como as organizações, os suplementos, os agents, os ambientes, as ligações e as funções se encaixam.
Instalar o suplemento
O guia completo de agent + TLS + manifesto + sideload, com o caminho de implementação no M365.
Ligações
Os dezasseis tipos de fonte, a autenticação e as referências secret://.
Funções
Tipos de função, modelos de execução, o construtor e a promoção para produção.