- Checkboxes add great interactivity to Excel, but linking more than a few to multiple cells can get tedious.
- To automate the task, you can use VBA.
- VBA can be used to bulk link or bulk add checkboxes.
Checkboxes are an excellent interactive tool in Microsoft Excel and make things a lot more intuitive. You might be used to the idea of a single checkbox linking to a single cell, but what if we told you there was a way (a few, actually) to make the whole process a lot faster?
In this article, we’ll be showing you how to link checkboxes to multiple cells in Excel easily.
How to Link Checkboxes to Multiple Cells in Excel
The ability to link checkboxes in more than one cell in Excel is very useful for calculations, but if you’re using many, things can get tedious quickly. Thankfully, Excel is no stranger to automating tedious tasks, and we’ve assembled a few methods below to speed things up.
Manual Linking by Form Controls
Let’s start things simply. Say you just have a few checkboxes and want to link them to cells. In that case, it’s best to do so manually. Here’s how:
Step 1. Click on the “Developer” tab in Excel and click the “Insert” button. If using Microsoft 365, you can insert checkboxes directly from the “Insert” tab.

Step 2. Choose “Checkbox” from the dropdown list.
Step 3. To link the box to a cell, (Ctrl + Click) it.

Step 4. Once done, type “=” into the Formula box and then click on the cell to link. Press “Enter” once done.

Step 5. Your cell should now reflect the True/False value of the check box.
Bulk Link Checkboxes
For the rest of these techniques, you’ll have to rely on the coding aspect of Excel, Visual Basic for Applications (VBA). If you have a long list of checkboxes, here’s how to link them to multiple adjoining cells automatically:
Step 1. Open the VBA Editor (Alt + F11) and select your sheet or workbook in the side panel.

Step 2. Click “Insert” in the top menu, and then “Module.”
Step 3. Paste the following macro into the new module:
Sub LinkCheckBoxes_ToOffset()
Dim chk As CheckBox
Dim lCol As Long
lCol = 1
For Each chk In ActiveSheet.CheckBoxes
chk.LinkedCell = chk.TopLeftCell.Offset(0, lCol).Address
Next chk
End Sub
Note that ICol’s number can be adjusted, 0 being the cell under the checkbox, and 2 being two columns over.
Step 4. Save the module and workbook, and click the cell with the checkboxes.
Step 5. Press (Alt + F8) to run the module. Click “Run” to link every checkbox to the cell immediately to its right.

Step 6. The process should then link all checkboxes with a corresponding column of cells.
Bulk Create Checkboxes
Say you haven’t created the checkboxes yet, let alone linking cells. You can create another module to automate the process:
Step 1. Open VBA and add a new module the same way as above.
Step 2. Enter the following macro
Sub BulkAddCheckboxes_LinkByRow()
Dim i As Long
For i = 2 To 300
With ActiveSheet.CheckBoxes.Add( _
Cells(i, “A”).Left, _
Cells(i, “A”).Top, _
72, 17.25)
.Value = xlOff
.LinkedCell = “B” & i
.Display3DShading = False
End With
Next i
End Sub
Step 3. This will create 300 rows of checkboxes and linked cells. You can change the number as you want. You can also change columns from A and B to whatever you choose by adjusting the macro script.