Página 1 de 1

Execultar Macro ao entrar na pagina 2 do MultPage

Enviado: 21 Fev 2022 às 21:25
por GRS007
Boa Noite

Preciso de uma ajuda

Tou montando um programa no Excel VBA so que eu sou iniciante e não entendo muito das macros.

Quero ao abrir uma Page do MultiPage execultar as macros que aquela Page vai usar.

O Programa Tera 1 MultiPage so que nesse MultiPage tem 10 Paginas e cada pagina tem um ListView que traz tabelas do Access só que se eu usar o comando UserForm Initialize as 10 ListView com 10 Macros diferentes funcionara ao mesmo tempo assim necessitando de grande processamento assim travando o PC.
Obs: o PC ja trava com 3 paginas do google aberto.

Re: Execultar Macro ao entrar na pagina 2 do MultPage

Enviado: 22 Fev 2022 às 10:14
por osvaldomp
Experimente:
Código: Selecionar todos
Private Sub MultiPage1_Click(ByVal Index As Long)
 Select Case MultiPage1.SelectedItem.Name
  Case "Page1": MsgBox "Page1 foi ativada"
  Case "Page2": MsgBox "Page2 foi ativada"
  '...
  '...
 End Select
End Sub

Re: Execultar Macro ao entrar na pagina 2 do MultPage

Enviado: 22 Fev 2022 às 14:54
por GRS007
Boa Tarde.

Teria como me explicar melhor como esse codigo iria funcionar?

Eu tenho pouca Noção com o Excel VBA, mais eu vi o codigo e estou achando que só muda de pagina e aparece o texto.
Não entendi como vai funcionar.

Obrigado.

Re: Execultar Macro ao entrar na pagina 2 do MultPage

Enviado: 22 Fev 2022 às 15:48
por osvaldomp
GRS007 escreveu: 21 Fev 2022 às 21:25 Quero ao abrir uma Page do MultiPage execultar as macros que aquela Page vai usar.
Instale uma cópia do código que passei no módulo do UserForm.

Ao selecionar/ativar qualquer uma das páginas do UserForm irá aparecer a MsgBox informando qual foi a página selecionada/ativada. Então, no lugar da MsgBox coloque o código que você deseja executar, conforme eu entendi do seu pedido acima.

Eu coloquei somente os comandos que correspondem às páginas 1 e 2, complete até a página 10.

Se tiver dificuldade então disponibilize uma amostra do seu arquivo Excel.

Re: Execultar Macro ao entrar na pagina 2 do MultPage

Enviado: 22 Fev 2022 às 17:07
por GRS007
Estou mandando o Arquivo

Explicando melhor, queria que em vez de usar o comando ( UserForm Initialize ) usar um pra cada Page.

Tou querendo que chama a macro so se tal pagina esta aberta.

Pq o Userform Initialize iria buscar todas tabelas do access e abrir tudo junto sem tar usando todos ai vai pesar muito pro pc.

No UserForm Initialize ele ta chamando a tabela do access para dentro do ListView, ai ele vai chamar as 10 de uma vez quando abrir o Programa.


Obrigado

Re: Execultar Macro ao entrar na pagina 2 do MultPage

Enviado: 22 Fev 2022 às 18:06
por Basole
De acordo com o que voce citou no seu primeiro post, que o PC está travando, acredito que o ideal é voce carregar os dados da respectiva pagina, somente quando ela for selecionada.
Conforme o mestre @osvaldomp sugeriu .... chamando macro de acordo com a pagina selecionada, ou seja, por exemplo quando o usuario selecionar a pagina 2 somente os dados do listview da pagina 2 será carregado
Código: Selecionar todos
Private Sub MultiPage1_Change()

 Select Case MultiPage1.Value
  Case 0: ' ..............
  Case 1: Call Carregar_Dados_List_Clientes
  Case 2: Call Cabeçalho_List_Produto
  '...
  '...
 End Select

End Sub