locked
Terrível CheckBox! RRS feed

  • Pergunta

  • Estou com uma grande dificuldade de trabalhar com checkbox no excel, vai ai umas duvidas, quem poder me ajudar eu ficarei mt grato.

    • Tem como associar somente uma macro para todos os checkbox?
    • Quando eu copio uma linha que tenha um checkbox, ele não é copiado junto com a linha, isso funciona para td os outro controle, como que eu posso fazer isso?
    • Após copiar um checkbox ou criar um pelo vba, como que atribuir uma função a ele?

    vlw...

    terça-feira, 29 de abril de 2008 15:31

Respostas

  • Seguem as respostas:

    1. Clicando com o botão direito e exibindo a opção atribuir macro vc pode atribuir a macro que quiser.

    2. Se vc marcar a linha toda e copiá-la o objeto será copiado junto se for um controle de formulário. Se for um controle ActiveX, vc tem que estar no modo de design para que funcione

    3. Controle de formulário: clique com o botão direito, opção atribuir macro. Controle ActiveX: ativar modo de design >> clicar com o botão direito >> exibir código

    Espero que te ajude.

    [ ]s

     

    terça-feira, 29 de abril de 2008 18:01
  • Adilson Soledade,

    primeiramente obrigado pelas respostas,

    + os passos que vc citou no item 1, não funciona para checkbox só para controles como combo, button...

    pelo q vc falou no 2° item, não tem como copiar os checkbox com a linha por macros(VBA).

     

    Eu consegui resolver isso fazendo o seguinte:

     

    1° eu copiei a linha normalmente, sem o checkbox;

    depois eu inserir um checkbox como no código abaixo:

     

    Code Snippet

    Dim oleObj As OLEObject

     

    Set oleObj = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", Link:=False, _
            DisplayAsIcon:=False, Left:=33.5, Top:=158, Width:=10.5, Height:=10.5)

     

    oleObj.Name = "CheckBox" & Target.Row - 26

     

     

    e na hora de pegar o valor eu nao to mais salvando eu outra celula, nao hora eu uso o esse codigo para pegar o valor:

     

    Code Snippet
    Activesheet.OLEObjects("CheckBox1").Object.Value

     

     

     

    vlw...
    terça-feira, 29 de abril de 2008 19:36

Todas as Respostas

  • Seguem as respostas:

    1. Clicando com o botão direito e exibindo a opção atribuir macro vc pode atribuir a macro que quiser.

    2. Se vc marcar a linha toda e copiá-la o objeto será copiado junto se for um controle de formulário. Se for um controle ActiveX, vc tem que estar no modo de design para que funcione

    3. Controle de formulário: clique com o botão direito, opção atribuir macro. Controle ActiveX: ativar modo de design >> clicar com o botão direito >> exibir código

    Espero que te ajude.

    [ ]s

     

    terça-feira, 29 de abril de 2008 18:01
  • Adilson Soledade,

    primeiramente obrigado pelas respostas,

    + os passos que vc citou no item 1, não funciona para checkbox só para controles como combo, button...

    pelo q vc falou no 2° item, não tem como copiar os checkbox com a linha por macros(VBA).

     

    Eu consegui resolver isso fazendo o seguinte:

     

    1° eu copiei a linha normalmente, sem o checkbox;

    depois eu inserir um checkbox como no código abaixo:

     

    Code Snippet

    Dim oleObj As OLEObject

     

    Set oleObj = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", Link:=False, _
            DisplayAsIcon:=False, Left:=33.5, Top:=158, Width:=10.5, Height:=10.5)

     

    oleObj.Name = "CheckBox" & Target.Row - 26

     

     

    e na hora de pegar o valor eu nao to mais salvando eu outra celula, nao hora eu uso o esse codigo para pegar o valor:

     

    Code Snippet
    Activesheet.OLEObjects("CheckBox1").Object.Value

     

     

     

    vlw...
    terça-feira, 29 de abril de 2008 19:36