Vous êtes sur la page 1sur 6

Como criar automaticamente caixas

vinculadas às células abaixo no Excel


Faça uma pergunta
USFRBR
Abril 2018

Nesta dica, você verá como criar, no Excel, caixas de seleção automaticamente vinculadas
a células específicas. Na verdade, sem a VBA (linguagem de programação no Excel) não
é possível criar várias caixas a serem assinaladas ao mesmo tempo. Você pode fazer
vários Copiar / Colar, mas se quiser vincular sua caixa a uma célula, deverá fazê-lo
manualmente. Para cada uma de suas cópias, você deverá selecionar a célula a ser
vinculada. Esta pode ser uma tarefa enfadonha, dependendo do número de caixas de
seleção.

 Tipos de caixa de seleção no Excel


 Não coloque muitos itens em uma planilha do Excel
 O que é uma caixa de seleção
 Solução 1 - com inicialização manual
o O código
o Como usar este código
 Solução 2 - com inicialização automática
o O código
o Como utilizar esse código
 Como usar o código em uma planilha protegida
 Veja também: Caixa de seleção excel

Tipos de caixa de seleção no Excel


Existem dois tipos de caixas de seleção no Excel, as caixas do tipo formulário e os
controles ActiveX. Nesta dica, vamos utilizar as caixas de seleção do tipo formulário.

Não coloque muitos itens em uma planilha do Excel


Mesmo sendo uma das possibilidades do Excel, cuidado com planilhas muito cheias. O
Excel nem sempre lida bem com isso e, em geral, acabamos com uma exibição mal feita
ou, no mínimo, diferente do esperado, principalmente se a sua pasta de trabalho for
realizada com várias versões do Excel. Assim sendo, seria melhor procurar outra solução
para evitar as instabilidades.

O que é uma caixa de seleção


Não vamos reescrever aqui o que o site da Microsoft já fez detalhadamente aqui, mas
explicar a possibilidade de vincular uma caixa de seleção a uma célula. Para as
propriedades de nossas caixas de seleção (Checkboxes), existem duas células
importantes:

Célula de posição: célula acima da qual vamos desenhar a nossa caixa de seleção;
Célula vinculada: célula na qual vamos enviar o resultado, o valor da nossa caixa de
seleção.

Observação: nesta dica, a célula vinculada será a célula de posição.

O fato de marcar (ou desmarcar) faz com que nossa caixa de seleção envie as
menções Verdadeiroou Falso para a célula vinculada. Infelizmente, o Excel não prevê o
caso de querermos criar várias caixas de seleção com diversas células vinculadas (uma
para cada caixa de seleção). Veja duas soluções diferentes passando pelo código VBA
(Visual Basic for Applications).

Solução 1 - com inicialização manual


Quando acionado, este código VBA simples vai gerar a adição de caixas de seleção
vinculadas às células situadas abaixo, células essas que você selecionou anteriormente.

O código
Para instalá-lo a partir de sua pasta de trabalho, pressione as
teclas Alt + F11 > Inserir/Módulo. Na janela de código deste módulo, copie e cole o
seguinte código:

Option Explicit

Sub Inserer_Caixas_de_Seleção_Vinculadas()
Dim rngCel As Range
Dim ChkBx As CheckBox

For Each rngCel In Selection


With rngCel.MergeArea.Cells
If .Resize(1, 1).Address = rngCel.Address Then
'Para não exibir o valor da célula vinculada, remova o apóstrofe no início da
linha seguinte:
'.NumberFormat = ";;;"
Set ChkBx = ActiveSheet.CheckBoxes.Add(.Left, .Top, .Width, .Height)
With ChkBx
'valor padrão:
.Value = xlOff 'pode ser Verdadeiro ou Falso
'célula vinculada
.LinkedCell = rngCel.MergeArea.Cells.Address
'Texto de substituição
'.Characters.Text = "TITI"
'texto
'.Text = "Toto" ' ou : .Caption = "Toto"
'bordure :
With .Border
'Estilo de linha
'.LineStyle = xlLineStyleNone 'ou xlContinuous 'ou xlDashDot ou
xlDashDotDot ou xlDot
'cor
'.ColorIndex = 3 '3 = vermelho
'espessura da linha
'.Weight = 4
End With
'propriedades também acessíveis .Locked, .Name, .Enabled etc...
End With
End If
End With
Next rngCel
End Sub

Observação: as linhas verdes são os comentários. Você verá neles algumas das
propriedades das caixas de seleção que você poderá adicionar. Para fazê-lo, basta
remover o apóstrofe no início da linha do código em questão.

Como usar este código


A partir de uma das planilhas da sua pasta de trabalho, selecione o intervalo de células
onde você quer inserir as caixas de seleção e pressione as teclas Alt + F8. Em seguida,
selecione Inserir_Caixas_de_Seleção_Vinculadas e clique em Executar. Pronto, suas
caixas de seleção foram inseridas nos lugares desejados e vinculadas às células nas quais
foram colocadas.

Solução 2 - com inicialização automática


Nesta solução vamos trabalhar com um dos nossos eventos provocadores da nossa
planilha Excel, ou seja, o evento Worksheet_SelectionChange. Esse evento executará,
automaticamente, o código toda vez que você selecionar uma célula diferente, na planilha
em questão.

Toda vez que você mudar a seleção, o código proposto vai percorrer todas as células de
um determinado intervalo (ou da planilha inteira, se você quiser) e, se esta célula estiver
com a fonte Wingdings, ele irá inserir um falsa caixa de seleção. Nós usamos aqui os
caracteres þ e o que, nesta fonte, nos retorna os símbolos correspondentes a uma caixa
de seleção marcada ou desmarcada.

O código
Para inserir esse código, basta abrir a planilha em questão, clicar direito na aba desta
planilha em Visualizar o código e Copiar / Colar este código:

Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)


'Restrição do intervalo. Para uma planilha inteira colocar um apóstrofe no início
da linha seguinte
If Intersect(Union([A2:A10], [D2:D10]), Target) Is Nothing Then Exit Sub
'intervalo A2:A10;D2:D10
If Target.Count = 1 Or Target.MergeCells Then
If Target.Font.Name = "Wingdings" Then
With Target 'célula "vinculada"
.Value = Abs(.Range("A1").Value - 1)
.NumberFormat = """þ"";General;""o"";@"
Application.EnableEvents = False
.Range("A1").Offset(, 1).Select
Application.EnableEvents = True
End With
End If
End If
End Sub

Como utilizar esse código


Selecione as células em questão e aplique a fonte Wingdings nelas. Em seguida, clique
em qualquer lugar da planilha e em cada uma das células escolhidas anteriormente.

Observação: para obter o número de caixas marcadas em outra célula, você deverá usar
a fórmula
=NB.SE (C3: C14, 1)

. A função
=SOMA

não terá nenhuma utilidade neste caso.

Como usar o código em uma planilha protegida


Se a planilha estiver protegida, você deverá desprotegê-la com o código. Na verdade, em
caso de proteção da planilha, uma mensagem de alerta aparece, a marca de seleção é
alternada, mas o valor vinculado não. Para desproteger e proteger novamente uma
planilha, o código VBA é:

ActiveSheet.Protect "admin" 'admin = sua senha

AQUI O SEU CÓDIGO

ActiveSheet.Unprotect "admin"

Foto: © Microsoft.

Veja também
 Caixa de seleção excel
 Vincular textbox a célula
 Codigo vba para caixa de seleção
 VBA Excel - Combobox em cascata em um UserForm » Dicas - Visual Basic
 Como converter letras para maiúsculas no Excel » Dicas - Excel
 Excel 2010 - Seleção de células » Dicas - Excel
 Excel 2010 - Planilha: A seleção de células » Dicas - Excel
 Planilha do Excel » Fórum - Microsoft Office

Recomendado para você



iPhone vendido por R$ 280 Público brasileiro descobre como obter pechinchas…Rincón Red


15 “bicos” pra você fazer em casa em 2018Liberdade 360


Como Pagar 50% Menos Na Sua Conta de LuzStunningGadgets.com


Composto faz mulher secar 32kg em poucas semanasGuia do Corpo Perfeito


Especialista revela como estudar e memorizar tudoGuia do Estudo


Milionários estão desesperados para tirar este vídeo do ar porque muita…Negócio em 21 dias

Recomendado por
Artigo original publicado por deri58. Tradução feita por pintuda. Última modificação: 9 de novembro de 2017 às
13:20 por Pedro.CCM.
Este documento, intitulado 'Como criar automaticamente caixas vinculadas às células abaixo no Excel', está
disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com
base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (https://br.ccm.net/) ao utilizar
este artigo.
ANTERIOR
VBA Excel - códigos cores longos

PRÓXIMO
VBA InputBox e Application.InputBox do Excel

Recomendado para você


Dentes brancos? Novo clareador choca o BrasilBem Estar


Descoberta faz atividade do couro cabeludo voltar ao normal em 90 diasHairCaps - Clube Alfa

Personal ganha prêmio depois de inventar treino de 12 min que seca barrigaEmagrecer em 12
Minutos
Recomendado por
 Cadastre-se

 Equipe
 Termos de uso

 Contato

 Regulamento
saude.ccm.

Vous aimerez peut-être aussi