bollywood actresses hair loss hair rehab london contact number cheap hair extensions brazilian curly hair with closure hair extension fails human hair wigs black ponytail hairstyles 2018 sunny hair extensions uk hair extensions remy hair extensions weft koko one piece hair extensions clip hair
Expressão que você inseriu é muito complexa

Expressão inserida é muito complexa

Adquira a assinatura vitalícia do site e passe a ter acesso aos arquivos exemplos, vídeos, revistas, livros e ao kit de montagem de ribbons. Você terá suporte por e-mail, caso necessite tirar dúvidas pontuais. Clique AQUI e veja como obter um dos nossos planos. Clique AQUI e faça uma visita a seção Downloads do site e verifique as centenas de arquivos que estará à sua disposição. Clique AQUI e faça uma visita a seção Vídeos do site e veja a lista que estará disponível ao se tornar o nosso assinante vitalício. Clique AQUI e saiba mais detalhes sobre o kit de montagem de ribbons (deixe seus aplicativos com aspecto profissional).

Usuário Francisco:

Boa noite.

Tenho uma consulta e na linha de campo uso o operador SeImed.  Estou usando uma expressão muito grande e ao dar Enter, apresenta esta mensagem:

"A expressão que você inseriu é muito complexa"

Como faço para que dê certo a expressão?

Expressão Utilizada:

Tempo Total de Penas: SeImed([PenaAno]="01A";"Mais de 1 ano até 2 anos";
SeImed([PenaAno]="02A";"Mais de 1 ano até 2 anos";
SeImed([PenaAno]="03A";"Mais de 2 até 4 anos";
SeImed([PenaAno]="04A";"Mais de 2 até 4 anos";
SeImed([PenaAno]="05A";"Mais de 4 até 8 anos";
SeImed([PenaAno]="08A";"Mais de 4 até 8 anos";
SeImed([PenaAno]="09A";"Mais de 8 até 15 anos";
SeImed([PenaAno]="15A";"Mais de 8 até 15 anos";
SeImed([PenaAno]="16A";"Mais de 15 até 20 anos";
SeImed([PenaAno]="20A";"Mais de 15 até 20 anos";
SeImed([PenaAno]="21A";"Mais de 20 até 30 anos";
SeImed([PenaAno]="30A";"Mais de 20 até 30 anos";
SeImed([PenaAno]="31A";"Mais de 30 até 50 anos";
SeImed([PenaAno]="50A";"Mais de 30 até 50 anos";
SeImed([PenaAno]="51A";"Mais de 50 até 100 anos";
SeImed([PenaAno]="100A";"Mais de 50 até 100 anos";
SeImed([PenaAno]="101A";"Mais de 100 anos")))))))))))))))))

Suporte:

Francisco,

existe um limite em que se pode aninhar o SeImed.  Se não me engano é de até 14. Podemos contornar a limitação, substituindo por uma função.

Criei esta função:

Public Function fncRetornaPena(strPena As String) As String
Select Case strPena
   Case "01A", "02A": fncRetornaPena = "Mais de 1 ano até 2 anos"
   Case "03A", "04A": fncRetornaPena = "Mais de 2 até 4 anos"
   Case "05A", "08A": fncRetornaPena = "Mais de 4 até 8 anos"
   Case "09A", "15A": fncRetornaPena = "Mais de 8 até 15 anos"
   Case "16A", "20A": fncRetornaPena = "Mais de 15 até 20 anos"
   Case "21A", "30A": fncRetornaPena = "Mais de 20 até 30 anos"
   Case "31A", "50A": fncRetornaPena = "Mais de 30 até 50 anos"
   Case "51A", "100A": fncRetornaPena = "Mais de 50 até 100 anos"
   Case "101A": fncRetornaPena = "Mais de 100 anos"
   Case Else
    fncRetornaPena = "Valor incorreto..."
End Select
End Function

E na consulta usei desta forma:

SELECT tblTeste.Código, tblTeste.PenaAno, fncRetornaPena([penaano]) AS Pena
FROM tblTeste;

Baixe e estude o arquivo exemplo oferecido.

Usuário Francisco:

Boa noite.

Deu certo. Muito obrigado.

Download

 


 

 


Não há comentário

Envie seu comentário: