2016-02-17 77 views
0

我有很多次的一個模塊:運行事件宏

Sub a1 
Sub a2 
Sub a3 
... 
Sub a10 

並在工作表,我有一個事件宏:

Private Sub Worksheet_Change(ByVal Target As Range) 
... 
End Sub 

分A1到A9品牌在工作表中的變化(添加列,更改值...)

我希望事件宏啓動時,A1-A9它將(僅適用於A10)來完成工作。 這是更多鈔票?

+0

查找到'Application.EnableEvents'功能。然後,您可以切換Worksheet事件是否觸發。 –

回答

1

您可以添加在邏輯分支到您的活動變化的宏,以便它檢查某個參數,然後再運行。首先,全球布爾變量,無論是持有真或假 - 然後讓你的子A9它切換爲True。例如:

Global Start_Event_Code as Boolean 

Sub A9 
    'Other Code 
    Start_Event_Code = True 
End Sub 

Private Sub Worksheet_Change(ByVal Target As Range) 
    If Start_Event_Code Then 
     'Do stuff 
    End If 
End Sub 

然後,你可以讓這個的A10次將其關閉一次:

Sub A9 
    Start_Event_Code = False 
    'Other Code 
End Sub 
+0

Uooo!真的聰明的方法!我會嘗試!謝謝 – user4563174