COMANDO IFF

IRENKO 02/09/2009 10:02:57
#321678
IIf(IsNull(Tabela_LM!OF), Tabela_LM!RC, IIf(IsNull(Tabela_LM!RC), Tabela_LM!RC, Tabela_LM!OF))

Na linha acima como adiciono um outro IFF comparando se os campos RC e OF for vazio eu coloco (-)?
ASHKATCHUP 02/09/2009 10:19:53
#321683
Resposta escolhida
Primeiramente, eu considero IIF um lixo, mas cada um, cada um...

Outra coisa.... ele ve se o campo é null e retorna ele mesmo!?


IIf(IsNull(Tabela_LM!RC), Tabela_LM!RC)

IRENKO 02/09/2009 10:38:15
#321685
Vou tentar explicar;

1º tenho dois campos OF e RC

a sintaxe é:

primeiro verefico se o campo OF é vazio, se sim verefico se o campo RC comtem dados, se sim carrego no text o valor do campo RC, se não carrego o campo OF isso se o mesmo contiver dados caso ao contrario se os dois forem vazio carrego (-). Como montar esse IIF alinhado ou IF, tanto faz.
ASHKATCHUP 02/09/2009 10:41:32
#321687

Private Sub Form_Load()
[ô]
If IsNull(Tabela_LM!OF) And IsNull(Tabela_LM!RC) Then
text1.Text = [Ô]-[Ô]
ElseIf IsNull(Tabela_LM!OF) Then
text1.Text = Tabela_LM!RC
Else
text1.Text = Tabela_LM!OF
End If
[ô]
End Sub
IRENKO 02/09/2009 10:52:37
#321689

Boa ASHKATCHUP, agora só para esclarecimento se possivel. Eu consegui fazer carregar o primeiro (-), o segundo não entra, q pode estar errado na linha?

IIf(IsNull(Tabela_LM!OF), IIf(IsNull(Tabela_LM!RC), [Ô]-[Ô], Tabela_LM!RC), IIf(IsNull(Tabela_LM!OF), [Ô]-[Ô], Tabela_LM!OF))
ASHKATCHUP 02/09/2009 10:56:06
#321691
Cara, eu realmente não aconselho IIF, mas vou te ajudar:


IIf(IsNull(Tabela_LM!OF) And IsNull(Tabela_LM!RC), [Ô]-[Ô], IIf(IsNull(Tabela_LM!OF), Tabela_LM!RC, Tabela_LM!OF))
IRENKO 02/09/2009 11:26:28
#321693
Não deu ASHKATCHUP mas valeu, vou tentar aqui resolver esse problema. Sua ajuda já foi bastante esclarecedora.
WEBMASTER 02/09/2009 11:56:31
#321700
Se esta ficando muito complexo com IIF, experimente o comando SWITCH, ele é um IIF com suporte a maior complexidade...
ASHKATCHUP 02/09/2009 12:13:24
#321701
Citação:

IRENKO escreveu:
Não deu ASHKATCHUP mas valeu, vou tentar aqui resolver esse problema. Sua ajuda já foi bastante esclarecedora.



Não entendi como não pode ter funcionado....

Se ambas forem nulas, retorna [Ô]-[Ô]

IIf(IsNull(Tabela_LM!OF) And IsNull(Tabela_LM!RC), [Ô]-[Ô],


Se a OF for nula, retorna RC. Se não for nula, retorna OF

IIf(IsNull(Tabela_LM!OF), Tabela_LM!RC, Tabela_LM!OF))
Tópico encerrado , respostas não são mais permitidas