Set ActiveX List Box Height


Board Regular
Feb 1, 2005
I believe this has a simple answer but I'm having trouble setting the height of an ActiveX Control List Box. The list box is on an Excel 2013 spreadsheet and I would like to have the list box height be either 0 or 88. This is my code (the list box name is ACEI):

With ActiveSheet.Shapes("ListBoxACEI")
.Visible = True
.Top = Range("B4").Top
.ScaleHeight 0.78, msoFalse, msoScaleFromTopLeft
End With

The first two lines of code (.visible and .top) run properly. The .ScaleHeight line of code is what was recorded when I used the macro recorder to size the list box. The problem is each time the above code is run, the height of the list box gets incrementally larger by inconsistent increments. I tried setting the height using .Height 88 but get an error message "Run-time error '438": Object doesn't support this property or method.' IntegralHeight is set to True (but I have no idea what that means).

Can somebody point out my error. Many thanks in advance.

Some videos you may like

Excel Facts

How to show all formulas in Excel?
Press Ctrl+` to show all formulas. Press it again to toggle back to numbers. The grave accent is often under the tilde on US keyboards.


Board Regular
Feb 1, 2005
INDEED it does help! Many thanks. I was following the macro recorder code as an example and was totally led astray. Thank the Heavens for those like you who are willing to give your time and expertise! You saved the day.

Watch MrExcel Video

Forum statistics

Latest member

This Week's Hot Topics

  • Timer in VBA - Stop, Start, Pause and Reset
    [CODE=vba][/CODE] Option Explicit Dim CmdStop As Boolean Dim Paused As Boolean Dim Start Dim TimerValue As Date Dim pausedTime As Date Sub...
  • how to updates multiple rows in muliselect listbox
    Hello everyone. I need help with below code. code is only chaning 1st row in mulitiselect list box. i know issue with code...
  • Delete Row from Table
    I am trying to delete a row from a table using VBA using a named range to find what I need to delete. My Range is finding the right cell. In the...
  • Assigning to a variable
    I have a for each block where I want to assign the value in column 5 of the found row to the variable Serv. [CODE=vba] For Each ws In...
  • Way to verify information
    Hi All, I don't know what to call this formula, and therefore can't search. I have a spreadsheet with information I want to reference...
  • Active Cell Address – Inactive Sheet
    How to use VBA to get the cell address of the active cell in an inactive worksheet and then place that cell address in a location on the current...