Microsoft Office Online
Iniciar sessão no Meu Office Online (O que é isto?) | Iniciar sessão

 
 
Microsoft Office Access
Procurar
Procurar
 
 
 
 
Aviso: está a visualizar esta página com um browser não suportado. Este Web site funciona melhor com o Microsoft Internet Explorer 6.0 ou posterior, o Firefox 1.5 ou o Netscape Navigator 8.0 ou posterior. Mais informações sobre browsers suportados.

Funções DMín, DMáx
 

Pode utilizar as funções DMín e DMáx para determinar os valores mínimos e máximos num conjunto de registos especificado (um domínio (domínio: conjunto de registos definido por uma tabela, consulta ou expressão SQL. As funções de agregação de domínio devolvem informações estatísticas sobre um domínio específico ou um conjunto de registos.)). Utilize as funções DMín e DMáx num módulo do Visual Basic for Applications (VBA), numa macro (macro: acção ou conjunto de acções que podem ser utilizadas para automatizar tarefas. As macros são gravadas na linguagem de programação Visual Basic for Applications.), numa expressão de consulta ou num controlo calculado (controlo calculado: controlo utilizado num formulário, relatório ou página de acesso a dados para apresentar o resultado de uma expressão. O resultado é calculado de novo sempre que houver uma alteração em qualquer dos valores nos quais a expressão se baseia.).

Por exemplo, pode utilizar as funções DMín e DMáx em controlos calculados num relatório para apresentar os valores de encomendas mais pequenos e maiores de um cliente específico. Ou poderá utilizar a função DMín numa expressão de consulta para apresentar todas as encomendas com um desconto superior ao desconto mínimo possível.

Sintaxe

DMín(expr, domínio [, critérios] )

DMáx(expr, domínio [, critérios] )

As funções DMín e DMáx têm os seguintes argumentos:

Argumento Descrição
expr Obrigatório. Uma expressão que identifica o campo para o qual pretende localizar o valor mínimo e máximo. Pode ser uma expressão de cadeia (expressão de cadeia: expressão que equivale a uma sequência de caracteres contíguos. Os elementos da expressão podem ser: funções que devolvem uma cadeia ou uma Variante de cadeia (VarType 8); uma cadeia literal, uma constante, uma variável ou Variante.) que identifique um campo numa tabela ou consulta ou uma expressão que efectue um cálculo dos dados nesse campo. No argumento expr, pode incluir o nome de um campo numa tabela, um controlo num formulário, uma constante ou uma função. Se o argumento expr incluir uma função, esta pode ser incorporada ou definida pelo utilizador, mas não outra função de domínio agregado ou de agregação SQL.
domínio Obrigatório. Uma expressão da cadeia que identifica o conjunto de registos que constituem o domínio. Pode ser o nome de uma tabela ou consulta para uma consulta que não necessite de um parâmetro.
critérios Opcional. Uma expressão da cadeia utilizada para restringir o intervalo de dados em que a função DMín ou DMáx é executada. Por exemplo, o argumento critérios é frequentemente equivalente à cláusula WHERE numa expressão SQL, sem a palavra WHERE. Se omitir o argumento critérios, as funções DMín e DMáx avaliam o argumento expr em relação a todo o domínio. Qualquer campo incluído em critérios também tem de ser um campo em domínio; caso contrário, as funções DMín e DMáx devolvem um valor Nulo (Null: valor que pode introduzir num campo ou utilizar em expressões ou consultas para indicar dados em falta ou desconhecidos. No Visual Basic, a palavra-chave Null indica um valor nulo (Null). Alguns campos, tais como campos de chave primária, não podem conter um valor Null.).

Observações

As funções DMín e DMáx devolvem os valores mínimos e máximos que cumpram os critérios. Se o argumento expr identificar dados numéricos, as funções DMín e DMáx devolvem valores numéricos. Se o argumento expr identificar dados de cadeia, as funções devolvem a primeira ou a última cadeia por ordem alfabética.

As funções DMín e DMáx ignoram valores Nulos no campo referenciado pelo argumento expr. No entanto, se nenhum registo cumprir os critérios ou se o domínio não contiver registos, as funções DMín e DMáx devolvem um valor Nulo.

Se utilizar a função DMín ou DMáx numa macro, módulo, expressão de consulta ou controlo calculado, terá de construir cuidadosamente o argumento critérios para garantir que o mesmo é avaliado correctamente.

Pode utilizar as funções DMín e DMáx para especificar critérios na linha Critérios de uma consulta, numa expressão de campo calculado de uma consulta ou na linha Actualizar Para de uma consulta actualização (consulta Actualizar: consulta de acção (instrução SQL) que altera um conjunto de registos de acordo com os critérios (condições de procura) especificados pelo utilizador.).

 Nota   Pode utilizar as funções DMín e DMáx ou as funções Mín e Máx numa expressão de campo calculado de uma consulta de totais (consulta de totais: consulta que apresenta um cálculo sumário, tal como uma média ou uma soma, para valores existentes em vários campos de uma ou mais tabelas. Uma consulta de totais não é um tipo separado de consulta; pelo contrário, pois permite expandir a flexibilidade das consultas de selecção.). Se utilizar a função DMín ou DMáx, os valores são avaliados antes de os dados serem agrupados. Se utilizar a função Mín ou Máx, os dados são agrupados antes de os valores na expressão do campo serem avaliados.

Utilize a função DMín ou DMáx num controlo calculado quando necessitar de especificar critérios para restringir o intervalo de dados em que a função é executada. Por exemplo, para visualizar o custo máximo de transporte de uma encomenda expedida para o Porto, defina a propriedade OrigemDoControlo de uma caixa de texto com a seguinte expressão:

=DMáx("[Frete]", "Encomendas", "[RegiãoDeEnvio] = 'CA'")
		

Se pretender simplesmente localizar o valor mínimo ou máximo de todos os registos no domínio, utilize a função Mín ou Máx.

Pode utilizar a função DMín ou DMáx num módulo, numa macro ou num controlo calculado num formulário, se o campo que necessite de visualizar não se encontrar na origem de um registo em que o formulário se baseie.

MostrarSugestão

Embora possa utilizar a função DMín ou DMáx para localizar o valor mínimo ou máximo de um campo numa tabela externa (tabela com chave externa: tabela (por exemplo, Encomendas do Cliente) que contém um campo com chave externa (por exemplo, IDDoCliente), que é o campo de chave primária noutra tabela (por exemplo, Clientes) da base de dados e que está, normalmente, no lado "muitos" de uma relação um-para-muitos.), poderá ser mais eficaz criar uma consulta que contenha os campos de que necessita de ambas as tabelas e basear o formulário ou relatório nessa consulta.

 Nota   As alterações não guardadas de registos no domínio não são incluídas quando utilizar estas funções. Se pretender que a função DMáx ou DMín se baseie nos valores alterados, primeiro tem de guardar as alterações clicando em Guardar Registo em Registos no separador Dados, movendo o foco para outro registo ou utilizando o método Actualizar.

Exemplo

 Nota   Os exemplos que se seguem demonstram a utilização desta função num módulo do Visual Basic for Applications (VBA). Para mais informações sobre como trabalhar com VBA, seleccione Referência para Programadores na lista pendente junto a Procurar e introduza um ou mais termos na caixa de procura.

O exemplo seguinte devolve o valor mínimo e máximo do campo Frete para encomendas expedidas para o Reino Unido. O domínio é uma tabela Encomendas. O argumento critérios restringe o conjunto resultante de registos a registos em que o PaísRegiãoDeDestino seja igual a RU.

Dim curX As Currency
Dim curY As Currency

curX = DMín("[Frete]", "Encomendas", _
    "[PaísRegiãoDeEnvio] = 'RU'")
curY = DMáx("[Frete]", "Encomendas", _
    "[PaísRegiãoDeEnvio] = 'RU'")
		

No exemplo seguinte, o argumento critérios inclui o valor actual de uma caixa de texto designada DataDaEncomenda. A caixa de texto é vinculada a um campo DataDaEncomenda numa tabela Encomendas. Note que a referência ao controlo não está incluída entre aspas duplas (") que denotem as cadeias. Isto garante que sempre que a função DMáx for chamada, o Microsoft Office Access 2007 obtém o valor actual do controlo.

Dim curX As Currency
curX = DMáx("[Frete]", "Encomendas", "[DataDaEncomenda] = #" _
    & Formulários!Encomendas!DataDaEncomenda & "#")
		

No exemplo seguinte, a expressão de critérios inclui uma variável dteOrderDate. Note que estão incluídos sinais de cardinal (#) na expressão da cadeia, de forma a que as cadeias incluam a data quando forem concatenadas.

Dim dteOrderDate As Date
Dim curX As Currency

dteOrderDate = #03/30/2000#
curX = DMín("[Frete]", "Encomendas", _
    "[DataDaEncomenda] = #" & dteOrderDate & "#")
		
anúncio