View Single Post
  #1   Report Post  
Posted to microsoft.public.excel.programming
James James is offline
external usenet poster
 
Posts: 542
Default Set object with a function

Thanks, "MSForms.Textbox" was the key. I didnt try "OLEObject"
I've setup naming like that before (your 2nd example) but it unfortunatly
wouldn't work in this case. Thank you for the resolution!


"Dave Peterson" wrote:

This line:

Dim myTextBox as TextBox
is declaring myTextBox as a textbox from the Drawing toolbar (placed on a sheet,
not used in a userform).

Try:

dim myTextBox as msforms.textbox

Same with the function definition:

Public Function SetTheTextBoxFunc(num as integer) as MSForms.Textbox

=======
But if you've named the textboxes nicely, you could even drop the function and
just use something like:

Option Explicit
Private Sub CommandButton1_Click()
Dim myTextBox As MSForms.TextBox
Dim iCtr As Long
iCtr = 3 'for instance
Set myTextBox = Me.Controls("Textbox" & iCtr)
End Sub


James wrote:

Hello, Can I do something like this.....?
...........
Dim MyTextBox as Textbox
TxtBoxNum = 3
Set MyTextBox = SetTheTextBoxFunc(TxtBoxNum)
...........
Public Function SetTheTextBoxFunc(num as integer) as Textbox
select case num
case 1
SetTheTextBoxFunc = SLNX.Textbox1
case 2
SetTheTextBoxFunc = SLNX.Textbox2
case 3
SetTheTextBoxFunc = SLNX.Textbox3
end select
end function
..............
SLNX is a form with a bunch of textboxes. Thanks for any help. Cant quite
figure this out.


--

Dave Peterson
.