Como selecionar botões de opção por valor de célula no Excel?


1

Eu tenho um grupo de botões de rádio com rótulos nas células adjacentes. Como posso organizar o botão de opção com a etiqueta correspondente a um valor de célula de destino para ativar?

Aqui está um exemplo equivalente ao que estou tentando alcançar:

insira a descrição da imagem aqui

Aqui, você pode ver dois grupos de rádio: "comprador" e "destino". Os rótulos estão na coluna A, os grupos de rádio estão na coluna B e os valores de destino estão na coluna C. Os valores na coluna C são os que controlamos e queremos ativar o botão de opção correto procurando o valor do célula de destino na lista de rótulos na coluna A. Ou seja, se C2 mudou para "Interno", queremos que o botão de opção na célula B4 seja ativado. Os botões de opção em B7 e B8 não serão afetados, pois estão em um grupo diferente.


Então, só para ficar claro; quando o usuário clica no LABEL, você quer que o botão RADIO seja ativado.
zackrspv

Não, queremos que o botão de opção seja ativado quando o valor na célula de destino for alterado para corresponder ao rótulo. (não o OP, mas sentou ao lado dele :-))
regularfry

Respostas:


2

Você não precisa realmente ler o valor do rótulo. Você pode atribuir os rótulos aos botões de opção e alterar o valor da opção selecionada dessa maneira.

Você poderia chamar isso no Worksheet_SelectionChange

Sub reflectCell()
 Dim targetedCell As String
 targetedCell = Range("A1").Text

Select Case UCase(targetedCell)
  Case "RED"
    ActiveSheet.OptionButton1.Value = True
  Case "BLUE"
    ActiveSheet.OptionButton2.Value = True
  Case "GREEN"
    ActiveSheet.OptionButton3.Value = True
End Select

End Sub

A menos que você queira dizer que o rótulo é um valor de célula adjacente ao OptionButton A célula de destino é um local de intervalo estático ou o ActiveCell atual?

Se a célula de destino for sempre a mesma localização, você poderá controlar a ortografia de entrada dessa maneira. insira a descrição da imagem aqui

Aqui está outra abordagem mais simples

Uma solução não macro que funciona se você puder usar fórmulas na planilha é mostrada nesta captura de tela

exemplo de botões de opção

Nomeie cada botão de opção da mesma forma que o Rótulo na coluna A Peça que sua célula vinculada seja outra célula (os exemplos ocultos em E são as fórmulas exibidas em F) nessa célula que comparam a entrada fornecida a cada rótulo de célula. Apenas um deve acabar sendo VERDADEIRO (veja exemplos de fórmulas)

Assim, a opção em B2 está vinculada a E2, B3 está vinculada a E3, B7 está vinculada a E7 etc. Se você tem permissão para a coluna extra com fórmulas (e elas podem estar em qualquer lugar) isso é muito mais simples do que usar vba


Desculpe, eu deveria ter sido mais claro. Sim, os rótulos são valores de células. o destino é um local de intervalo estático. Recebemos uma planilha "padrão do setor" projetada para entrada humana nesse formato e há um limite para o quanto podemos alterar. Estamos apenas tentando automatizar o "clique" no botão de opção correto.
user116587

Alguma chance de ver uma pequena foto, até algumas células? Pode haver dezenas de células e apenas um item será selecionado entre eles? Você quer dizer que quando você diz que eles são um grupo de botões de rádio, apenas um pode selecionar no grupo, certo?
datatoo

Atualizei a questão com um link para um exemplo, se isso for mais claro. Em geral, haverá apenas alguns botões de rádio por grupo, mas há muitos grupos.
user116587

Esta é uma forma que muda? Como as entradas são feitas na coluna C? Quantos grupos você tem no total?
datatoo

Ah, então as células ligadas são bidirecionais! Obrigado, é exatamente isso que eu estava procurando.
user116587
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.