這是一種解決方法。在小區C2我把這個公式,以檢查是否B2具有從基於A2正確的範圍內選擇一個選項:
=IF(ISERROR(VLOOKUP(B2,INDIRECT(A2),1,FALSE)),HLOOKUP(A2,D1:F3,2,FALSE),B2)
然後,我創建宏:
![enter image description here](https://i.stack.imgur.com/KJhZp.png)
Sub Change_Model()
'
' Change_Model Macro
'
'
Range("C2").Select
Selection.Copy
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
然後把它放在工作表代碼中:
![enter image description here](https://i.stack.imgur.com/4jCj7.png)
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A2")) Is Nothing Then
Select Case Range("A2")
Case "BMW": Change_Model
Case "Honda": Change_Model
Case "Mercedes": Change_Model
End Select
End If
End Sub
這會在您更改A2時隨時激活宏,然後將當前calue從C2粘貼到B2中,這將始終是當前Seller列表中的第一個選項。
![enter image description here](https://i.stack.imgur.com/YWm4Y.png)
我認爲你正在尋找依賴性下拉? http://www.contextures.com/xlDataVal02.html –
@TimWilkinson提供的鏈接將解決您的問題。如果需要幫助,請告訴我們。 – harun24hr
謝謝你的回答。然而我的問題沒有解決在這個鏈接。也許在上一章中調整解決方案「選擇後清除相關單元」我可以解決問題。也許我沒有解釋清楚。所以如果你看@TimWilkinson鏈接的最後一章。我不需要清除相關單元格,而是需要從相關範圍中填充任何正確的值。解釋一下,如果我在父母單元中選擇了「mercedes」,並且在依賴中選擇了「A類」。細胞。現在,我選擇父母單元格中的「寶馬」,我想在自動更新值。細胞基於這種變化。不改變依賴。細胞手動 – KubOn