سلام،
مي توانيد اطلاعاتي که مي خواهيد در کمبوبکس اول نشان داده شود را در يک ستون درج نماييد فرضا" سل A1 تا A20
در اين صورت مي توانيد با يک کد در موقع باز شدن فرم مقادير A1 تا A20 را در کمبوبکس يک بارگيري نماييد :
کد PHP:
Private Sub UserForm_Activate()
Dim D As Range
For Each D In Range("A1:A20")
ComboBox1.AddItem (D)
Next
End Sub
حال به ازاي هر آيتمي از کمبوبکس يک مي خواهيم مقادير ثانويه اي را در کمبوبکس دوم بارگيري کنيم.
براي اين کار مي توانيم مقادير ثانويه را جلوي هر يک از خانه هاي A1 تا A20 در ستونهاي بعدي بنويسيم. به فرض مقاديري که به ازاي مقدار سل A1 مي خواهيم در کمبوبکس دوم بارگيري شود را در سل هاي B1 و C1 و D1 و E1 و .... مي نويسيم و مقاديري که به ازاي مقدار سل A2 مي خواهيم در کمبوبکس دوم بارگيري شود را در سل هاي B2 و C2 و D2 و E2 و .... مي نويسيم.
حال کد زير را براي کمبوبکس يک به کار مي بريم:
(البته کد فقط براي 4 مقدار تا ستون E نوشته شده و شما مي توانيد آن را بيشتر گسترش دهيد)
کد PHP:
Private Sub ComboBox1_Change()
Dim C As Range
Dim K As Integer
ComboBox2.Clear
For Each C In Range("A1:A20")
If C = ComboBox1.Text Then
K = 2
Do While K < 6
ComboBox2.AddItem (Cells(C.Row, K).Value)
K = K + 1
Loop
End If
Next
End Sub
علاقه مندی ها (Bookmarks)