none
Programação Visual Basic RRS feed

  • Pergunta

  • Bom dia galera

    Estou com uma duvida numa parte de programaçao

     

    Resumindo estou fazendo uma planilha de cadastro de ensaios

    E tenho um userform que chama o outro

    No userform1 tenho:

    Private wsRegister As Worksheet (planilha relativa)
    Public indexRegister As String (indice relativo por onde atualizo a planilha)
    Set wsRegister = ThisWorkbook.Worksheets("Database") (por exemplo)

    E assim trabalho com os arquivos relativo a planilha Database sem problema

    Porém ao pressionar um botao vou para uma outra userform, a userform2

    E eu preciso importar nesta nova userform o valor do indexRegister da userform1

    Isto quer dizer trocar de userform porém continua usando exatamente a mesma variavel que esta presente na userform1

    Exemplo, na userform2:

    Private Sub LoadRegisterEnsaios()
        With wsRegister
           
                Me.cboxexemplo.Text = .Cells(indexRegister, colexemplo).Value
    
        End with
    End Sub

    Porém isto nao da certo

    Sei que é simples porem nao consigo avançar mais

    Obrigado,

    Gilberto

    quarta-feira, 30 de julho de 2014 20:29

Respostas

  • Gilberto,

    crie um módulo e coloque sua variável publica nele que dá certo.

    • Marcado como Resposta GilbertoCK quinta-feira, 31 de julho de 2014 20:40
    quarta-feira, 30 de julho de 2014 21:11
  • Gilberto,

    A atribuição desse valor você pode fazer em qualquer momento, dento de um procedimento ou evento.

    Você precisa identificar o momento mais "oportuno" para isso.

    Como exemplo você pode usar o evento Workbook_open para atribuir o valor inicial dessa variável.

    E, dependendo da tua necessidade poderá alterar esse valor dentro dos eventos Initialize ou Terminate de cada userform, ou dentro de um método criado por você, isso vai variar muito de necessidade para necessidade.

    sds,

    Consegui Natan

    Obrigado,

    Na verdade o que eu fiz foi o que voce disse de publicar em um modulo

    E usei ele como base

    Abraço!

    • Marcado como Resposta GilbertoCK quinta-feira, 31 de julho de 2014 20:40
    quinta-feira, 31 de julho de 2014 20:40

Todas as Respostas

  • Gilberto,

    crie um módulo e coloque sua variável publica nele que dá certo.

    • Marcado como Resposta GilbertoCK quinta-feira, 31 de julho de 2014 20:40
    quarta-feira, 30 de julho de 2014 21:11
  • Gilberto,

    crie um módulo e coloque sua variável publica nele que dá certo.


    Mas como que eu importo o valor?

    Por exemplo vou estou no modulo e vou colocar apenas

    Public variavel as String

    variavel = indexRegister ?

    Como ao final de usar a userform1 vou precisar sempre exportar este valor para a variavel

     Ou ao final de cada processo na userform1 eu poderia fazer isto?

    quinta-feira, 31 de julho de 2014 11:56
  • Gilberto,

    A atribuição desse valor você pode fazer em qualquer momento, dento de um procedimento ou evento.

    Você precisa identificar o momento mais "oportuno" para isso.

    Como exemplo você pode usar o evento Workbook_open para atribuir o valor inicial dessa variável.

    E, dependendo da tua necessidade poderá alterar esse valor dentro dos eventos Initialize ou Terminate de cada userform, ou dentro de um método criado por você, isso vai variar muito de necessidade para necessidade.

    sds,

    quinta-feira, 31 de julho de 2014 13:31
  • Gilberto,

    A atribuição desse valor você pode fazer em qualquer momento, dento de um procedimento ou evento.

    Você precisa identificar o momento mais "oportuno" para isso.

    Como exemplo você pode usar o evento Workbook_open para atribuir o valor inicial dessa variável.

    E, dependendo da tua necessidade poderá alterar esse valor dentro dos eventos Initialize ou Terminate de cada userform, ou dentro de um método criado por você, isso vai variar muito de necessidade para necessidade.

    sds,

    Consegui Natan

    Obrigado,

    Na verdade o que eu fiz foi o que voce disse de publicar em um modulo

    E usei ele como base

    Abraço!

    • Marcado como Resposta GilbertoCK quinta-feira, 31 de julho de 2014 20:40
    quinta-feira, 31 de julho de 2014 20:40