How to clear contents of combo box with VBA code in Excel?

Normally, you can clear contents of a combo box by clearing the Input Range list data. But how about clearing contents of all combo boxes in an Excel worksheet? This article prepares two VBA codes to help you not only clear contents of a combo box but also clear contents of all combo boxes at the same time in an Excel worksheet.

Sub ClearAComboBox()
ActiveSheet.Shapes.Range(Array("Drop Down 2")).Select
With Selection
.ListFillRange = ""
End With
End Sub

Note: In the code, “Drop Down 2” is the name of the combo box you will clear contents from. Please change it to your own.

VBA 2: Clear contents of all combo boxes in active worksheet

Sub ClearComboBox()
Dim xOle As OLEObject
Dim xDrop As DropDown
Application.ScreenUpdating = False
For Each xOle In ActiveSheet.OLEObjects
If TypeName(xOle.Object) = "ComboBox" Then
xOle.ListFillRange = ""
End If
Next
For Each xDrop In ActiveSheet.DropDowns
xDrop.ListFillRange = ""
Next
Application.ScreenUpdating = True
End Sub

3. Press the F5 key or click the Run button to run the code.

Then you can see contents are cleared in the specified combo box or all combo boxes in the active worksheet as below screenshot shown:

Note: the VBA codes can be applied to both Combo Box (Form Control) and Combo Box (ActiveX Control).