Página 1 de 1

Ontme

Enviado: 03 Jun 2015 às 09:28
por JeanHard
Bom dia.
Estou com a seguinte dúvida:

Preciso executar uma Sub em um form através da aplicação ontime. Sei que usando um módulo funciona perfeitamente porem quero excutar a sub que esta no form e não estou conseguindo. Ex:

Sub teste()
With Label1
.Visible = True
.Caption = "Teste de ontime"
End With
End Sub


Private Sub UserForm_Initialize()
Call Application.OnTime(Now + TimeValue("00:00:03"), "teste")
End Sub

Abraços!!!

Ontme

Enviado: 03 Jun 2015 às 11:38
por duds
Bom dia Jean,

Não estou muito acostumado a usar essa função mas tente tirar o call do início da linha do código, pois o call serve para "chamar" outras subs! Tente colocar apenas
Código: Selecionar todos
Application.OnTime(Now + TimeValue("00:00:03"), "teste")
Att.

Ontme

Enviado: 03 Jun 2015 às 12:46
por duds
Desculpe Jean, falei besteira para você
O seu código do evento initialize está correto, porém o código da sub que você quer executar deverá estar em um módulo qualquer e ao invés de
Código: Selecionar todos
With Label1
.Visible = True
.Caption = "Teste de ontime"
End With
Adicione o nome do seu form antes do label:
Código: Selecionar todos
Sub teste()
    With UserForm1.Label1
        .Visible = True
        .Caption = "Teste de ontime"
    End With
End Sub

Ontme

Enviado: 03 Jun 2015 às 12:59
por JeanHard
Olá Eduardo.
Eis o problema se eu por minha sub em um módulo ela não vai funcionar por causa dos indices. É apenas para passar para o próximo registro.

Já tentei até o sleep e nada.

Sub proximo()

If indiceRegistro < wsDADOS.UsedRange.Rows.Count Then
indiceRegistro = indiceRegistro + 1
End If
If indiceRegistro > 1 Then
Call CarregaRegistro
End If
End Sub

Não sei se fui claro

Ontme

Enviado: 03 Jun 2015 às 13:05
por duds
Mesmo se você deixar essa variável indiceRegistro como publica?

Re: Ontme

Enviado: 03 Jun 2015 às 15:13
por JeanHard
Meu amigo, resolvi por aqui.
Como minha sub dependia de uotras variaveis que depediam tambem de outras variaveis, coloquei todas as minhas variáveis em um módulo e assim resolvi o problema.
Sua dica foi fundamental para resolver meu problema.
Wleu :)