Ao executar uma mala direta no Word usando uma planilha do Excel como fonte de dados, campos numéricos como preços, quantidades ou porcentagens podem aparecer com decimais extras inesperados — por exemplo, 25.0000 em vez de 25 ou 19.990000000000002 em vez de 20. Isso acontece porque o Word interpreta os dados numéricos do Excel como valores de ponto flutuante, em vez de texto formatado ou moeda. Os decimais extras não são sinal de corrupção de dados; são um efeito colateral de como o mecanismo de mala direta do Word lê os valores das células da pasta de trabalho do Excel. Este artigo explica exatamente por que o Word adiciona esses decimais e fornece três métodos confiáveis para removê-los, garantindo que seus documentos mesclados exibam números limpos.
Principais Conclusões: Corrigindo Decimais Extras em Números da Mala Direta do Word
- Formatação da fonte de dados no Excel: Formatando as células como Texto ou usando a função TEXTO, evita que o Word leia os valores brutos de ponto flutuante.
- Comutador de campo de mala direta \# “0.00”: Adicionar um comutador de imagem numérica ao código MERGEFIELD no Word força a saída para duas casas decimais.
- Conexão de campo de banco de dados via DDE: Usar o Dynamic Data Exchange em vez da conexão OLEDB padrão preserva a formatação exibida no Excel.
Por que a Mala Direta do Word Lê Números do Excel como Valores de Ponto Flutuante
Quando você conecta o Word a uma pasta de trabalho do Excel durante uma mala direta, o Word não usa o formato exibido da célula — ele lê o valor subjacente da célula. O Excel armazena todos os números em um formato binário de ponto flutuante conhecido como IEEE 754 de dupla precisão. Um número como 19,99 é armazenado como uma aproximação: 19,989999999999998. O mecanismo de mala direta do Word recupera esse valor bruto e o converte em texto, o que pode produzir longas sequências decimais como 19,989999999999998 ou 25,000000000000000. Esse comportamento não é um bug; é o resultado esperado do Word consultar a fonte de dados do Excel por meio do provedor OLEDB padrão.
O problema aparece com mais frequência em campos de moeda, porcentagens e colunas calculadas. A formatação exibida no Excel (por exemplo, mostrar 19,99 ou 25%) é apenas uma camada visual — a célula subjacente contém o número completo de ponto flutuante. O Word ignora as configurações de formato de número do Excel ao importar os dados. Para contornar isso, você deve preparar os dados do Excel para que o Word receba uma string de texto ou instruir o Word a formatar o número mesclado usando um comutador de campo.
Por que o Provedor OLEDB Padrão Causa Decimais Extras
O método de conexão padrão do Word para fontes de dados do Excel é o provedor OLEDB. Esse provedor lê as primeiras oito linhas de cada coluna para adivinhar o tipo de dado. Se a coluna contiver principalmente números, o OLEDB trata toda a coluna como um campo de ponto flutuante (Double). Todos os valores nessa coluna são então retornados como strings de ponto flutuante, incluindo os dígitos decimais extras. Mesmo se você formatar a coluna como Moeda ou Número no Excel, o provedor OLEDB desconsidera essa formatação e retorna o valor binário bruto.
Três Métodos para Remover Decimais Extras de Campos Numéricos da Mala Direta
Cada método abaixo aborda a causa raiz em um estágio diferente do processo de mesclagem. O Método 1 modifica a fonte do Excel, o Método 2 funciona dentro do Word após a inserção dos campos de mesclagem, e o Método 3 altera a forma como o Word se conecta ao arquivo do Excel. Escolha o método que melhor se adequa ao seu fluxo de trabalho.
Método 1: Formatar a Coluna do Excel como Texto Antes da Mesclagem
Este método impede que o Word leia o número como um valor de ponto flutuante, convertendo os dados em uma string de texto no Excel. A string de texto retém o formato de número exibido exatamente como você o vê no Excel.
- Abra a pasta de trabalho do Excel e selecione a coluna
Clique na letra do cabeçalho da coluna (por exemplo, coluna B) que contém o campo numérico que está causando decimais extras. - Aplique o formato de número Texto
Na guia Página Inicial, clique no menu suspenso Formato de Número e escolha Texto. Se a coluna já contiver dados, o Excel avisará que o formato de número não pode ser alterado após a entrada de dados. Clique em OK para dispensar o aviso e, em seguida, reinsira os valores na coluna ou use a próxima etapa para converter os dados existentes. - Reinsira os valores existentes usando uma coluna auxiliar
Insira uma nova coluna ao lado da original. Na primeira célula da nova coluna, insira uma fórmula como=TEXTO(A1;"0,00")onde A1 é a primeira célula da coluna numérica original e “0,00” é o formato de número que você deseja exibir. Arraste a fórmula para baixo para copiá-la para todas as linhas. Copie a nova coluna e cole como Valores sobre a coluna original para remover a dependência da fórmula. Exclua a coluna auxiliar. - Salve a pasta de trabalho e atualize a mala direta
Salve o arquivo do Excel. No Word, abra a guia Correspondências, clique em Selecionar Destinatários e escolha Usar uma Lista Existente. Navegue até a pasta de trabalho atualizada e selecione a planilha. O Word agora lerá a coluna como texto e os números mesclados aparecerão exatamente como formatados na fórmula TEXTO.
Método 2: Adicionar um Comutador de Imagem Numérica ao Campo de Mesclagem no Word
Este método funciona inteiramente dentro do Word, sem alterar os dados do Excel. Você modifica o código do campo de mesclagem para informar ao Word quantas casas decimais exibir.
- Insira o campo de mesclagem normalmente
Na guia Correspondências, clique em Inserir Campo de Mesclagem e selecione o campo numérico. Um espaço reservado como «Preço» aparece no documento. - Exiba o código do campo
Clique com o botão direito no espaço reservado do campo de mesclagem e selecione Alternar Códigos de Campo. O código do campo muda para algo como{ MERGEFIELD Preço }. - Adicione o comutador de imagem numérica
Dentro das chaves, após o nome do campo, digite um espaço, uma barra invertida, um sinal de número e o padrão de formato entre aspas duplas. Para duas casas decimais, o código se torna{ MERGEFIELD Preço \# "0,00" }. Para nenhuma casa decimal, use{ MERGEFIELD Preço \# "0" }. Para moeda com símbolo de real, use{ MERGEFIELD Preço \# "R$ #.##0,00" }. - Alterne de volta e visualize
Clique com o botão direito no código do campo novamente e selecione Alternar Códigos de Campo para retornar à visualização do espaço reservado. Clique em Visualizar Resultados na guia Correspondências para verificar se o número agora é exibido com as casas decimais corretas.
Método 3: Conectar-se ao Excel Usando Dynamic Data Exchange (DDE)
Este método altera o método de conexão de OLEDB para DDE, que preserva a formatação exibida no Excel. O DDE é um protocolo mais antigo, mas lê o valor formatado que o Excel mostra na tela, em vez do número bruto de ponto flutuante.
- Abra o Assistente de Mala Direta
Na guia Correspondências, clique em Iniciar Mala Direta e escolha Assistente de Mala Direta Passo a Passo. O painel do assistente é aberto no lado direito. - Selecione o arquivo do Excel usando DDE
Na etapa 3 do assistente, clique em Procurar. Na caixa de diálogo Selecionar Fonte de Dados, localize seu arquivo do Excel. Não clique em Abrir ainda. Clique na seta suspensa ao lado do botão Abrir e selecione Abrir com DDE. Uma caixa de diálogo pergunta qual planilha usar; selecione a planilha correta e clique em OK. - Confirme a fonte de dados
O Word pode solicitar que você confirme a fonte de dados. Clique em OK. Os campos de mesclagem agora puxarão os valores formatados do Excel, incluindo as casas decimais conforme aparecem na célula. - Conclua a mesclagem normalmente
Insira os campos de mesclagem e finalize a mesclagem. Os números devem corresponder exatamente à exibição do Excel.
Se o Word Ainda Mostrar Decimais Extras Após a Correção Principal
Word Exibe 25.000000000000000 em Vez de 25
Isso indica que a coluna ainda está sendo lida como um valor de ponto flutuante. Aplique o Método 1 novamente, mas certifique-se de que a coluna do Excel esteja formatada como Texto antes de adicionar qualquer dado. Se os dados já existirem, use a função TEXTO para converter toda a coluna em uma string de texto com o formato desejado. Após salvar a pasta de trabalho, feche e reabra o Word antes de atualizar a fonte de dados.
Word Mostra 19.989999999999998 em Vez de 19,99
Este é o clássico artefato de arredondamento de ponto flutuante. O comutador de imagem numérica do Método 2 é a correção mais rápida. Use o padrão \# "0,00" para forçar duas casas decimais. Se o comutador não funcionar, verifique se você digitou um espaço antes da barra invertida e se o código do campo não tem espaços extras dentro das chaves.
Conexão DDE Falha ou Está Desabilitada
A opção DDE pode estar indisponível se sua pasta de trabalho do Excel estiver aberta em outro programa ou se o arquivo estiver armazenado em uma unidade de rede. Feche o Excel e qualquer outro programa que tenha o arquivo aberto. Copie a pasta de trabalho para uma pasta local e tente novamente. Se a opção Abrir com DDE ainda não aparecer, execute a ferramenta de reparo de instalação do Microsoft Office para registrar novamente os arquivos DLL do DDE.
OLEDB vs DDE: Diferenças no Tratamento de Números
| Item | OLEDB (Padrão) | DDE (Legado) |
|---|---|---|
| Detecção de tipo de dado | Examina as primeiras 8 linhas para adivinhar o tipo da coluna | Lê o formato de exibição da célula diretamente |
| Precisão numérica | Retorna o valor bruto de ponto flutuante IEEE 754 | Retorna o texto formatado conforme exibido no Excel |
| Exibição decimal | Pode mostrar muitos dígitos extras (ex.: 25.000000000000000) | Mostra exatamente o número de casas decimais definido no Excel |
| Compatibilidade | Funciona com todas as versões modernas do Excel | Pode falhar com pastas de trabalho muito grandes ou arquivos de rede |
| Esforço de configuração | Nenhuma etapa extra necessária | Requer seleção manual de Abrir com DDE |
Após aplicar um dos três métodos, seus documentos de mala direta exibirão números exatamente como você pretende — sem dígitos decimais ocultos. Se você mescla regularmente dados numéricos do Excel, considere criar um modelo reutilizável que inclua o comutador de imagem numérica em cada campo de mesclagem numérica. Essa abordagem economiza tempo e evita que o problema ocorra novamente em mesclagens futuras. Para colunas que precisam permanecer como números no Excel, a função TEXTO combinada com uma coluna auxiliar fornece os resultados mais previsíveis em diferentes versões do Word.