連結的下拉清單?

連結的下拉清單?

我想在 Excel 中連結 2 個下拉清單。尋找解決方案的結果總是級聯下拉清單。我想要的是兩個具有相同選項的下拉清單。當你改變一個時,另一個也會改變。

我嘗試過簡單地相互引用,但當然我得到了循環引用錯誤。如果可能的話,我很樂意在沒有 VBA 的情況下做到這一點,因為我會有很多 VBA,但如果這是不可能的,我理解。

答案1

如果您希望兩個儲存格都可編輯,那麼沒有 VBA 就無法完成您所描述的操作。

正如您所發現的,相互引用這些公式會建立循環引用。即使它有效,只要您從下拉清單中選擇一個值,任何公式都會被覆蓋。

因此,VBA 是您唯一的選擇。如果儲存格位於兩個不同的工作表上,則程式碼可能如下所示:

在Sheet1的Sheet模組中:

Private Sub Worksheet_Change(ByVal Target As Range)
' monitor cell A1
If Not Intersect(Target, Range("A1")) Is Nothing Then
    Application.EnableEvents = False 'prevent endless loop of events
    ' copy selected value to Sheet2, cell b1
    ThisWorkbook.Worksheets("Sheet2").Range("B1") = Range("A1")
    Application.EnableEvents = True
End If
End Sub

在Sheet2的Sheet模組中

Private Sub Worksheet_Change(ByVal Target As Range)
' monitor cell B1 on sheet 2
If Not Intersect(Target, Range("B1")) Is Nothing Then
    Application.EnableEvents = False 'prevent endless loop of events
    ' copy selected value to Sheet1, cell A1
    ThisWorkbook.Worksheets("Sheet1").Range("A1") = Range("B1")
    Application.EnableEvents = True
End If
End Sub

答案2

正如 Teylyn 所說,不可能完全按照您希望的方式工作。

除了 VBA 之外的另一種解決方法是使用表單控制項下拉清單而不是資料驗證中的下拉清單:

  • 轉到“開發人員”選項卡(如果不可見,則根據說明啟用它這裡)——插入——表單控制項——“組合方塊(表單控制項)”
  • 插入它並調整大小以覆蓋單元格
  • 右鍵單擊它並轉到“控制”
  • 輸入“輸入範圍”和“儲存格連結”
  • 現在,將其複製並貼上到其他地方,因為兩者俱有相同的單元格鏈接,如果您更改其中任何一個,另一個也會更新。

相關內容