none
Userform - Manipular objeto por variavel string RRS feed

  • Pergunta

  • Bom dia galera, tudo bem?

    Estou com uma ideia para fazer o seguinte:

    Tenho uma frame e dentro dela, tem outras frames com botão tipo radio "Conforme" e "Não Conforme"

    Por padrão, o verdadeiro fica no "Conforme". Quando o usuário clicar em "Não Conforme", eu queria fazer tipo um loop, para passar pelas frames de baixo, almentando seu top, porque quando se clica no "Não Conforme", abre eu almento a altura dele para exibir alguns checkbox.

    Se alguem puder me ajudar agradeço imensamente,

    Segue o código que utilizo para o userform até agora, qualquer sugestão é super bem-vinda.

    Sub we()
    Dim i As Integer
    Dim frm As String
    For i = 1 To 25
    frm = "Frame" & i
      frm.Visible = False
    Next i
    End Sub
    Private Sub OptionButton1_Click()
      If Frame2.Height <> 24 Then
        Frame2.Height = 24
        Frame3.Top = Frame3.Top - 18
        CheckBox1.Value = False
        CheckBox2.Value = False
        CheckBox3.Value = False
        CheckBox4.Value = False
      End If
    End Sub
    Private Sub OptionButton2_Click()
      If Frame2.Height = 24 Then
        Frame2.Height = Frame2.Height + 18
        Frame3.Top = Frame3.Top + 18
      End If
    End Sub
    Private Sub OptionButton3_Click()
      If Frame3.Height <> 24 Then
        Frame3.Height = 24
        CheckBox5.Value = False
        CheckBox6.Value = False
        CheckBox7.Value = False
        CheckBox8.Value = False
      End If
    End Sub
    Private Sub OptionButton4_Click()
      If Frame3.Height = 24 Then
        Frame3.Height = Frame2.Height + 18
      End If
    End Sub
    Private Sub UserForm_Activate()
      With Me.Frame1
        .ScrollBars = fmScrollBarsVertical
        .ScrollHeight = .InsideHeight * 2 - 18
        .ScrollWidth = .InsideWidth * 9
      End With
    End Sub
    Private Sub UserForm_Click()
      Call we
    End Sub
    

    a função we, eu pensei que atenderia minha necessidade, mas não o fez.

     

    Abç's!

     

    sexta-feira, 10 de junho de 2011 13:11

Respostas

  • Olá,

    não entendi a dúvida. A julgar pelo título do tópico, talvez você queira definir controles usando seu nome (como string). Se for isto, você pode fazer assim:

    Me.Controls("Nome do seu controle como string") 

     

     


    Luiz Cláudio Cosenza Vieira da Rocha - http://msmvps.com/blogs/officedev - IT Lab www.itlab.com.br - Access FAQ: www.accessfaq.com.br
    domingo, 12 de junho de 2011 20:43
    Moderador