não sei se alguem vai ser capaz de responder
eu quero usar caixas de seleção no excel sem usar celula de referencia com a macro apenas verificando o valor da caixa
mas eu não consigo ter acesso as propriedades da caixa diretamente
provavelmente o excel cria um sub modulo para conter essas caixas então só se tem acesso selecionando diretamente
fazendo seleção do objeto se tem acesso se está ativo ou não
Set a = Selection
ActiveSheet.Shapes.Range(Array(Application.Caller)).Select
With Selection
If .Value = xlOn Then
Range("DiasMesFiltro").Value2 = True
Else
Range("DiasMesFiltro").Value2 = False
End If
End With
a.Selectt
já assim tentando acessar diretamente dá erro
With ActiveSheet.Shapes.Range(Array(Application.Caller))
If .Value = xlOn Then
Range("DiasMesFiltro").Value2 = True
Else
Range("DiasMesFiltro").Value2 = False
End If
End With
tentei de varias maneiras mas não achei um jeito de acessar diretamente o objeto
talvez descobrindo como o excel cria e armazena esses objetos já que nem são naturais dele
o codigo que funciona ativando uma mensagem com qualquer objeto que chame a macro "caixa de seleção"
sub mensagem()
ActiveSheet.Shapes.Range(Array(Application.Caller)).Select
With Selection
If .Value = xlOn Then
Msgbox "ativado"
Else
Msgbox "desativado"
End If
End With
end sub
Postado : 15/07/2016 3:25 pm