標題:
[發問]
特定條件 限制儲存格輸入
[打印本頁]
作者:
li_hsien
時間:
2014-5-2 11:50
標題:
特定條件 限制儲存格輸入
請問各位大大
我有兩個欄位A、B
A欄設了清單,只能下拉Y和N
如果A欄選了N,則B欄不能輸入東西
如果A欄選了Y,則B欄就可以輸入任何東西
請問這巨集該如何設計呢???
我初步想的方式是用Worksheet_Change
EX:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Value = "N" Then
Target.Offset(, 1).******* ->設不能輸入的條件
End If
End Sub
複製代碼
可是都擋不住@@
不知該如何撰寫
謝謝
作者:
GBKEE
時間:
2014-5-3 16:07
回復
1#
li_hsien
試試看
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
If Target.Count = 1 And Target.Offset(, -1) = "N" Then Target = ""
End If
End Sub
複製代碼
作者:
li_hsien
時間:
2014-5-5 08:21
回復
2#
GBKEE
試了一下還是無法去除@@
儲存格有辦法使用類似ENABLE的語法嗎???
之前想最適當的方式就是當A1選了N
B1就不能做輸入的動作
不知能不能這樣處理
謝謝
作者:
Hsieh
時間:
2014-5-5 08:31
回復
3#
li_hsien
別把問題想的太複雜
[attach]18209[/attach]
作者:
li_hsien
時間:
2014-5-5 09:45
回復
4#
Hsieh
謝謝H版大
真的是想複雜了
原來可以這樣操作
謝謝
又學到了新東西
作者:
li_hsien
時間:
2014-5-6 09:00
回復
4#
Hsieh
請問一下版大
我後來想到
因為用這方法
如果A1選了Y B1可以填寫
但填完後A1又選了N , B1的值還是會存在
所以想說加了這段程式碼
Private Sub Worksheet_Change(ByVal Target As Range)
' Application.EnableEvents = False
If Target.Column = 57 And Target = "N" Then
' Application.EnableEvents = True '加這邊???
Target.Offset(, 1) = ""
End If
' Application.EnableEvents = True '加這邊???
End Sub
複製代碼
後來想看到相關文章
因為使用Worksheet_Change會一直執行
所以可以用Application.EnableEvents來觸發
但我不太清楚該如何操作
是一開始先設為False
觸發到A1是N的時候再變成True嗎??
可是我試過還是一直轉不回True @@
TKS~~
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)