Làm thế nào để chạy một macro khi giá trị một ô thay đổi

Trong Excel thường thì có thể bấm F5 hoặc nút Run để thực hiện mã VBA .

Nhưng làm thế nào để chạy một macro nào đó khi giá trị ở một ô thay đổi mà không phải bấm phím F5 hoặc bấm nút Run .

Bấm chuột phải vào tên của Sheet bên dưới mà bạn muốn chạy macro khi thay đổi giá trị của một ô nào đó , chọn View Code để mở Microsoft Visual Basic , dán đoạn mã bên dưới

 

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target.Address = \"$A$1\" Then

        Call Mymacro

    End If

End Sub

 

\"\"

 

Ở đoạn mã trên A1 là ô khi thay đổi giá trị ở trong ô này thày sẽ tự động chạy macro có tên là Mymacro

 

Bạn có thể tự động chạy macro nào đó khi bất kì giá trị nào trong một dãy các ô thay đổi bằng đoạn mã dưới

 

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range(\"A1:B100\")) Is Nothing Then

Call Mymacro

End If

End Sub

 

\"\"

 

Với đoạn mã trên bất kì lúc nào bạn thay đổi giá trị bất kì trong ô nào từ A1 tới B100 thì macro có tên là Mymacro sẽ tự động chạy .