Written by Allen Wyatt (last updated September 18, 2021)
This tip applies to Excel 2007, 2010, 2013, 2016, 2019, and 2021
When Robert double-clicks the right edge of a column header, Excel widens the column to fit the widest content of any cell in that column. Sometimes, though, that is just too wide. So, Robert wonders if there is a similar feature to double-click a cell edge and have the column widen to fit the contents of just that cell, even if there is a cell in the column with wider content.
There is no built-in double-click option to do this, but there is a way. Here's the simple steps:
The result is that the column width is set so that whatever is in the selected cell is entirely visible. If you prefer a keyboard-based approach, you can press the Alt key to trigger the hot keys for the ribbon tools, and then press H, O, I. If you prefer, you can use a legacy shortcut key sequence—again, press Alt to trigger the hot keys, and then press O, C, A. Either approach will work just fine.
If you prefer a macro-based approach, then you can use the following single-line macro:
Sub ColWidthCell() ActiveCell.Columns.AutoFit End Sub
The macro can, of course, be assigned to a shortcut key or to a customization of the ribbon so that it can be easily triggered.
Note:
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (11302) applies to Microsoft Excel 2007, 2010, 2013, 2016, 2019, and 2021.
Dive Deep into Macros! Make Excel do things you thought were impossible, discover techniques you won't find anywhere else, and create powerful automated reports. Bill Jelen and Tracy Syrstad help you instantly visualize information to make it actionable. You’ll find step-by-step instructions, real-world case studies, and 50 workbooks packed with examples and solutions. Check out Microsoft Excel 2019 VBA and Macros today!
Need to hide a given column based on the value in a particular cell? The easiest way to accomplish the task is to use a ...
Discover MoreNeed a quick way to hide and unhide columns in a worksheet? The shortcuts described in this tip can help fill the bill.
Discover MoreWant to automatically hide some columns that don't meet a date criterion that you set? You can't do it automatically, but ...
Discover MoreFREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
2021-09-18 15:27:52
J. Woolley
This Tip's macro works well when ActiveCell is not a merged cell. The following VBA is more general:
Sub SetColumnWidthByCell()
  Dim rMA As Range, rCol As Range
  Dim nC As Long, nW As Double
  Set rMA = ActiveCell.MergeArea
  nC = rMA.Columns.Count
  If nC = 1 Then
    ActiveCell.Columns.AutoFit
  Else
    rMA.UnMerge
    ActiveCell.Columns.AutoFit
    nW = ActiveCell.ColumnWidth / nC
    For Each rCol In rMA.Columns
      rCol.ColumnWidth = nW
    Next rCol
    rMA.Merge
  End If
End Sub
See My Excel Toolbox: https://sites.google.com/view/MyExcelToolbox/
2021-09-18 11:20:51
Another macro approach could be:
Sub SetColWith()
'Shortcut key set : Ctrl+Shft+W
ActiveCell.Columns.ColumnWidth = InputBox("New column width:", "Adjust Column Width")
End Sub
2021-09-18 09:20:06
Tomek
You can also add "AutoFit Column Width" to Quick Access Toolbar. Once you find it on the Home Ribbon, just right click on it and select "Add to Quick access Toolbar"
Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2025 Sharon Parq Associates, Inc.
Comments