- Tham gia
- 25/9/09
- Bài viết
- 5,729
- Được thích
- 8,858
- Giới tính
- Nam
- Nghề nghiệp
- Giáo viên
Chào cả nhà!
Em có bài toán thế này: Trong Workbook có 1 name Flag với giá trị ban đầu là FALSE. Em cần viết code để khi có bất kỳ sự thay đổi nào về giá trị trên Sheet1 thì name Flag sẽ được đổi thành TRUE (mục đích là để đánh dấu sự thay đổi trên sheet).
Em đã sử dụng code như sau:
[GPECODE=vb]Private Sub Aut
pen()
Dim Nm As Name
For Each Nm In ThisWorkbook.Names
Nm.Delete
Next
ThisWorkbook.Names.Add "Flag", RefersTo:=False
Sheet1.OnEntry = "Main"
End Sub
'-------------------------------------------
Sub Main()
ThisWorkbook.Names("Flag").RefersTo = True
End Sub
'-------------------------------------------
Private Sub Auto_Close()
Sheet1.OnEntry = ""
End Sub[/GPECODE]
Tuy nhiên khi chạy thì code gặp vấn đề như sau: Code chỉ hoạt động đúng yêu cầu khi nhập giá trị trực tiếp từ bàn phím, còn các trường hợp khác (xóa giá trị, chọn giá trị từ Validation, copy từ nơi khác dán vào) thì code không có tác dụng.
Câu hỏi đặt ra là: Phải sửa code như thế nào để đáp ứng được yêu cầu? Rất mong nhận được sự giúp đỡ của mọi người. Xin cảm ơn!
Em có bài toán thế này: Trong Workbook có 1 name Flag với giá trị ban đầu là FALSE. Em cần viết code để khi có bất kỳ sự thay đổi nào về giá trị trên Sheet1 thì name Flag sẽ được đổi thành TRUE (mục đích là để đánh dấu sự thay đổi trên sheet).
Em đã sử dụng code như sau:
[GPECODE=vb]Private Sub Aut

Dim Nm As Name
For Each Nm In ThisWorkbook.Names
Nm.Delete
Next
ThisWorkbook.Names.Add "Flag", RefersTo:=False
Sheet1.OnEntry = "Main"
End Sub
'-------------------------------------------
Sub Main()
ThisWorkbook.Names("Flag").RefersTo = True
End Sub
'-------------------------------------------
Private Sub Auto_Close()
Sheet1.OnEntry = ""
End Sub[/GPECODE]
Tuy nhiên khi chạy thì code gặp vấn đề như sau: Code chỉ hoạt động đúng yêu cầu khi nhập giá trị trực tiếp từ bàn phím, còn các trường hợp khác (xóa giá trị, chọn giá trị từ Validation, copy từ nơi khác dán vào) thì code không có tác dụng.
Câu hỏi đặt ra là: Phải sửa code như thế nào để đáp ứng được yêu cầu? Rất mong nhận được sự giúp đỡ của mọi người. Xin cảm ơn!