我想完成我的項目,我現在有一個表單控件,當按下時添加到一個數字的值和另一個按鈕將減去該值。Excel Worksheet_Change不工作時,宏更改單元格
另一個值對於同一事物有兩個不同的按鈕,但值也取決於第一個值和其他事物,而不僅僅是按鈕修改該值。我試圖執行這段代碼進行驗證
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Target.Worksheet.Range("F19")) Is Nothing Then
If Range("E19") = 2 And Range("F19") < 12 Then
Range("E20") = 1
End If
End If
End Sub
但顯然Excel中無法識別時,改變由按鍵引起的細胞F19已經改變,只有當它是由用戶輸入造成的。所以,這就是說,如果F19更新,19是2,F19小於12(E12爲2的先決條件是F19是12或更大),那麼設置E20爲1(E20是E19的修飾符,它也具有進入它的其他修飾符)。此方法適用於其他不受按鈕控制的值,但如何在Excel表單控件按鈕更改值(或至少在按下表單控件時進行監視)時獲得Excel的實現。
編輯:宏如果單元格按公式改變,實際上也不起作用。我不認爲我可以使用Worksheet_Calculate來監視特定單元格中的更改。
我不認爲這是正確的。我的理解是,標準模塊中的非限定範圍引用將引用活動頁。但是表單類模塊中的非限定範圍引用將引用該表單。我同意OP應完全限定範圍參考以避免混淆。OP可能也會考慮Me關鍵字。 –
我不確定爲什麼你沒有告訴我我在回答評論時錯了。好吧。我只是相信MSDN而不打擾測試它。我刪除了我的犯規句子。 :) 謝謝 –