uhm non mi pare che cambi molto così; tra l'altro mi da lo stesso errore di prima.
io ho provato così:

codice:
Private Sub Female_Click()
gender = 2
Call Combobrand_change
End Sub

Private Sub Main_Click()
clz = 2
Call Combobrand_change
End Sub

Private Sub Male_Click()
gender = 1
Call Combobrand_change
End Sub

Private Sub Pre_Click()
clz = 1
Call Combobrand_change
End Sub

Private Sub Combobrand_change()

If gender = 1 And clz = 1 Then
g1clz1 = Array("love_u_h09")
For x = 1 To 1
Combobrand.AddItem g1clz1(x)
Next x
End If

If gender = 2 And clz = 1 Then
g2clz1 = Array("seeby_d_h09", "mcq_d_h09", "love_d_h09")
For y = 1 To 3
Combobrand.AddItem g2clz1(y)
Next y
End If

If gender = 1 And clz = 2 Then
g1clz2 = Array("mcq_u_i09", "love_u_i09", "cs_u_i09")
For z = 1 To 3
Combobrand.AddItem g1clz2(z)
Next z
End If

If gender = 2 And clz = 2 Then
g2clz2 = Array("seeby_d_i09", "love_d_i09", "mcq_d_i09", "cs_d_i09", "anna_d_i09", "kj_d_i09")
For w = 1 To 6
Combobrand.AddItem g2clz2(w)
Next w
End If


End Sub
e per lo meno nel debug arriva dentro la sub Combobrand_change; ora mi da uno strano errore dicendomi "indice non incluso nell'intervallo" all'altezza dell'if della selezione effettuata.