Applies ToAccess para Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Devolve uma de duas partes, dependendo da avaliação de uma expressão.

Pode utilizar ISe em qualquer lugar onde possa utilizar expressões. Utilize ISe para determinar se outra expressão é verdadeira ou falsa. Se a expressão for verdadeira, ISe devolve um valor; se for falso, ISe devolve outro. Especifique os valores devolvidos por ISe .

Ver alguns exemplos

Sintaxe

ISe ( expr , parteverdadeira , partefalsa )

A sintaxe da função ISe tem os seguintes argumentos:

Argumento

Descrição

expr

Obrigatório. Expressão que pretende avaliar.

parteverdadeira

Obrigatório. Valor ou expressão devolvida se expr for Verdadeiro.

partefalsa

Obrigatório. Valor ou expressão devolvida se expr for Falso.

Observações

ISe avalia sempre a parteverdadeira e a partefalsa, apesar de devolver apenas uma destas. Por esta razão, deverá ter em atenção os efeitos secundários indesejáveis. Por exemplo, se avaliar a partefalsa resulta num erro de divisão por zero, ocorre um erro mesmo se expr seja Verdadeiro.

Exemplos

Utilizar a função ISe num formulário ou relatório    Suponha que tem uma tabela Clientes que contém um campo com o nome PaísRegião. Num formulário, quer assinalar se a língua materna do contacto é o italiano. Pode adicionar um controlo e utilizar ISe na respetiva propriedade da Origem do Controlo, da seguinte forma:

=ISe([PaísRegião]="Itália", "Italiano", "Outro idioma")

Quando abre o formulário na vista Formulário, o controlo apresenta "Italiano" sempre que o valor de PaísRegião é Itália, e "Outro idioma" sempre que PaísRegião for outro valor.

Utilizar a função ISe em expressões complexas    Pode utilizar qualquer expressão como qualquer parte de uma instrução ISe. Também pode aninhar expressões ISe, o que o permite avaliar uma série de expressões dependentes. Para continuar com o exemplo anterior, recomendamos que teste vários valores de PaísRegião e, em seguida, apresente o idioma adequado dependendo do valor existente:

=ISe([PaísRegião]="Itália", "Italiano", ISe([PaísRegião]="França", "Francês", ISe([PaísRegião]="Alemanha", "Alemão", "Outro idioma")))

O texto "Outro idioma" é o argumento partefalsa da função ISe mais recôndita. Visto que cada função aninhada ISe é o argumento partefalsa da função ISe que a contém, o texto "Outro idioma" apenas é devolvido se todas as expressões expr de todas as funções ISe forem avaliadas como Falso.

Outro exemplo: suponha que trabalha numa biblioteca. A base de dados da biblioteca tem um tabela com o nome Requisições, que contém um campo com o nome Data de Devolução, que contém a data do prazo de entrega de um determinado livro. Pode criar um formulário que indica o estado de item requisitado num controlo ao usar a função ISe na propriedade Origem do Controlo desse controlo, da seguinte forma:

=ISe([Data de Devolução]<Data(),"EM ATRASO",ISe([Data de Devolução]=Data(),"Devolução","Dentro do Prazo"))

Quando abre o formulário na vista Formulário, o controlo mostra "EM ATRASO" se o valor da Data de Devolução for menor que a data atual, "Devolução" se for igual à data atual, e "Dentro do Prazo" caso contrário.

Nota: Para utilizar operadores lógicos como "E" ou "Ou" no argumento expr da função ISe, tem de colocar a expressão lógica na função Aval. Veja os exemplos na tabela seguinte.

Utilize a função ISe numa consulta    

A função ISe é frequentemente utilizada para calcular campos em consultas. A sintaxe é a mesma, com a exceção de que, numa consulta, tem de preceder a expressão com um alias do campo e dois pontos (:) em vez de um sinal de igual (=). Para utilizar o exemplo anterior, teria de escrever o seguinte na linha Campo na grelha de estrutura da consulta:

Idioma: ISe([PaísRegião]="Itália", "Italiano", "Outro Idioma")

Neste caso, "Idioma:" é o alias do campo.

Para obter mais informações sobre como criar consultas e campos calculados, consulte o artigo Criar uma consulta selecionar simples.

Utilize a função ISe em código VBA    

Nota: Os seguintes exemplos demonstram a utilização desta função no módulo VBA (Visual Basic for Applications). Para obter mais informações sobre trabalhar com o VBA, selecione Referência para Programadores na lista pendente junto a Procurar e introduza um ou mais termos na caixa de pesquisa.

Este exemplo utiliza a função ISe para avaliar o parâmetro TestMe do procedimento CheckIt e devolve a palavra "Large" se o montante for maior que 1000. Caso contrário, devolve a palavra "Small".

Function CheckIt (TestMe As Integer)    CheckIt = IIf(TestMe > 1000, "Large", "Small")End Function

Mais exemplos

Expressão

Resultados

=ISe([CódigoAeroporto]="ORD","Chicago",ISe([CódigoAeroporto]="ATL","Atlanta",ISe([CódigoAeroporto]="SEA","Seattle","Outro")))

Se o [CódigoAeroporto] for "ORD", devolve "Chicago". Caso contrário, se o [CódigoAeroporto] for "ATL", devolve "Atlanta". Caso contrário, se o [CódigoAeroporto] for "SEA", devolve "Seattle". Caso contrário, devolve "Outro".

=ISe([DataEnvio]<Data(),"Enviado",ISe([DataEnvio]=Data(),"A Enviar","Por Enviar"))

Se [DataEnvio] for anterior à data de hoje, devolve "Enviado". Caso contrário, se [DataEnvio] for igual à data de hoje, devolve "A Enviar". Caso contrário, devolve "Por Enviar."

=ISe([DataCompra]<#1/1/2008#,"Antigo","Novo")

Se [DataCompra] for anterior a 1/1/2008, devolve "Antigo". Caso contrário, devolve "Novo."

=ISe(Aval([Volts] Entre 12 E 15 E [Amps] Entre 0,25 E 0,3),"OK","Fora de Calibração")

Se [Volts] está entre 12 e 15 e [Amps] está entre 0,25 e 0,3, devolve "OK". Caso contrário, devolve "Fora de Calibração."

=ISe(Aval([PaísRegião] Em ("Canadá","EUA","México")),"América do Norte","Outro")

Se [PaísRegião] é "Canadá", "EUA" ou "México", devolve "América do Norte". Caso contrário, devolve "Outro".

=ISe([Média]>=90,"A",ISe([Média]>=80,"B",ISe([Média]>=70,"C",ISe([Média]>=60,"D","F"))))

Se [Média] é 90 ou maior, devolve "A". Caso contrário, se [Média] é 80 ou maior, devolve "B". Caso contrário, se [Média] é 70 ou maior, devolve "C". Caso contrário, se [Média] é 60 ou maior, devolve "D". Caso contrário, devolve "F".

Nota: Se estiver a utilizar a função ISe para criar um campo calculado numa consulta, substitua o sinal de igual (=) por um alias do campo e dois pontos (:). Por exemplo, Estado: ISe([DataEnvio]<Data(),"Enviado",ISe([DataEnvio]=Data(),"A Enviar","Por Enviar"))

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.