Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Text Box Question
I have several text boxes on a worksheet that I'd like to loop through
and collect the input. my_info=activesheet.textbox1 collects the information in textbox1. The following loop successfully collects the data from all 6 text boxes. n = 0 ' array is option base 0 For x = 1 To 6 my_info = ActiveSheet.OLEObjects("TextBox" & x).Object ReDim Preserve retire_array(n) info_array(n) = yy n = n + 1 Next My question is, is there a more concise construction then "my_info = ActiveSheet.OLEObjects("TextBox" & x).Object" that I could use? I've tried things like my_info = activesheet.textbox(x) my_info = activesheet.textboxes(x).text my_info = activesheet.textboxes(x) my_info = activesheet.textboxes(x).text but none of these work. Is there some short construct other than the one above using the Objects.object approach that will work?..TIA, Ron |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Text Box Question
You can also reference ActiveX objects as a Shape object, then via
sh.DrawingObject, but to read the text property you will still have to go via the Object property of the OLEObject. In passing, if you know (for certain as it seems) why the Redim Preserve. Here's a couple of other ideas Sub Test() Dim arrTB() As Object Dim colTB As Collection ReDim arrTB(1 To 3) Set colTB = New Collection With ActiveSheet.OLEObjects For i = 1 To 3 Set arrTB(i) = .Item("Textbox" & i).Object colTB.Add .Item("Textbox" & i).Object, "Textbox" & i Next End With MsgBox arrTB(1).Text MsgBox colTB(2).Text MsgBox colTB("Textbox3").Text End Sub Regards, Peter T "ron" wrote in message ... I have several text boxes on a worksheet that I'd like to loop through and collect the input. my_info=activesheet.textbox1 collects the information in textbox1. The following loop successfully collects the data from all 6 text boxes. n = 0 ' array is option base 0 For x = 1 To 6 my_info = ActiveSheet.OLEObjects("TextBox" & x).Object ReDim Preserve retire_array(n) info_array(n) = yy n = n + 1 Next My question is, is there a more concise construction then "my_info = ActiveSheet.OLEObjects("TextBox" & x).Object" that I could use? I've tried things like my_info = activesheet.textbox(x) my_info = activesheet.textboxes(x).text my_info = activesheet.textboxes(x) my_info = activesheet.textboxes(x).text but none of these work. Is there some short construct other than the one above using the Objects.object approach that will work?..TIA, Ron |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
text format question | Excel Discussion (Misc queries) | |||
Text to Columns Question | Excel Worksheet Functions | |||
Text box question | Excel Discussion (Misc queries) | |||
Text box question | Excel Discussion (Misc queries) | |||
Text Box Question | Excel Programming |