Pode haver alturas em que pretende ordenar registos no Access apenas com base na parte mensal dos valores de data e ignorar o dia e o ano. Em alternativa, poderá querer ordenar registos com base apenas nos primeiros carateres de um campo de texto. Este tópico mostra-lhe como realizar estas pesquisas ao criar expressões simples.
O que pretende fazer?
Ordenar em valores de data parciais
Quando ordena registos através de um dos comandos Ordenar , o valor de data completo ( dia, mês e ano ) é utilizado para determinar a posição de cada registo. No entanto, suponha que pretende ordenar aniversários apenas com base nos meses em que ocorrem e ignorar a parte diária e anual dos valores.
Ordenar apenas uma parte dos valores de data requer a escrita de uma expressão. Pode ordenar os dados numa tabela ou os resultados de uma consulta, mas primeiro tem de estar na vista Folha de Dados. Escreve a expressão na região de consulta do separador Filtro . A expressão que criar extrai apenas os dados que pretende e, em seguida, utiliza-os como base para ordenação.
Apresentar o separador Filtro
-
Mude a tabela ou consulta para a vista Folha de Dados.
Se estiver a trabalhar com uma consulta, execute a consulta para apresentar os resultados na vista Folha de Dados.
-
No separador Base , no grupo Ordenar & Filtro , clique em Avançadas e, em seguida, clique em Filtro/Ordenação Avançadas no menu de atalho.
O Access apresenta um novo separador de objeto com Filtro no nome.
Create a expressão
-
No separador Base , no grupo Ordenar & Filtro , clique em Avançadas e, em seguida, clique em Filtro/Ordenação Avançadas no menu de atalho.
-
Escreva uma expressão na linha Campo na primeira coluna. Por exemplo, para ordenar por mês independentemente do ano, escreva a expressão Expr1: DatePart("m",[BirthDate]) na linha Campo na primeira coluna.
-
Para ordenar registos por dias dentro de cada mês, escreva Expr2: DatePart("d",[BirthDate]) na linha Campo na segunda coluna.
A função DatePart na primeira coluna ordena os registos por mês e a função DatePart na segunda coluna ordena os registos por dias dentro de cada mês.
-
Na linha Ordenar , selecione Ascendente ou Descendente para cada uma das expressões.
Uma ordenação ascendente na primeira coluna apresenta Janeiro na parte superior e Dezembro na parte inferior. Uma ordenação ascendente na segunda coluna apresenta 1 na parte superior e 31 na parte inferior. Uma sequência de ordenação descendente faz o oposto.
-
No separador Base , no grupo Ordenar & Filtro , clique em Alternar Filtro.
Ordenar em valores de texto parciais
Ordenar em valores de texto parciais é muito semelhante à ordenação em valores de data parciais. Tem de escrever uma expressão na janela Filtro Avançado/Ordenação para extrair os carateres que formam a base para ordenação.
Suponha que o campo Cidade contém valores como North Seattle, South Seattle, North Tacoma ou South Tacoma. Suponha que pretende ignorar a primeira palavra e ordenar os registos apenas na segunda palavra.
-
No separador Base , no grupo Ordenar & Filtro , clique em Avançadas e, em seguida, clique em Filtro/Ordenação Avançadas no menu de atalho.
-
Escreva uma expressão na linha Campo na primeira coluna. Por exemplo, escreva =Média([Cidade], 7) para ignorar os primeiros seis carateres no campo Cidade.
A função Média devolve uma subcadeia contida numa cadeia ou campo especificado. Neste caso, para cada registo, a função devolve o valor a partir do sétimo caráter (ou seja, depois do espaço) no campo Cidade.
-
Na célula Ordenar , selecione Ascendente ou Descendente.
-
No separador Base , no grupo Ordenar & Filtro , clique em Alternar Filtro.