That is going to be v e r y s l o w !
It is not the number of controls, it is that each is having to pull a lot of
data. I had a similar problem with 6 choices that had to be multiselect and
cascading, that is number 2 had to pull data based on number 1. Number 3 had
to pull data based on number 2 unless not choices were made in number to,
then it had to base on Number 1.
Of course, since they wanted multi select, I had to use list boxes.
The first problem I hit was it took forever to load. The main table has
about 38000 and with only 6 choices, it took too long. So, here is what I
did.
I did not assign a row source for any of the list boxes. In fact, I hid
them and put a command button for them to make them visible (what I really
did was set the height to 0, then changed the height when they click the
button. Then the code behind the button determines the row source bases on
what was chosen in the previous list. I have it working so that they always
have to work from 1 to six, but they don't have to choose any or they can
just do 6 or what ever.
The behaviour is that if they say have 4 selected, and go click on 2, 3 and
4 disappear and their row sources are set to "".
Sorry to be so long winded, but I am hoping this will give you some ideas.
The main thing this all accomplishes is giving the appearance of speed.
Because the form is loading not data when opened, it opens very fast. Then
when he selects one list, it doesn't take that long for one list to load.
One of the tricks I do, and again it is for visual effect, is I don't make
the list visible until the rowsource query has been constructed and
executled. That way, a user is not looking at an empty box. It opens with
the data.
Hope this will help. Be glad to give more advice on this if you need it.