標題:
工作表 worksheet 物件事件函數內參數 Cancel 用法
[打印本頁]
作者:
Scott090
時間:
2015-12-6 09:33
標題:
工作表 worksheet 物件事件函數內參數 Cancel 用法
請問\
這個事件函數 Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel 是對甚麼來定義布林值,它的意義是什麼
可否舉例說明要怎麼用?
謝謝
作者:
jackyq
時間:
2015-12-6 20:31
常態下當某 cell 被雙極時, 會出現可以文字編輯的閃爍游標
Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
End Sub
加入 Cancel = True 後
不會出現可文字編輯的閃爍游標
作者:
yen956
時間:
2015-12-7 04:30
回復
2#
jackyq
大大你好, 它的作用是什麼?
有什麼用途?
作者:
c_c_lai
時間:
2015-12-7 06:58
本帖最後由 c_c_lai 於 2015-12-7 07:06 編輯
回復
1#
Scott090
舉個例子來說明:
工作表1 (工作表1):
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not (Target.Column = 1 Or Target.Column = 2) Then Exit Sub
Cancel = True
If Target.Column = 1 Then
工作表1.Ex
Else
工作表2.Ex
End If
End Sub
Sub Ex()
MsgBox "工作表1"
End Sub
複製代碼
工作表2 (工作表2):
Sub Ex()
MsgBox "工作表2"
End Sub
複製代碼
說明一:
Cancel As Boolean (原文)
False when the event occurs. If the event procedure sets this argument to True,
the default double-click action isn't performed when the procedure is finished.
複製代碼
參數 Cancel 預設值為 False,亦即當為 False 值則啟動該事件;你可試著在有欄位值的
欄位內,滑鼠連按兩下你會發現該欄值會反白或閃爍。
如該引數宣告為 True 時,該雙擊的動作完成時,反白或閃爍都是毫無作用的,
意即不會啟動該事件的反白或閃爍之提示作用。
說明二:
Need help with code to do the folowing when clicking on diffrent cells
in a worksheet (需要在該工作表中加入以下之程式碼)
Column A when clicket in any row show form1.Ex (需在"工作表1"加入一 Sub Ex() 程式碼)
Column B when clicket in any row show form2.Ex (需在"工作表2"加入一 Sub Ex() 程式碼)
複製代碼
當被點選的欄位為 A 欄時,則執行 工作表1.Ex;
當被點選的欄位為 B 欄時,則執行 工作表2.Ex。
作者:
c_c_lai
時間:
2015-12-7 07:14
本帖最後由 c_c_lai 於 2015-12-7 07:15 編輯
回復
3#
yen956
你可以試著觀察:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Not (Target.Column = 1 Or Target.Column = 2) Then Exit Sub
' Cancel = True
.
.
.
End Sub
複製代碼
與下列不同的處裡之間的不同變化:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
' Cancel = True
If Not (Target.Column = 1 Or Target.Column = 2) Then Exit Sub
Cancel = True
.
.
.
End Sub
複製代碼
作者:
Scott090
時間:
2015-12-7 08:06
回復
2#
jackyq
謝謝你的提示
作者:
Scott090
時間:
2015-12-7 08:14
回復
5#
c_c_lai
非常感恩 詳盡的解說
自從Win soft 更新把 ActiveX控制項搞壞以後,就盡可能不用 CommandButtom
而改由 Worksheet 事件取代
作者:
jackyq
時間:
2015-12-7 08:41
本帖最後由 jackyq 於 2015-12-7 08:44 編輯
回復
3#
yen956
實現指定的 cell , 使其禁止被手動修改期值
不會出現可文字編輯的閃爍游標
自然就無法手動修改 Range
作者:
yen956
時間:
2015-12-7 10:13
回復
8#
jackyq
果然可以禁止用 "DoubleClick" 的方法修改Cell的值(雖然可用其方法),
謝謝大大的說明與指導!!
作者:
yen956
時間:
2015-12-7 10:21
回復
5#
c_c_lai
謝謝c大詳盡的說明, 沒想到禁止 "DoubleClick" 還是有它的特定用途.
p.s. 關於 監看視窗已知道怎樣用了(包括用右鍵), 真好用,
不管用來追綜自已的VBA, 還是大大們神奇的VBA均很不錯, 謝謝!!
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)