Ordenar registos por valores numéricos armazenados num campo de texto

Nota: Queremos fornecer-lhe os conteúdos de ajuda mais recentes o mais rapidamente possível e no seu idioma. Esta página foi traduzida automaticamente e pode conter erros gramaticais ou imprecisões. O nosso objetivo é que estes conteúdos lhe sejam úteis. Pode informar-nos se as informações foram úteis no final desta página? Eis o artigo em inglês para referência.

Os números e cadeias armazenados num campo de texto ou de memo são ordenados alfabeticamente. Por outras palavras, os números serão ordenados com base nos dígitos individuais que compõem o valor, em vez de no valor numérico. Por exemplo, o valor 11 aparece antes de 2 e o valor 12 aparece antes de 3, como mostrado na tabela seguinte.

Nome do Aluno

N.º do Aluno

João

1

Mariana

10

Guilherme

11

Maria

12

Joana

2

Liliana

3

Jacinto

4

Maria

5


Para garantir que os números são ordenados com base nos respectivos valores numéricos em vez de alfabeticamente, efectue um dos seguintes procedimentos:

  • Se o campo incluir apenas valores numéricos, considere alterar o tipo de dados do campo para Número ou Moeda.

  • Utilize o seguinte procedimento se:

    • O campo incluir apenas valores numéricos, mas não pretende alterar o tipo de dados do campo.

    • O campo incluir valores numéricos e de cadeia, mas pretende ignorar os valores de cadeia para a ordenação.


Este procedimento utiliza o função Val para obter o valor numérico de um número que está armazenado como texto. A expressão que também utiliza o função IIf para gerir os valores nulos que poderão estar no campo de ordenação.

  1. No separador Base, no grupo Ordenar e Filtrar, clique em Avançadas e, em seguida, clique em Filtro/Ordenação Avançados no menu de atalho.

  2. Escreva a expressão Expr1: Ise ([Fieldname] é nulo, 0, Val([Fieldname])) na linha campo na primeira coluna.

    A função Ise verifica se o valor do campo é nulo e, se for o caso, trata-o como 0. Se o valor não for nulo, a função Ise chama a função Val para obter o equivalente numérico.

  3. Na célula Ordenação, seleccione Ascendente ou Descendente.

    Uma ordenação ascendente apresenta o registo com o valor mais baixo na parte superior e o registo com o valor mais elevado na parte inferior. Uma ordenação descendente tem o efeito contrário.

  4. no separador Base, no grupo Ordenar e Filtrar, clique em Ativar/Desativar Filtro.

Se não conseguir efectuar o procedimento anterior, existe outra abordagem que pode tentar e que evita ter de alterar a estrutura da tabela. Esta implica "proteger" os valores que contêm menos dígitos com zeros à esquerda. Por exemplo, os valores 11, 2, 2000 e 3 são alterados para 0011, 0002, 2000 e 0003 antes de aplicar a ordenação.

Início da Página

Aumente os seus conhecimentos do Office
Explore as formações
Seja o primeiro a obter novas funcionalidades
Adira ao Office Insider

As informações foram úteis?

Obrigado pelos seus comentários!

Obrigado pelo seu feedback! Parece que poderá ser benéfico reencaminhá-lo para um dos nossos agentes de suporte do Office.

×