MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    Msgbox com tempo

    Compartilhe
    avatar
    Marco Messa
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 282
    Registrado : 28/06/2010

    Msgbox com tempo

    Mensagem  Marco Messa em Qui 08 Jul 2010, 13:58

    Segue um código que cria uma msgbox com tempo:

    Public Function MsgBoxTimer(Seconds As Integer, Prompt As String, Optional Buttons As VbMsgBoxStyle = vbOKOnly, Optional Title As String) As VbMsgBoxResult
    Set WShell = CreateObject("WScript.Shell")
    MsgBoxTimer = WShell.Popup(Prompt, Seconds, Title, Buttons)
    End Function



    .................................................................................
    Tea with me that I book your face [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    Hazael
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 34
    Registrado : 26/08/2011

    Re: Msgbox com tempo

    Mensagem  Hazael em Sex 13 Mar 2015, 19:06

    amigo...

    pra não não funcionou... da o erro... sera que tenho que habilitar alguma referencia?

    ou declarar alguma variável?

    o erro que da é que preciso declarar a variável... para a palavra Wshell... mas você não declara..... eu declarei como objeto e não executou o tempo que pedi...

    pode me ajudar?
    avatar
    Marco Messa
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 282
    Registrado : 28/06/2010

    Re: Msgbox com tempo

    Mensagem  Marco Messa em Ter 17 Mar 2015, 01:19

    Não precisa de referência pois está utilizando o comando CreateObject, mas caso você queira dar uma olhada nos outros métodos que a classe possui, adicione uma referência para Windows Script Host Object Model.

    E mude para o código abaixo:

    Código:
    Public Function MsgBoxTimer(Seconds As Integer, Prompt As String, Optional Buttons As VbMsgBoxStyle = vbOKOnly, Optional Title As String) As VbMsgBoxResult
        Dim WShell As New WshShell
        MsgBoxTimer = WShell.Popup(Prompt, Seconds, Title, Buttons)
    End Function


    .................................................................................
    Tea with me that I book your face [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    Roberto_1977
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 836
    Registrado : 01/10/2013

    Re: Msgbox com tempo

    Mensagem  Roberto_1977 em Ter 17 Mar 2015, 12:01

    onde coloco o tempo???
    1000= 1 segundo???


    .................................................................................
    Para saber como marcar tópico como [Resolvido] Click Aqui [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    Marco Messa
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 282
    Registrado : 28/06/2010

    Re: Msgbox com tempo

    Mensagem  Marco Messa em Ter 17 Mar 2015, 23:03

    Roberto_1977 escreveu:onde coloco o tempo???
    1000= 1 segundo???
    1 segundo = 1.

    Hazael escreveu:
    amigo...

    pra não não funcionou... da o erro... sera que tenho que habilitar alguma referencia?

    ou declarar alguma variável?

    o erro que da é que preciso declarar a variável... para a palavra Wshell... mas você não declara..... eu declarei como objeto e não executou o tempo que pedi...

    pode me ajudar?
    Não deu certo porque seu código provavelmente tem a declaração Option Explicit no começo do módulo, isso obriga a declaração de variáveis.
    Quando precisar declarar uma variável e não souber o tipo que será definido nela, utilize apenas Dim variável sem o tipo ou com o tipo Variant, que é o padrão utilizado quando vc não declara nenhum tipo.

    A maneira correta, sem precisar usar a referência seria a seguinte:

    Código:
    Public Function MsgBoxTimer(Seconds As Integer, Prompt As String, Optional Buttons As VbMsgBoxStyle = vbOKOnly, Optional Title As String) As VbMsgBoxResult
      Set WShell = CreateObject("WScript.Shell")
      MsgBoxTimer = WShell.Popup(Prompt, Seconds, Title, Buttons)
    End Function


    .................................................................................
    Tea with me that I book your face [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2807
    Registrado : 29/06/2012

    Re: Msgbox com tempo

    Mensagem  Noobezinho em Qua 18 Mar 2015, 00:05

    Para evitar deletar esse tópico, vou transferi-lo para a sala de Módulos e VBA.

    Quando o código estiver funfando, convido o autor do tópico a abrir novo tópico
    no repositório.

    Noob


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .
    avatar
    Marco Messa
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 282
    Registrado : 28/06/2010

    Re: Msgbox com tempo

    Mensagem  Marco Messa em Qua 18 Mar 2015, 16:02

    Wink


    .................................................................................
    Tea with me that I book your face [Você precisa estar registrado e conectado para ver esta imagem.]
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2807
    Registrado : 29/06/2012

    Re: Msgbox com tempo

    Mensagem  Noobezinho em Qua 18 Mar 2015, 16:57

    Amigos

    Testei o código passado na primeira mensagem pelo Marco Messa e funcionou perfeitamente:

    MsgBoxTimer 5,"Esse é apenas um teste da BoxTimer",vbInformation,"BoxTimer"


    [ ]'s

    Noob


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .
    avatar
    Marco Messa
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 282
    Registrado : 28/06/2010

    Re: Msgbox com tempo

    Mensagem  Marco Messa em Qua 18 Mar 2015, 17:23

    É porque o Hazael tinha a opção Option Explicit no código dele, que obriga a declaração de variáveis.


    .................................................................................
    Tea with me that I book your face [Você precisa estar registrado e conectado para ver esta imagem.]

      Data/hora atual: Sex 23 Jun 2017, 02:43