Mình muốn khi chạy macro không có hiên tượng nhấp nháy trên màn hình

Liên hệ QC

tuanvnconex

Thành viên mới
Tham gia
21/3/08
Bài viết
5
Được thích
0
Khi chạy Macro có hiện tượng nhấp nháy trên màn mình. Mình muốn thay vào đó là một menu tiến trình của việc chạy macro. Bạn nào biết chỉe giáo cho mình nhe.
Cảm ơn các bạn nhiều
 
tuanvnconex đã viết:
Khi chạy Macro có hiện tượng nhấp nháy trên màn mình. Mình muốn thay vào đó là một menu tiến trình của việc chạy macro. Bạn nào biết chỉe giáo cho mình nhe.
Cảm ơn các bạn nhiều

VD :
PHP:
Sub TinhToan
Application.ScreenUpdating = False
.............................................
(Code của bạn)
............................................

Application.ScreenUpdating = True
End Sub

Thân!
 
Upvote 0
Rung là rung thế nào ??? Đã dùng lệnh trên mà vẫn còn rung vậy có lẽ là do Screen Refresh Rate của Monitor bạn thấp.(khoảng 75 herts là vừa)

TDN

Ban xem giup minh

Minh vào Sheet Thu_Tien; đánh dấu HS mua BH thấy bị rung mà (Monitor Settings rate: 75 Hertz)

Tập tin đính kèm: trong phần "Hỗ trợ CNLớp THCS - XLHL theo QC 40". ở mục phần chữ ký của em

Nên em xóa tập tin dính kèm trong bài này để giải phóng tài nguyên​
 
Lần chỉnh sửa cuối:
Upvote 0
Ban xem giup minh
Minh vào Sheet Thu_Tien; đánh dấu HS mua BH thấy bị rung mà (Monitor Settings rate: 75 Hertz)
Bạn thêm 2 dòng lệnh sau để khắc phục nhé
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
[B]  Application.EnableEvents = False[/B]
  Application.ScreenUpdating = False
  If Not Intersect(Target, Range("D5:E54")) Is Nothing Then
    If Target = "x" Or Target = "X" Then
        Target.Offset(0, 43).Value = Now
    Else
       Target.Offset(0, 43).Value = Empty
    End If
  End If
  Application.ScreenUpdating = True
[B]  Application.EnableEvents = True[/B]
End Sub
TDN
 
Upvote 0
Bạn thêm 2 dòng lệnh sau để khắc phục nhé
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
[B] Application.EnableEvents = False[/B]
  Application.ScreenUpdating = False
  If Not Intersect(Target, Range("D5:E54")) Is Nothing Then
    If Target = "x" Or Target = "X" Then
        Target.Offset(0, 43).Value = Now
    Else
       Target.Offset(0, 43).Value = Empty
    End If
  End If
  Application.ScreenUpdating = True
[B] Application.EnableEvents = True[/B]
End Sub
TDN

cảm ơn nhiều

vẫn còn rung rung nhưng đỡ hơn nhiều
 
Upvote 0
Upvote 0
Anh có thể giải thích giúp em ý nghĩa của hàm Intersect không?
Đại khái như sau:
"Nếu Target thuộc vùng D5:E54 thì sẽ làm những việc bên dưới... "
Giống như lấy phần giao nhau giữa 2 tập hợp ấy mà và cũng giống như cách mà bạn đã từng làm:
If Target.Column... gì gì đó (dùng để giới hạn vùng điều kiện)
ANH TUẤN
 
Lần chỉnh sửa cuối:
Upvote 0
cảm ơn nhiều
vẫn còn rung rung nhưng đỡ hơn nhiều
Muốn hết chớp luôn thì bỏ luôn dòng
Application.EnableEvents = True
Nhưng cẩn thận nhé !!!
Nguyên văn bởi ca_dafi
Anh có thể giải thích giúp em ý nghĩa của hàm Intersect không?
Bạn theo Link sau, bác SA_DQ hướng dẫn rất cặn kẽ
http://www.giaiphapexcel.com/forum/showthread.php?t=480


TDN
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom