私は自分のプロジェクトを完成させようとしていますが、現在、押されたときに数値の値が追加され、別のボタンがその値を減算するフォーム コントロールがあります。
別の値には、同じものに対して 2 つの異なるボタンがありますが、値は最初の値にも依存し、ボタンだけでその値を変更するものではありません。検証のためにこのコードを実装してみました
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
しかし、変更がボタンによって引き起こされた場合、セル F19 が変更されたことを Excel は明らかに認識せず、ユーザー入力によってのみ変更されました。つまり、F19 が更新され、19 が 2 で F19 が 12 未満の場合 (E12 が 2 であるという前提条件は、F19 が 12 以上であることです)、E20 を 1 に設定します (E20 は E19 の修飾子であり、それに入る他の修飾子)。このメソッドは、ボタンで制御されていない他の値で機能しますが、フォームコントロールボタンが値を変更したとき (または少なくともフォームコントロールが押されたときを監視する) をどのように認識できますか?
編集:セルが数式によって変更された場合、マクロは実際には機能しません。特定のセルの変化を監視するために Worksheet_Calculate を使用できるとは思いません。