Note: The other languages of the website are Google-translated. Back to English
Log in  \/ 
Register  \/ 


How to auto-center checkbox in cell in Excel?

While inserting check boxes in cells in Excel, you might notice that it is hard to arrange all checkboxes orderly as the left screenshot shown. Actually, you can move all check boxes to cell center to keep them in order neatly. Method in this article can help you.

Auto-center checkbox in cell with VBA code

Auto-center checkbox in cell with VBA code

To automatically center all checkboxes in cells in a current worksheet, please do as follows.

1. In the worksheet, you need to auto-center all checkboxes, press the Alt + F11 keys to open the Microsoft Visual Basic for Applications window.

2. In the Microsoft Visual Basic for Applications window, please click Insert > Module. Then copy and paste VBA code into the code window.

VBA code: Automatically center all checkboxes in cells

Sub CenterCheckbox ()
    Dim xRg As Range
    Dim chkBox As OLEObject
    Dim chkFBox As CheckBox
    On Error Resume Next
    Application.ScreenUpdating = False
    For Each chkBox In ActiveSheet.OLEObjects
        If TypeName(chkBox.Object) = "CheckBox" Then
            Set xRg = chkBox.TopLeftCell
            chkBox.Width = xRg.Width * 2 / 3
            chkBox.Height = xRg.Height
            chkBox.Left = xRg.Left + (xRg.Width - chkBox.Width) / 2
            chkBox.Top = xRg.Top + (xRg.Height - chkBox.Height) / 2
        End If
    For Each chkFBox In ActiveSheet.CheckBoxes
        Set xRg = chkFBox.TopLeftCell
        chkFBox.Width = xRg.Width * 2 / 3
        chkFBox.Height = xRg.Height
        chkFBox.Left = xRg.Left + (xRg.Width - chkFBox.Width) / 2
        chkFBox.Top = xRg.Top + (xRg.Height - chkFBox.Height) / 2
    Application.ScreenUpdating = True
End Sub

3. Press the F5 key. Then all checkboxes are moved into the center of the cells immediately as below screenshot shown.

Note: This VBA code can be applied to both CheckBox (ActiveX Control) and CheckBox (Form Control).

Tip: If you want to insert multiple check boxes into a selected range in bulk, you can try the Batch Insert Check Boxes utility pf 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 free download the software with no limitation in 30 days.

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
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.
    quadma · 1 years ago
    The VBA does not work at all for me. When I press F5, it appears that the module runs, but the checkboxes did not move.
    • To post as a guest, your comment is unpublished.
      quadma · 1 years ago
      After some more experimenting, I figured out that the VBA does work for manually inserted checkboxes, but if I use Kutools batch insert, it does not. How do I center all the checkboxes inserted with Kutools?
      • To post as a guest, your comment is unpublished.
        crystal · 1 years ago
        Hi quadma,
        The code also works for the checkboxes inserted by Kutools. Which Excel version are you using?
        • To post as a guest, your comment is unpublished.
          quadma · 1 years ago
          I'm using office 360. I think the issue that I'm having is that when I use the Kutools batch insert, the size of the the checkbox object is as wide as the column that it's inserted into (i.e. the checkbox object width is greater than it's height), with the visible checkbox itself on being left justified within the object. If I select all the checkbox objects and then resize them so that the height and length are equal, and then run the VBA, it does then center the checkboxes within the column.

          This seems like an unnecessary step, given that checkboxes are square, why is Kultools not making the checkbox objects square?
          • To post as a guest, your comment is unpublished.
            crystal · 1 years ago
            Hi quadma,
            The check boxes inserted by Kutools are the same as the Check Box (Form Control) which inserted by Excel.
            I don't really understand you said "making the checkbox object square". Normally a check box include the box field and the value field. Kutools keeps the check boxes' value empty if the selected cells are blank. And if there are values in selected cells, the cell value will be taken as the check box value.
            • To post as a guest, your comment is unpublished.
              quadma · 1 years ago
              I've uploaded a picture to show what I mean. Hopefully that helps.
              • To post as a guest, your comment is unpublished.
                crystal · 1 years ago
                Hi quadma, I got your point. We will think about it and thank you for your patience.
  • To post as a guest, your comment is unpublished. · 1 years ago
    This worked great for me except it doesn't align it with the text in the next cell which is bottom aligned. Is there a way to align the checkboxes for bottom aligned in order to get them to align with the text in the next cell? Thanks!
  • To post as a guest, your comment is unpublished.
    DG · 3 years ago
    You VDA script is partly working. Because when i applied it, linked cell next to Checkbox get changed and got linked with a cell under it.