locked
Criar label dinamica no form RRS feed

  • Pergunta

  •  

    Bom dia pessoal,

     

    Preciso criar label e optionbutton dinamica num form de acordo com os valores digitados na planilha, exemplo:

     

    celula A1 = processo 1

    celula A2 = processo 2

    celula A3 = processo 3

     

    No form preciso que sejam criadas 3 label's e 3 optionbutto com os valores processo 1, 2 e 3

    alguém poderia me ajudar?

    terça-feira, 13 de janeiro de 2009 13:08

Respostas

  • Não entendi muito bem..

    Mas um exemplo de como criar label e option

    Cria 4 (label) e 4 (option)

    Code Snippet

    Private Sub UserForm_Initialize()
        For X = 0 To 3
            Set NewLabel = Me.Controls.Add("Forms.label.1")
            With NewLabel
                .Name = "Label" & X + 1
                .Caption = "Label " & X + 1
                .Top = 20 + (12 * X)
                .Left = 6
                .Width = 90
                .Height = 12
                .Font.Size = 7
                .Font.Name = "Tahoma"
                .BackColor = &H80FFFF
            End With
        Next
        For X = 0 To 3
            Set NewOption = Me.Controls.Add("Forms.OptionButton.1")
            With NewOption
                .Name = "Option" & X + 1
                .Caption = "Option " & X + 1
                .Top = 20 + (12 * X)
                .Left = 60
                .Width = 90
                .Height = 12
                .Font.Size = 7
                .Font.Name = "Tahoma"
                .BackColor = &H80FFFF
            End With
        Next
    End Sub

     

     

    Testa aí e me fala..

    terça-feira, 13 de janeiro de 2009 16:26
  •  

    Botão para verificar qual option está ativo...

    Code Snippet

    Private Sub CommandButton1_Click()
        Dim cCont As Control
        For Each cCont In Me.Controls
            If TypeName(cCont) = "OptionButton" Then
                If cCont = True Then
                    MsgBox "Nome do option selecionado: " & cCont.Name
                End If
            End If
         Next
    End Sub

     

     

    Qualquer dúvida post denovo..

    Não se esqueça de marcar como respondida..

    Até mais..

    terça-feira, 13 de janeiro de 2009 17:34

Todas as Respostas

  • Não entendi muito bem..

    Mas um exemplo de como criar label e option

    Cria 4 (label) e 4 (option)

    Code Snippet

    Private Sub UserForm_Initialize()
        For X = 0 To 3
            Set NewLabel = Me.Controls.Add("Forms.label.1")
            With NewLabel
                .Name = "Label" & X + 1
                .Caption = "Label " & X + 1
                .Top = 20 + (12 * X)
                .Left = 6
                .Width = 90
                .Height = 12
                .Font.Size = 7
                .Font.Name = "Tahoma"
                .BackColor = &H80FFFF
            End With
        Next
        For X = 0 To 3
            Set NewOption = Me.Controls.Add("Forms.OptionButton.1")
            With NewOption
                .Name = "Option" & X + 1
                .Caption = "Option " & X + 1
                .Top = 20 + (12 * X)
                .Left = 60
                .Width = 90
                .Height = 12
                .Font.Size = 7
                .Font.Name = "Tahoma"
                .BackColor = &H80FFFF
            End With
        Next
    End Sub

     

     

    Testa aí e me fala..

    terça-feira, 13 de janeiro de 2009 16:26
  • funcionou cara, muito obrigado!!

     

    o que eu estava fazendo errado era colocar o atributo name direto na criação do objeto, e ele nao estava funcionando no evento initialize.

     

     

    ok, agora outra dúvida:

     

    ao invez de fazer isso com label eu fiz com optionbutton.

     

    como é dinamico, depende dos valores digitados na planilha, ele cria 2 ou 10 optionbutton.

     

    o que eu quero saber é como eu consigo saber qual é o optionbutton que foi clicado, já que eles nao sao estáticos e inicialmente eu nao sei o nome deles.

     

    to tentando usar o groupname mas nao estou conseguindo!

    terça-feira, 13 de janeiro de 2009 16:42
  •  

    Botão para verificar qual option está ativo...

    Code Snippet

    Private Sub CommandButton1_Click()
        Dim cCont As Control
        For Each cCont In Me.Controls
            If TypeName(cCont) = "OptionButton" Then
                If cCont = True Then
                    MsgBox "Nome do option selecionado: " & cCont.Name
                End If
            End If
         Next
    End Sub

     

     

    Qualquer dúvida post denovo..

    Não se esqueça de marcar como respondida..

    Até mais..

    terça-feira, 13 de janeiro de 2009 17:34
  • funcionou!

    muito obrigado pela ajuda!

    terça-feira, 13 de janeiro de 2009 17:52