- 帖子
- 835
- 主題
- 6
- 精華
- 0
- 積分
- 915
- 點名
- 0
- 作業系統
- Win 10,7
- 軟體版本
- 2019,2013,2003
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2010-5-3
- 最後登錄
- 2024-11-14
|
2#
發表於 2024-9-6 22:27
| 只看該作者
本帖最後由 luhpro 於 2024-9-6 22:34 編輯
請教前輩,
我用資料驗證的清單以及搭配INDIRECT函數,設定好兩層的下拉式清單。
以我的範例說明,當A欄選 ...
pointchi 發表於 2024-9-4 09:02 
據我所知Excel於使用資料驗證清單的方式中,
並不會因為來源(A欄)內容的變更而自動變更清單(B欄)的資料,
而是於變更B欄時才會發動檢查機制.
不過, 這個問題在 Excel VBA 上就能夠很容易解決,
你只需要將底下的程式碼放到該工作表的程式區塊內就可以了:- Private Sub Worksheet_Change(ByVal Target As Range)
- With Target ' 工作表內有資料變更
- If .Column = 1 Then ' 當A欄資料變更時
- .Offset(, 1) = "" ' 清除B欄資料
- .Offset(, 1).Select ' 焦點移到B欄等待User選擇正確的鄉鎮
- End If
- End With
- End Sub
複製代碼
|
|