MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


4 participantes

    [Resolvido]condicional if com duas condições

    avatar
    Ruiidias
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 26
    Registrado : 31/07/2011

    [Resolvido]condicional if com duas condições Empty condicional if com duas condições

    Mensagem  Ruiidias 11/8/2011, 21:27

    boa noite, precisava de ajuda na criação de um if condicional com mais do que uma condição, vou passar a mostrar o código...

    Código:
    Private Sub bt_nova_faixa_Click()
    Dim db As Database
        Dim rs As Recordset
        Dim Resposta
       
        Resposta = MsgBox("Confirma a entrada de novo registo?", vbYesNo + vbCritical + vbDefaultButton1, "Confirmação")
        If Resposta = vbYes Then
           
        Set db = CurrentDb
        Set rs = db.OpenRecordset("faixas", dbOpenDynaset)
       
        If Not IsNull((DLookup("titulo", "faixas", "titulo='" & Me.txt_titulo & "'")) & (DLookup("artista", "faixas", "artista='" & Me.txt_artista & "'"))) Then
        MsgBox "Já existe uma música com este nome", vbOKOnly + vbCritical, "Atenção"
        Exit Sub
        Else
        rs.AddNew
        Me!txt_id.SetFocus
        rs!faixa_id = Me!txt_id
        Me!txt_artista.SetFocus
        rs!artista = Me!txt_artista
        Me!txt_titulo.SetFocus
        rs!titulo = Me!txt_titulo
        Me!txt_album.SetFocus
        rs!album = Me!txt_album
        Me!txt_ano.SetFocus
        rs!ano = Me!txt_ano
       
        End If
        rs.Update
        Me!txt_artista = ""
        Me!txt_titulo = ""
        Me!txt_album = ""
        Me!txt_ano = "2011"
       
       
       
        txt_id = DMax("faixa_id", "faixa") + 1
       
        rs.Close
        db.Close
        DoCmd.Close
        Else
            Me.txt_titulo.Value = ""
            DoCmd.CancelEvent
         
        End If
    End Sub

    no If Not IsNull((DLookup... se deixar só a primeira condição ele funciona a 100% senão dá erro e para logo

    se alguem poder ajuda Sad
    avatar
    Convidado
    Convidado


    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Convidado 12/8/2011, 13:12

    Quais seriam essas condições Amigão..
    As enumere para que tenhamos mais conhecimento da tua necessidade.

    Saudações
    avatar
    Convidado
    Convidado


    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Convidado 12/8/2011, 13:15

    Se for para esta linha

    If Not IsNull((DLookup("titulo", "faixas", "titulo='" & Me.txt_titulo & "'")) & (DLookup("artista", "faixas", "artista='" & Me.txt_artista & "'"))) Then


    Aplique assim:


    If Not IsNull((DLookup("titulo", "faixas", "titulo='" & Me.txt_titulo & "'")) And Not IsNull (DLookup("artista", "faixas", "artista='" & Me.txt_artista & "'"))) Then


    Saudações


    Caso queira analisar ou uma ou a outra... Substitua o And por Or
    avatar
    Ruiidias
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 26
    Registrado : 31/07/2011

    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Ruiidias 15/8/2011, 21:57

    Boa noite,

    amigo obrigado por tentar ajudar, não não resultou...

    a ideia era naquele IF verificar se na tabela existe alguma entrada com aqueles campos...
    neste caso é verificar se existe alguma entrada de Artista e daquela música (na mesma linha) que o utilizador está a querer inserir...para evitar repetição

    não sei se me fiz entender... Crying or Very sad
    Marcelo David
    Marcelo David
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3948
    Registrado : 21/04/2011

    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Marcelo David 15/8/2011, 22:04

    Não seria viável usar duas estruturas If's e dependendo do resultado sair da sub e impedir de ir para outra?


    .................................................................................
    [Resolvido]condicional if com duas condições Favicon-16x16   Domine Access e VBA Criando Um Incrível Sistema Financeiro - [Passo a passo]
    [Resolvido]condicional if com duas condições Favicon-16x16   Access e VBA - Formulário Desacoplado - [Passo a passo]
    [Resolvido]condicional if com duas condições Yt_16x10 Conheça meu canal no Youtube e se inscreva.
    [Resolvido]condicional if com duas condições Marcel11
    avatar
    Ruiidias
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 26
    Registrado : 31/07/2011

    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Ruiidias 15/8/2011, 22:21

    qualquer coisa tipo isto...?
    Código:
    If Not IsNull(DLookup("Titulo", "faixas", "Titulo='" & Me.txt_titulo & "'")) Then
        If Not IsNull(DLookup("Artista", "faixas", "Artista='" & Me.txt_artista & "'")) Then
        MsgBox "Já existe uma música com este nome", vbOKOnly + vbCritical, "Atenção"
        Exit Sub
        Else
        rs.AddNew
        Me!txt_id.SetFocus
        rs!faixa_id = Me!txt_id
        Me!txt_artista.SetFocus
        rs!artista = Me!txt_artista
        Me!txt_titulo.SetFocus
        rs!titulo = Me!txt_titulo
        Me!txt_album.SetFocus
        rs!album = Me!txt_album
        Me!txt_ano.SetFocus
        rs!ano = Me!txt_ano
        Me!txt_genero.SetFocus
        rs!genero = Me!txt_album
        End If
        End If

    eu tentei, mas não funciona, quando passa para o segundo IF dá erro.
    Marcelo David
    Marcelo David
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3948
    Registrado : 21/04/2011

    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Marcelo David 15/8/2011, 22:25

    Isso...


    .................................................................................
    [Resolvido]condicional if com duas condições Favicon-16x16   Domine Access e VBA Criando Um Incrível Sistema Financeiro - [Passo a passo]
    [Resolvido]condicional if com duas condições Favicon-16x16   Access e VBA - Formulário Desacoplado - [Passo a passo]
    [Resolvido]condicional if com duas condições Yt_16x10 Conheça meu canal no Youtube e se inscreva.
    [Resolvido]condicional if com duas condições Marcel11
    avatar
    Ruiidias
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 26
    Registrado : 31/07/2011

    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Ruiidias 15/8/2011, 22:32

    não funciona Crying or Very sad
    avatar
    Convidado
    Convidado


    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Convidado 16/8/2011, 06:34

    Voce deves ai entao utilizar o Dcount.. e se ele retornar valor 0 encerra o sub caso contrario continua

    Algo mais ou menos assim:

    IF DCount("*", "[SuaTabela]", "SeuCampoTabela =" & Me!SuaCaixaTexto & " And SeuCampoTabela1 ='" & Me!SuaCaixaTexto1 & "'") = 0 Then ........



    Se esta utilizando um recordset podes filtrar tabem o recordset, utilizando uma clausula WHERE na SQL que popula o recordset e aplicar um if da seguinte maneira:


    SQL = ("SELECT * FROM SuaTabela WHERE ID= " & Me!SeuCampoIDForm & " and SeuCampoForm=" Me!SuaCaixaTexto ")

    ..Carrega o recorset e depois

    If rs.Recordcount = 0 Then

    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11026
    Registrado : 04/11/2009

    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  JPaulo 16/8/2011, 06:52

    .
    Instrução correta;

    Private Sub bt_nova_faixa_Click()
    Dim db As Database
    Dim rs As Recordset
    Set db = CurrentDb
    Set rs = db.OpenRecordset("faixas", dbOpenDynaset)

    If MsgBox("Confirma a entrada de novo registo?", vbYesNo + vbCritical + vbDefaultButton1, "Confirmação") = vbYes Then

    If Not IsNull(DLookup("titulo", "faixas", "titulo='" & Me.txt_titulo & "' AND artista='" & Me.txt_artista & "'")) Then
    MsgBox "Já existe uma música com este nome", vbOKOnly + vbCritical, "Atenção"
    Exit Sub
    Else

    rs.AddNew
    Me!txt_id.SetFocus
    rs!faixa_id = Me!txt_id
    Me!txt_artista.SetFocus
    rs!artista = Me!txt_artista
    Me!txt_titulo.SetFocus
    rs!titulo = Me!txt_titulo
    Me!txt_album.SetFocus
    rs!album = Me!txt_album
    Me!txt_ano.SetFocus
    rs!ano = Me!txt_ano
    rs.Update

    End If
    End If

    txt_id = DMax("faixa_id", "faixa") + 1

    Me!txt_artista = ""
    Me!txt_titulo = ""
    Me!txt_album = ""
    Me!txt_ano = "2011"

    rs.Close
    db.Close
    DoCmd.Close
    End Sub




    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]condicional if com duas condições Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]condicional if com duas condições Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]condicional if com duas condições Folder_announce_new Instruções SQL como utilizar...
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  vieirasoft 21/8/2011, 08:50

    Estou a puxar o tópico para cima. se já tiver resolvido, agradeço o seu retorno.
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  vieirasoft 29/8/2011, 04:22

    Como não houve retorno, o tópico passa a resolvido. Qualquer coisa reabra, por favor.
    avatar
    Ruiidias
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 26
    Registrado : 31/07/2011

    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Ruiidias 29/8/2011, 23:39

    peço desculpa, tive uns problemas com a internet nestes dias e não consegui mesmo responder, ainda não está resolvido...
    andei a pesquisar, e queria perguntar se é possível utilizar o "If Not IsNull(DLookup" com o "WHERE", de modo a verificar se existe alguma entrada na tabela com aqueles valores nos respectivos campos.

    obrigado
    avatar
    Convidado
    Convidado


    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Convidado 30/8/2011, 06:58

    Melhor utilizar o DCount com a clausula IF...

    If DCount("*", "[SuaTabela]", SeuCampo=" & Me!CaixaTexto" And SeuCampo2=" & Me!CaixaTexto1")= O Then....

    Se retornar valor 0 (Sem registro coincidente) Assume uma atitude

    Else

    Da prosseguimento no código

    End If
    avatar
    Convidado
    Convidado


    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Convidado 30/8/2011, 07:01

    O Dlookup não utiliza a cláusula Where... E sim o sinal de = para fazer a comparação

    Observe o exemplo acima do mestre JP..


    If Not IsNull(DLookup("titulo", "faixas", "titulo='" & Me.txt_titulo & "' AND artista='" & Me.txt_artista & "'")) Then

    Aqui ele procura o Titulo na tabela Faixas quando o Título for igual a caixa texto txt_titulo
    avatar
    Convidado
    Convidado


    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Convidado 31/8/2011, 05:37

    Vamos Recapitular Rui... Explique novamente o que deseja...

    Qual o Form... qual o Botão do código?

    Cumprimentos

    Conteúdo patrocinado


    [Resolvido]condicional if com duas condições Empty Re: [Resolvido]condicional if com duas condições

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 23/11/2024, 10:32