Passing Userform Listbox to sub causes type-mismatch error

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I have a simple sub I created to verify this problem. When I send a Listbox
from a userform as such: LBClear ListPuppyMo1, I get a type-mismatch error.
Sub follows:
Sub LBClear(lb As ListBox)
lb.Clear
End Sub
When I debug the program and enter typename(listpuppymo1) it states that it
is a listbox. It may be that they are 2 different types of listboxes, but if
so, I cannot figure out how to specify that I want the lb parameter to be a
userform listbox.
 
Sub LBClear(lb As MSForms.ListBox)
lb.Clear
End Sub

Excel also has a listbox object which takes precedence - so you need to
qualify
 
Hi,

Use Sub LBClear(lb As MSForms.ListBox) instead.

There are several types of listboxes, the one on the Forms toolbars that is
intrinsic (i believe) to excel, and the one from the Control Toolbox toolbar
from the MSForms library. So, in the parameter list of the Sub, without
telling from which library the variable is from, vba assumes the lisbox
intrinsic to excel... the wrong one in your case.
 
Back
Top