DetailPage-MSS-KB

Base de Dados de Conhecimento

Artigo: 194983 - Última revisão: segunda-feira, 7 de Março de 2005 - Revisão: 2.1

 

Nesta página

Sintomas

Quando utilizar a função Round() do Visual Basic 6.0, poderá ser devolvido um resultado diferente do que quando utilizar numa fórmula célula de uma folha de cálculo do Excel.

Causa

A função Round() do VBA utiliza Banker arredondamento enquanto utiliza a função de célula de folha de cálculo arredondamento aritmético.

Resolução

Escreva uma função personalizada para obter os resultados pretendidos.

Ponto Da Situação

Este comportamento ocorre por predefinição.

Mais Informação

A função Round() numa folha de cálculo do Excel utiliza arredondamento aritmético, que arredondar sempre 0,5 (longe de 0). A função Round() do Visual Basic for Applications 6, utiliza Banker arredondamento, que arredonda 0,5 cima ou para baixo, o que fará com que um número par.

Passos para reproduzir o comportamento

  1. No Excel, abra uma nova folha de cálculo e introduzidos das células a seguinte fórmula:
           =Round(2.5, 0)
    						
  2. O resultado é 3.
  3. No Visual Basic 6.0 ou outras aplicações a utilizar o VBA 6, abra um novo projecto e escreva a seguinte expressão na janela de depuração ou imediata:
          ? Round(2.5, 0)
    						
  4. O resultado é 2.

Referências

Para obter informações adicionais no arredondamento, clique no número de artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft:
196652  (http://support.microsoft.com/kb/196652/EN-US/ ) COMO: Implementar personalizada arredondamento procedimentos



A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
  • Microsoft Excel 97 Standard Edition
Palavras-chave: 
kbmt kbprb KB194983 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 194983  (http://support.microsoft.com/kb/194983/en-us/ )
Partilhar
Opções de suporte adicionais
Fóruns de Suporte da Comunidade Microsoft
Contacte-nos directamente
Encontre um parceiro certificado Microsoft
Loja Microsoft