当用户不取消select单元格时,调用工作表事件更改

我有一个非常简单的Worksheet_Change事件正在运行,以便如果工作表上的任何单元格更改另一个工作表上的单元格更改为1.我正在使用该单元格作为标志来知道是否有任何更改已对工作表。 我有一个形状,我select时分配了一个macros。 macros检查是否有任何更改(如果该单元格设置为1),如果是我的代码触发。

问题是如果例如

  • 单元格A1包含名称鲍勃。
  • 用户select单元格A1并将名称从Bob更改为Steve
  • 但是不是先单击出单元格,然后单击它们直接撞到形状的形状而不取消选中单元格。

与此问题是,直到我的macros完成后,不会触发worksheet_change事件。 所以,当macros运行标志被设置为0,但一旦完成标志被设置为1。

任何想法如何制止这一点?

 Private Sub Worksheet_Change(ByVal Target As Range) sheets("Cond For").Range("A1").Value = 1 End Sub Sub saveData() if sheets("Cond For").Range("A1").Value = 1 Then 'my code End if End Sub 

像这样使用两个例程(重命名Sheet1.Reallysave到您的工作表的代号和例程名称):

 Sub SaveData() Application.Ontime Now, "Sheet1.ReallySave" End Sub Sub ReallySave() 'Your current code End Sub