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

3 participantes

    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer)

    avatar
    Vdabreu
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 25/04/2022

    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer)

    Mensagem  Vdabreu 25/4/2022, 19:46

    Boa Tarde mestres!!

    Tenho duas rotinas que criei, uma para um click  e outra p/ duplo click em um rótulo que está acoplado a uma caixa de texto, e que estão funcionando normalmente. efetuei uma subrotina que ao apertar a tecla shift + a chama a subrotina de um click perfeitamente, mas quando coloco o nome da subrotina de 2 clicks não vai. Agradeço qualquer ajuda.


    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

    Dim IntTeclaShift As Integer
    IntTeclaShift = (Shift And acShiftMask) > 0

    If IntTeclaShift And KeyCode = 65 Then
    'Call Rótulo48_Click (Quando deixo apenas esta linha para um click funciona perfeitamente apertando Shift + A)
    Call Rótulo48_DblClick (Quando deixo apenas esta linha para dois click não funciona e diz que necessita de argumento. quando coloco true ou false não funciona)

    End If
    End sub
    ________________________________________________________________________

    A linha inicial da subroitina de um click é      Private Sub Rótulo48_Click()
    A linha inicial da subroitina de dois click é     Private Sub Rótulo48_DblClick(cancel As Integer)
    avatar
    Convidado
    Convidado


    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Por que digitar antes a letra "A"

    Mensagem  Convidado 25/4/2022, 21:45

    Vdabreu, por que digitar uma letra antes do clicar no botão. e Por que duas rotinas para o mesmo botão?

    Gostaria de entender melhor os eu problema...
    Marcelo David
    Marcelo David
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Re: [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer)

    Mensagem  Marcelo David 26/4/2022, 12:05

    Bom dia senhores,
    o evento duplo clique possui um argumento obrigatório. Para cancelar o evento.

    Mas a intensão é realizar o evento e não cancelar, antão passe como argumento 0 (zero).
    Fica assim:
    Call Rótulo48_DblClick (0)

    Obs.: Aqui no meu Access do Office 365 não há evento duplo clique na folha de propriedade, no entanto, ele ainda aparece no VBA, porém não funciona.
    Mas se o seu funcionar, deve ser características da versão.


    .................................................................................
    Aprenda como criar formulário desacoplado.
    Clique aqui e conheça o treinamento.
    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Marcel11
    avatar
    Convidado
    Convidado


    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Não tenho Office 365

    Mensagem  Convidado 26/4/2022, 13:17

    Infelizmente não posso te ajudar pois não tenho o Office 365.
    avatar
    Vdabreu
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 25/04/2022

    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Re: [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer)

    Mensagem  Vdabreu 26/4/2022, 15:02

    Bom Dia Senhores, o formulário contém uma pergunta e quatro respostas. Quando dou 1 click por exemplo no rótulo da opção A, esta resposta é selecionada, deixando apenas esta aparente e as demais não,e se por acaso eu quiser retornar a condição anterior dou duplo click novamente no rótulo e retorna a condição anterior. Isto esta funcionando perfeitamente através do click do mouse, porém também quero poder realizar isso do teclado apertando a tecla shift +A por exemplo e selecionar a opção A (depois é só fazer o mesmo p/ as demais). Para isso entrei na propriedade ao apertar a tecla do formulário e criei esta subrotina com o comando Call que enviei. Quando aperto as teclas p/ chamar a subrotina de um click funciona perfeitamente, mas quando deixo a linha para testar e chamar a subrotina de duplo click não funciona.

    Quando uso pelo botões do mouse funcionam perfeitamente um e dois clicks, mas quando chamo as subrotinas com o comando Call só funciona a de um click.

    Testei com 0 o 1 , -1, True, False no argumento e não funciona

    Meu office é 2010
    avatar
    Convidado
    Convidado


    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Access 2010 igual ao meu

    Mensagem  Convidado 26/4/2022, 16:21

    Você já tentou inverter o significados de 1 e 2 cliques?
    avatar
    Vdabreu
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 25/04/2022

    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Re: [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer)

    Mensagem  Vdabreu 26/4/2022, 17:35

    Da na mesma, quando tenta chamar a subrotina p/ 2 clicks não vai.
    avatar
    Convidado
    Convidado


    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Cópia do BD

    Mensagem  Convidado 26/4/2022, 17:48

    Vdabreu, é possível enviar uma cópia da rotina VBA?
    avatar
    Vdabreu
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 25/04/2022

    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Re: [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer)

    Mensagem  Vdabreu 26/4/2022, 19:16

    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

    Dim IntTeclaShift As Integer

    IntTeclaShift = (Shift And acShiftMask) > 0

    If IntTeclaShift And KeyCode = 65 Then
    'Call Rótulo48_Click (Quando deixo apenas esta linha para um click funciona perfeitamente apertando Shift + A)
    Call Rótulo48_DblClick (Quando deixo apenas esta linha para dois click não funciona e diz que necessita de argumento)

    End If
    End sub
    _____________________________________________________________________________________________

    A linha inicial da subroitina de um click é Private Sub Rótulo48_Click()
    A linha inicial da subroitina de dois click é Private Sub Rótulo48_DblClick(cancel As Integer)

    As rotinas de um click e dois clicks pelo mouse estão funcionando normalmente, acredito que o problema seja como chamar a subrotina de 2 clicks já que pede argumentos na chamada.
    avatar
    Convidado
    Convidado


    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Envio do BD

    Mensagem  Convidado 26/4/2022, 19:47

    Vdabreu, não consigo entender vendo apenas o VBA.

    Você pode mandar o BD zipado?
    avatar
    Vdabreu
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 25/04/2022

    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Re: [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer)

    Mensagem  Vdabreu 26/4/2022, 21:29

    Colega consegui realizando da seguinte forma, criei um campo texto com o nome Flag01 que zera na abertura do formulario e desta forma funcionou chamando as subrotinas. Obrigado a todos, se não tiver mais algum comentário acho que podemos finalizar o topico

    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

    Dim IntTeclaShift As Integer

    IntTeclaShift = (Shift And acShiftMask) > 0

    If IntTeclaShift And KeyCode = 65 And Me.Flag01 = 0 Then
    Me.Flag01 = 1
    Call Rótulo48_Click


    ElseIf IntTeclaShift And KeyCode = 65 And Me.Flag01 = 1 Then
    Me.Flag01 = 0
    Call Rótulo48_DblClick(True)

    End If
    End sub
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3707
    Registrado : 22/11/2016

    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Re: [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer)

    Mensagem  DamascenoJr. 26/4/2022, 22:57

    Estando resolvido, você pode finalizar o tópico. Veja no link abaixo como fazer isso
    https://www.maximoaccess.com/t860-resolucao-de-topicos


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    avatar
    Vdabreu
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 25/04/2022

    [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer) Empty Re: [Resolvido] - Como chamar uma subrorina com argumento (cancel as integer)

    Mensagem  Vdabreu 27/4/2022, 16:51

    Bom Dia! e Obrigado a todos

      Data/hora atual: 1/10/2022, 16:30