PC Review


Reply
Thread Tools Rate Thread

Can't pass a ListBox as a ListBox - must be a Variant??

 
 
Cheryl & Mike Arsenault
Guest
Posts: n/a
 
      22nd Mar 2008
Please have a look at the 2 subs below

Private Sub POLines_Change()
UpdateTransferButton POLines, AddPSLines
End Sub

Private Sub UpdateTransferButton(ByRef lb As ListBox, ByRef b As
CommandButton)
Dim index As Integer
For index = 0 To lb.ListCount - 1
If lb.Selected(index) Then
b.Enabled = True
Exit Sub
End If
Next
b.Enabled = False
End Sub

From the first subroutine, I'm trying to call the second one, which takes as
parameters a ListBox and a CommandButton. I'm getting a runtime error on the
call form the first subroutine indicating that I have type mismatch. Can
someone tell me why??

When I change the 2 parameters to Variants, everything is OK.

Why can't I pass a ListBox as a ListBox and same with a CommandButton

Thanks
Mike


 
Reply With Quote
 
 
 
 
Per Jessen
Guest
Posts: n/a
 
      22nd Mar 2008
Hi

You have to use the named arguments:

Private Sub POLines_Change()
Call UpdateTransferButton(lb:=POLines, b:=AddPSLines)
End Sub

or

Private Sub POLines_Change()
UpdateTransferButton lb:=POLines, b:=AddPSLines
End Sub

Regards,

Per

"Cheryl & Mike Arsenault" <(E-Mail Removed)> skrev i meddelelsen
newsk5Fj.30883$(E-Mail Removed)...
> Please have a look at the 2 subs below
>
> Private Sub POLines_Change()
> UpdateTransferButton POLines, AddPSLines
> End Sub
>
> Private Sub UpdateTransferButton(ByRef lb As ListBox, ByRef b As
> CommandButton)
> Dim index As Integer
> For index = 0 To lb.ListCount - 1
> If lb.Selected(index) Then
> b.Enabled = True
> Exit Sub
> End If
> Next
> b.Enabled = False
> End Sub
>
> From the first subroutine, I'm trying to call the second one, which takes
> as parameters a ListBox and a CommandButton. I'm getting a runtime error
> on the call form the first subroutine indicating that I have type
> mismatch. Can someone tell me why??
>
> When I change the 2 parameters to Variants, everything is OK.
>
> Why can't I pass a ListBox as a ListBox and same with a CommandButton
>
> Thanks
> Mike
>


 
Reply With Quote
 
Jim Cone
Guest
Posts: n/a
 
      22nd Mar 2008

How are the variables POLines and AddPSLines declared?
The type declarations in the called sub should be the same as the original type declarations.
--
Jim Cone
San Francisco, USA
http://www.realezsites.com/bus/primitivesoftware
(Excel Add-ins / Excel Programming)




"Cheryl & Mike Arsenault"
wrote in message
Please have a look at the 2 subs below

Private Sub POLines_Change()
UpdateTransferButton POLines, AddPSLines
End Sub

Private Sub UpdateTransferButton(ByRef lb As ListBox, ByRef b As
CommandButton)
Dim index As Integer
For index = 0 To lb.ListCount - 1
If lb.Selected(index) Then
b.Enabled = True
Exit Sub
End If
Next
b.Enabled = False
End Sub

From the first subroutine, I'm trying to call the second one, which takes as
parameters a ListBox and a CommandButton. I'm getting a runtime error on the
call form the first subroutine indicating that I have type mismatch. Can
someone tell me why??

When I change the 2 parameters to Variants, everything is OK.
Why can't I pass a ListBox as a ListBox and same with a CommandButton
Thanks
Mike


 
Reply With Quote
 
Cheryl & Mike Arsenault
Guest
Posts: n/a
 
      24th Mar 2008

"Per Jessen" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Hi
>
> You have to use the named arguments:
>
> Private Sub POLines_Change()
> Call UpdateTransferButton(lb:=POLines, b:=AddPSLines)
> End Sub
>
> or
>
> Private Sub POLines_Change()
> UpdateTransferButton lb:=POLines, b:=AddPSLines
> End Sub
>
> Regards,
>
> Per
>
> "Cheryl & Mike Arsenault" <(E-Mail Removed)> skrev i meddelelsen
> newsk5Fj.30883$(E-Mail Removed)...
>> Please have a look at the 2 subs below
>>
>> Private Sub POLines_Change()
>> UpdateTransferButton POLines, AddPSLines
>> End Sub
>>
>> Private Sub UpdateTransferButton(ByRef lb As ListBox, ByRef b As
>> CommandButton)
>> Dim index As Integer
>> For index = 0 To lb.ListCount - 1
>> If lb.Selected(index) Then
>> b.Enabled = True
>> Exit Sub
>> End If
>> Next
>> b.Enabled = False
>> End Sub
>>
>> From the first subroutine, I'm trying to call the second one, which takes
>> as parameters a ListBox and a CommandButton. I'm getting a runtime error
>> on the call form the first subroutine indicating that I have type
>> mismatch. Can someone tell me why??
>>
>> When I change the 2 parameters to Variants, everything is OK.
>>
>> Why can't I pass a ListBox as a ListBox and same with a CommandButton
>>
>> Thanks
>> Mike
>>

>


Thanks for the suggestion, but I tried that with no effect - still get Type
Mismatch!!

Mike


 
Reply With Quote
 
Dick Kusleika
Guest
Posts: n/a
 
      24th Mar 2008
On Sat, 22 Mar 2008 06:38:27 -0400, "Cheryl & Mike Arsenault"
<(E-Mail Removed)> wrote:

>Please have a look at the 2 subs below
>
>Private Sub POLines_Change()
> UpdateTransferButton POLines, AddPSLines
>End Sub
>
>Private Sub UpdateTransferButton(ByRef lb As ListBox, ByRef b As
>CommandButton)
> Dim index As Integer
> For index = 0 To lb.ListCount - 1
> If lb.Selected(index) Then
> b.Enabled = True
> Exit Sub
> End If
> Next
> b.Enabled = False
>End Sub
>
>From the first subroutine, I'm trying to call the second one, which takes as
>parameters a ListBox and a CommandButton. I'm getting a runtime error on the
>call form the first subroutine indicating that I have type mismatch. Can
>someone tell me why??
>
>When I change the 2 parameters to Variants, everything is OK.
>
>Why can't I pass a ListBox as a ListBox and same with a CommandButton


In addition to the other responses, sometimes there's a conflict between
classes with the same names. Try calling out those arguments as

MSForms.ListBox
MSForms.CommandButton

and see if that takes care of it.
--
Dick Kusleika
Microsoft MVP-Excel
http://www.dailydoseofexcel.com
 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
how to pass listbox as parameter in vb.net? xxradiantxx Webmaster / Programming 3 13th Jul 2006 11:49 PM
How to pass listbox to sub =?Utf-8?B?Q2hyaXM=?= Microsoft ASP .NET 3 31st Mar 2005 11:19 PM
How do I pass an array to a listbox? Titus A Ducksass - AKA broken-record Microsoft Excel Programming 4 23rd Mar 2005 07:20 PM
How to pass ListBox into a Sub? RADO Microsoft Excel Programming 2 16th Nov 2003 08:22 PM
listbox.value not equal to listbox.list(listbox.listindex,0) ARB Microsoft Excel Programming 0 22nd Oct 2003 12:46 AM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 05:58 AM.