Jump to content
Fórum Script Brasil
  • 0

(Resolvido) Utilizar fórmula do Excell no Access


soaresf

Question

Bom dia,

Estou com um problema para criar no Access uma fórmula que tenha a mesma funcionalidade da fórmula abaixo que criei no Excell.

Segue a fórmula no Excell:

=SE(E(B4="";B2<HOJE());"Pendente";SE(E(B4>B2;B5="");"Em atraso";SE(E(B4<=B2;B5="";B4<>"");"Em andamento";SE(E(B5<=B3;B5<>"");"Concluído no prazo";SE(B2>HOJE();"";"Concluído fora de prazo")))))

Onde: B2 corresponde a: Início Previsto

B3 corresponde a: Fim Previsto

B4 corresponde a: Início real

B5 corresponde a: Fim Real

Criei uma tabela no Access com os campos informados e chamado Status que, de acordo com as datas informadas, deverá retornar como "Pendente", "Em atraso", "Em andamento", "Concluído no Prazo", "Concluído fora de prazo".

Tentei incluir a fórmula na Consulta utilizando "SeImed"; "IIF" e "E". Mas, não tive sucesso.

Conto com a ajuda de vocês!!!

Segue abaixo a fórmula utilizada no Access:

SeImed([Data de Início]="" E [DataDeInícioPrevista]<Data();"Pendente";SeImed([Data de Início]>[DataDeInícioPrevista] E [Data de Término]="";"Em atraso";SeImed([Data de Início]<=[DataDeInícioPrevista] E [Data de Término]="" E [Data de Início]<>"";"Em andamento";SeImed([Data de Término]<=[DataFinalPrevista] E [Data de Término]<>"";"Concluído no prazo";SeImed([DataDeInícioPrevista]>Data();"";"Concluído fora de prazo")))))

Edited by soaresf
Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Fera da mesma forma que fez no access, só que você terá de fazer isso num procedimento de evento e em vez de utilizar o SE utilize o IIF ou ainda veja o tutorial abaixo e verá como utilizar o IF...ELSE/ELSEIF acho que isso lhe ajudará muito. Aguardo retorno para colocar resolvido no seu tópico.

http://www.techonthenet.com/access/functio...ced/if_then.php

Link to comment
Share on other sites

  • 0

Mestre,

No tutorial há um item para uma condição. No meu caso, para o item ocorrer, é necessário que pelo menos 2 condições ocorram.

Quando coloco a fórmula abaixo aparece a seguinte mensagem: Tipo de dados não coincidente em expressão de critério. (Erro 3464).

SeImed([Data de Início]="" E [DataDeInícioPrevista]<Data();"Pendente";SeImed([Data de Início]>[DataDeInícioPrevista] E [Data de Término]="";"Em atraso";SeImed([Data de Início]<=[DataDeInícioPrevista] E [Data de Término]="" E [Data de Início]<>"";"Em andamento";SeImed([Data de Término]<=[DataFinalPrevista] E [Data de Término]<>"";"Concluído no prazo";SeImed([DataDeInícioPrevista]>Data();"";"Concluído fora de prazo"))))).

Grato!!!

Link to comment
Share on other sites

  • 0

Obrigado pela ajuda.

Inseri a expressão:

SeImed([DataInicio]=CData(0) E [DataDeInicioPrevista]<now();"Pendente";SeImed([DataInicio]>[DataDeInicioPrevista] E [DataTermino]=CData(0);"Em atraso";SeImed([DataInicio]<=[DataDeInicioPrevista] E [DataTermino]=CData(0) E [DataInicio]<>CData(0);"Em andamento";SeImed([DataTermino]<=[DataFinalPrevista] E [DataTermino]<>CData(0);"Concluído no prazo";SeImed([DataDeInicioPrevista]>now();"";"Concluído fora de prazo")))))

Não deu nenhum erro, mas, também não retornou nenhuma informação. Acredito que falta apenas um detalhe para chegar a solução final. Conto com a ajuda e desde já peço desculpas pelo incômodo.

Link to comment
Share on other sites

  • 0

Consegui inserindo a expressão abaixo na Fonte de Controle na Caixa de Texto do Campo "Status" no formulário:

=SeImed(ÉNulo([DataInicio]) E [DataDeInicioPrevista]<Agora();"Pendente";SeImed([DataInicio]>[DataDeInicioPrevista] E ÉNulo([DataTermino]);"Em atraso";SeImed([DataInicio]<=[DataDeInicioPrevista] E ÉNulo([DataTermino]) E [DataInicio]<>CData(0);"Em andamento";SeImed([DataTermino]<=[DataFinalPrevista] E ÉData([DataTermino]);"Concluído no prazo";SeImed([DataDeInicioPrevista]>Agora();"";"Concluído fora de prazo")))))

Obrigado!!!!!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...