chỉnh sửa code

Liên hệ QC

cõi ta bà

Thành viên mới
Tham gia
23/12/18
Bài viết
48
Được thích
4
em dùng code này áp dụng cho 300 sheet thấy nó chạy chập. Dẫn đến đơ máy. em đưa lên mong quý thầy có cách nào khắc phục hộ em với. em xin cảm ơn
 

File đính kèm

  • thực hành excl.xlsm
    23.6 KB · Đọc: 9
em dùng code này áp dụng cho 300 sheet thấy nó chạy chập. Dẫn đến đơ máy. em đưa lên mong quý thầy có cách nào khắc phục hộ em với. em xin cảm ơn
Search trên mạng thấy người ta dùng các lệnh
Mã:
With Application
.Interactive = False
.EnableEvents = False
.ScreenUpdating = False
.Calculation = xlCalculationManual
End With

.....

With Application
.Interactive = True
.EnableEvents = True
.ScreenUpdating = True
.Calculation = xlCalculationAutomatic
End With
Không chắc lắm, bạn dùng thử, không "bổ" chiều ngang cũng "bổ" chiều dọc, nhiều khi "phước chủ may thầy"
 
Upvote 0
Search trên mạng thấy người ta dùng các lệnh
Mã:
With Application
.Interactive = False
.EnableEvents = False
.ScreenUpdating = False
.Calculation = xlCalculationManual
End With

.....

With Application
.Interactive = True
.EnableEvents = True
.ScreenUpdating = True
.Calculation = xlCalculationAutomatic
End With
Không chắc lắm, bạn dùng thử, không "bổ" chiều ngang cũng "bổ" chiều dọc, nhiều khi "phước chủ may thầy"
Bác áp hộ em với chứ về code em ngu lắm. em xin cảm ơn
 
Upvote 0
Bác áp hộ em với chứ về code em ngu lắm. em xin cảm ơn
Mã:
Sub diendulieu()
Dim arr

With Application
    .EnableEvents = False
    .Interactive = False
    .ScreenUpdating = False
    .Calculation = xlCalculationManual
End With

With Sheet1
     arr = .Range("B2:m24").Value
End With
    Sheet2.Range("B2:m24").Value = arr
    Sheet3.Range("F2:Q24").Value = arr
    Sheet4.Range("H2:S24").Value = arr
    
With Application
    .Calculation = xlCalculationAutomatic
    .ScreenUpdating = True
    .Interactive = True
    .EnableEvents = True
End With
End Sub
 
Upvote 0
Mã:
Sub diendulieu()
Dim arr

With Application
    .EnableEvents = False
    .Interactive = False
    .ScreenUpdating = False
    .Calculation = xlCalculationManual
End With

With Sheet1
     arr = .Range("B2:m24").Value
End With
    Sheet2.Range("B2:m24").Value = arr
    Sheet3.Range("F2:Q24").Value = arr
    Sheet4.Range("H2:S24").Value = arr
  
With Application
    .Calculation = xlCalculationAutomatic
    .ScreenUpdating = True
    .Interactive = True
    .EnableEvents = True
End With
End Sub
cám ơn anh nhiều code rất là nhanh
 
Upvote 0
Vậy có thể viết thế này chăng?
Mã:
 Sub MySub()
   F_T False
 ' ' ' ' '  Các Câu Lệnh  xử lý ' 
  F_T
 End Sub

PHP:
Sub F_T(Optional FTrue As Boolean = True)
 With Application
    If FTrue Then
        .Calculation = xlCalculationAutomatic
    Else
        .Calculation = xlCalculationManual
    End If
    .ScreenUpdating = FTrue
    .EnableEvents = FTrue
    .Interactive = FTrue
  End With
 End Sub
 
Upvote 0
Còn vài thang thuốc bổ Application nữa, mình ít dùng nên không nhớ o_O
Các thang thuốc bổ này dùng không đủ liều hoặc thích hợp cũng có khi nguy hiểm, Khi chương trình bị lỗi đột ngột, thì dễ dẫn đến các even .. tính toán bị tắt hết
(người dùng cần bẫy lỗi các trường hợp này)
 
Upvote 0
Các thang thuốc bổ này dùng không đủ liều hoặc thích hợp cũng có khi nguy hiểm, Khi chương trình bị lỗi đột ngột, thì dễ dẫn đến các even .. tính toán bị tắt hết

Vậy ta cói thể vô cửa sổ Immediate để chạy lệnh của macro #8:
F_T & {ENTER} được không ta?
 
Upvote 0
Web KT
Back
Top Bottom