Defining the length of an array variably

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

Guest

Is it possible to define the length of an array using a varaible. I have
tried:

Public blnCheckBoxArray(intNumberCheckboxes) As Boolean

but I get error message saying that a fixed value is expected. I ought to be
possible. The integer intNumberCheckboxes is set in the beginning of the
program so it does not change when running. Should I write something like
ByVal? I do not know...Please help me on this one if you can!
 
You musr ReDim your array somewhere in your code:

'---------------------------------------------------------------
Public blnCheckBoxArray() As Boolean

Sub tester()
Dim intNumberCheckboxes As Integer

intNumberCheckboxes = 10
ReDim blnCheckBoxArray(intNumberCheckboxes)
End Sub

'---------------------------------------------------------------

HTH
 
franzklammer said:
Is it possible to define the length of an array using a varaible. I have
tried:

Public blnCheckBoxArray(intNumberCheckboxes) As Boolean

but I get error message saying that a fixed value is expected. I ought to be
possible. The integer intNumberCheckboxes is set in the beginning of the
program so it does not change when running. Should I write something like
ByVal? I do not know...Please help me on this one if you can!

Hi franzklammer,

I think you have to leave the brackets empty...

Public blnCheckBoxArray() As Boolean

then after the value of intNumberCheckboxes has been determined you use
the ReDim statement to get the array inplace...

ReDim blnCheckBoxArray(intNumberCheckboxes)

Ken Johnson
 
yes I have tried that. however I get the message: Complie error Matrix
dimension already set. Any clues? Please I just dont get it....

"Ardus Petus" skrev:
 
Hi Franz,
yes I have tried that. however I get the message: Complie error Matrix
dimension already set. Any clues? Please I just dont get it....

Show the problematic code.

The error could be produced with code like:

'===============>>
Dim intNumberCheckboxes As Long
Dim blnCheckBoxArray(1 To 10)

intNumberCheckboxes = 10

ReDim blnCheckBoxArray(intNumberCheckboxes)
'<<===============

In which case either delete:

Dim blnCheckBoxArray(1 To 10)

or replace it with:

Dim blnCheckBoxArray()
 
Back
Top