How to make checkbox checked based on cell value in Excel?

You may know how to change a cell value based on a checkbox. But, do you know how to make a checkbox checked automatically based on a cell value in Excel? This article will show you methods to achieve it.

Make checkbox checked based on cell value with formula
Make checkbox checked based on cell value with VBA code


Make checkbox checked based on cell value with formula

Supposing you want the check box 1 to be checked automatically when the value in cell A1 equals to “Test”. Please do as follows.

1. After inserting the check box (Form Control), select it and link it to a specified cell C2 by entering =C2 into the Formula Bar.

For ActiveX Control check box, please right click it and select Properties from the right-clicking menu. And in the Properties dialog box, enter the linked cell into the LinkedCell field, and then close the dialog box. See screenshot:

2. Select the lined cell (C2), then enter formula =IF(A2="Test",TRUE,FALSE) into the Formula Bar, and then press the Enter key.

Note: In the formula, A2 and Test are the cell and the cell value you need to make checkbox auto checked based on.

3. When entering value “Test” into cell A1, the corresponding checkbox will be checked automatically. See screenshot:

Note: This formula is not case sensitive.


Make checkbox checked based on cell value with VBA code

You can run the following VBA code to make checkbox checked based on cell value in Excel.

1. Right click the Sheet Tab with the checkbox checked based on the cell value, then click View Code from the right-clicking menu.

2. In the Microsoft Visual Basic for Applications window, please copy and paste the below VBA code into the Code window.

VBA code: Make checkbox checked based on cell value

Private Sub Worksheet_Change(ByVal Target As Range)
    If Range("A2").Value = "Test" Then
        ActiveSheet.CheckBoxes("Check Box 1").Value = xlOn
    Else
        ActiveSheet.CheckBoxes("Check Box 1").Value = xlOff
    End If
End Sub

Note: In the code, A2 and Test are the cell and the cell value you need to make checkbox auto checked based on. Check Box 1 is the name of the checkbox.

3. Press Alt + Q keys to close the Microsoft Visual Basic for Applications window.

When entering value “Test” into cell A2, the specified check box will be checked automatically.

Note: This code is case sensitive.

Tip: If you want to insert multiple check boxes into a selected range in bulk, you can try the Batch Insert Check Boxes utility of Kutools for Excel, or batch insert multiple Option Buttons with the Batch Insert Option Buttons utility. Besides, you can delete all check boxes at once with the Batch Delete Check Boxes utility as below screenshots shown. You can go to download Kutools for Excel! ( 30-day free trial).


Related articles:


The Best Office Productivity Tools

Kutools for Excel Solves Most of Your Problems, and Increases Your Productivity by 80%

  • Reuse: Quickly insert complex formulas, charts and anything that you have used before; Encrypt Cells with password; Create Mailing List and send emails...
  • Super Formula Bar (easily edit multiple lines of text and formula); Reading Layout (easily read and edit large numbers of cells); Paste to Filtered Range...
  • Merge Cells/Rows/Columns without losing Data; Split Cells Content; Combine Duplicate Rows/Columns... Prevent Duplicate Cells; Compare Ranges...
  • Select Duplicate or Unique Rows; Select Blank Rows (all cells are empty); Super Find and Fuzzy Find in Many Workbooks; Random Select...
  • Exact Copy Multiple Cells without changing formula reference; Auto Create References to Multiple Sheets; Insert Bullets, Check Boxes and more...
  • Extract Text, Add Text, Remove by Position, Remove Space; Create and Print Paging Subtotals; Convert Between Cells Content and Comments...
  • Super Filter (save and apply filter schemes to other sheets); Advanced Sort by month/week/day, frequency and more; Special Filter by bold, italic...
  • Combine Workbooks and WorkSheets; Merge Tables based on key columns; Split Data into Multiple Sheets; Batch Convert xls, xlsx and PDF...
  • More than 300 powerful features. Supports Office/Excel 2007-2019 and 365. Supports all languages. Easy deploying in your enterprise or organization. Full features 30-day free trial. 60-day money back guarantee.
kte tab 201905

Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier

  • Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
  • Open and create multiple documents in new tabs of the same window, rather than in new windows.
  • Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!
officetab bottom
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Paulo · 10 months ago
    Queria saber como fazer isto com mais de um parâmetro de comparação. Por exemplo: quero que automaticamente minha célula A1 retorne o valor TRUE se e somente se outras três células B1, C1 e D1 estiverem todas com o valor TRUE (caso pelo menos uma delas esteja com o valor FALSE, a célula A1 continuará com o valor FALSE). Já tentei usar várias fórmulas usando o comando IF, mas sem êxito. Por favor, você sabe me dizer qual a fórmula certa para conseguir isto? :)
    • To post as a guest, your comment is unpublished.
      Paulo Victor Dantas · 10 months ago
      Descobri! Apenas usar:

      =if(and(B1=true, C1=true, D1=true), true, false)
  • To post as a guest, your comment is unpublished.
    jpitt75 · 1 years ago
    I am trying to use the checkbox to display specific text to another sheet when it is checked or true and remain blank when it is unchecked or false.
    • To post as a guest, your comment is unpublished.
      jpitt75 · 1 years ago
      specifically if it is true I would like it to display 0700-0800 and if it is false display a blank cell.