有沒有一種方法可以在更改值時更改宏,而不一定當用戶更改該值時?單元格值更改時自動運行宏(未由用戶更改)
例如,我有一個連接於細胞「A1」的複選框。當複選框被選中時,A1未被選中時讀取「TRUE」,它讀取「FALSE」。當A1在TRUE和FALSE之間變化時,我想要一個宏運行。
我所見過的私人小組Worksheet_Change代碼,但似乎當用戶實際更改單元格A1只工作。是否有另一種自動運行宏的方法?
UPDATE 13年11月29日 謝謝大家對你的建議,但不幸的是這是不太工作了。讓我試着進一步擴大。
我有一個複選框,下拉列表和文本字段的用戶表單。來自用戶表單的所有數據彙總在工作表的B列中(這是所有用戶表單字段鏈接的地方)。當宏運行時,會發生一些計算,並且用戶得到一些數字。
當用戶更改用戶窗體中的內容時,我希望宏自動運行。我知道這有可能成爲資源密集型的,但當它涉及到它時我會處理這個問題。我想要一個過程說明如果B1:B20範圍內的任何單元格的值發生變化,然後運行宏。我相信這種方法比告訴每個用戶表單域運行相同的宏更容易,因爲稍後可以更容易地展開和更新此表單,特別是在其他人接管維護的情況下。
我可以有一個按鈕,用戶可以點擊運行,當他們完成填表宏,但由於用戶忘記重新計算,我可以預見不準確的信息;這就是爲什麼我想自動完成並且實時更新數字的原因。
'有宏更改時值改變了嗎?爲什麼不點擊複選框觸發它? – pnuts
當公式更改單元格時,[VBA代碼不能運行]的可能重複(http://stackoverflow.com/questions/11406628/vba-code-doesnt-run-when-cell-is-changed-by- a-formula) –
@Sid建議的重複Q處理由於公式引起的更改,並且您的答案顯示爲「Worksheet_Calculate」。不幸的是,由於鏈接複選框導致的單元格更改也不會觸發此事件。 –