![]() |
Arrays
I cannot get an array to populate. There are a number of txtboxes on a form
filled with data. Each time the txtboxes are filled a cmdbutton is clicked and the results are saved to an array, the txtboxes are cleared ready for new data entry. It works first time round but on the second round of txtbox renewal it fails with Subscript out of Range. Elsewhere in my code this structure works but there is only 1 dimension. This is the code I am using: Public enterArray() as Variant In the initialise event: enterCount=1 '''for reasons elsewhere in code In the cmdbutton click event: Sub Test() ReDim Preserve enterArray(1 To enterCount, 0 to 4) ''''Fails here enterArray(enterCount, 0) = txtName.Text enterArray(enterCount, 1) = txtNarrative.Text enterArray(enterCount, 2) = txtDate.Text enterArray(enterCount, 3) = txtInits.Text enterCount = enterCount + 1 End Sub Could someone please show me where I have gone wrong. Thanks Geoff |
Arrays
When you ReDim an array, you can only change the last dimension.
Maybe you can swap them: ReDim Preserve enterArray(0 to 4, 1 To enterCount) Geoff wrote: I cannot get an array to populate. There are a number of txtboxes on a form filled with data. Each time the txtboxes are filled a cmdbutton is clicked and the results are saved to an array, the txtboxes are cleared ready for new data entry. It works first time round but on the second round of txtbox renewal it fails with Subscript out of Range. Elsewhere in my code this structure works but there is only 1 dimension. This is the code I am using: Public enterArray() as Variant In the initialise event: enterCount=1 '''for reasons elsewhere in code In the cmdbutton click event: Sub Test() ReDim Preserve enterArray(1 To enterCount, 0 to 4) ''''Fails here enterArray(enterCount, 0) = txtName.Text enterArray(enterCount, 1) = txtNarrative.Text enterArray(enterCount, 2) = txtDate.Text enterArray(enterCount, 3) = txtInits.Text enterCount = enterCount + 1 End Sub Could someone please show me where I have gone wrong. Thanks Geoff -- Dave Peterson |
Arrays
That's got me past that hurdle.
Now i just have to figure how to read them back. Thank you. I had tried every variation. Geoff "Dave Peterson" wrote: When you ReDim an array, you can only change the last dimension. Maybe you can swap them: ReDim Preserve enterArray(0 to 4, 1 To enterCount) Geoff wrote: I cannot get an array to populate. There are a number of txtboxes on a form filled with data. Each time the txtboxes are filled a cmdbutton is clicked and the results are saved to an array, the txtboxes are cleared ready for new data entry. It works first time round but on the second round of txtbox renewal it fails with Subscript out of Range. Elsewhere in my code this structure works but there is only 1 dimension. This is the code I am using: Public enterArray() as Variant In the initialise event: enterCount=1 '''for reasons elsewhere in code In the cmdbutton click event: Sub Test() ReDim Preserve enterArray(1 To enterCount, 0 to 4) ''''Fails here enterArray(enterCount, 0) = txtName.Text enterArray(enterCount, 1) = txtNarrative.Text enterArray(enterCount, 2) = txtDate.Text enterArray(enterCount, 3) = txtInits.Text enterCount = enterCount + 1 End Sub Could someone please show me where I have gone wrong. Thanks Geoff -- Dave Peterson |
Arrays
.......which I have just worked out. That was the easy after the advice!
<vbg Many thanks. Geoff "Geoff" wrote: That's got me past that hurdle. Now i just have to figure how to read them back. Thank you. I had tried every variation. Geoff "Dave Peterson" wrote: When you ReDim an array, you can only change the last dimension. Maybe you can swap them: ReDim Preserve enterArray(0 to 4, 1 To enterCount) Geoff wrote: I cannot get an array to populate. There are a number of txtboxes on a form filled with data. Each time the txtboxes are filled a cmdbutton is clicked and the results are saved to an array, the txtboxes are cleared ready for new data entry. It works first time round but on the second round of txtbox renewal it fails with Subscript out of Range. Elsewhere in my code this structure works but there is only 1 dimension. This is the code I am using: Public enterArray() as Variant In the initialise event: enterCount=1 '''for reasons elsewhere in code In the cmdbutton click event: Sub Test() ReDim Preserve enterArray(1 To enterCount, 0 to 4) ''''Fails here enterArray(enterCount, 0) = txtName.Text enterArray(enterCount, 1) = txtNarrative.Text enterArray(enterCount, 2) = txtDate.Text enterArray(enterCount, 3) = txtInits.Text enterCount = enterCount + 1 End Sub Could someone please show me where I have gone wrong. Thanks Geoff -- Dave Peterson |
All times are GMT +1. The time now is 07:33 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com