Hiện em đang có 1 file excel quản lý kho. Có 1 trang trong file, có lẽ do được nhiều trang khác link tới để lấy dữ liệu bằng các hàm như vlookup, offset, index, match, do đó mọi thao tác trong trang vô cùng chậm, liên tục bị hiện trạng tháo "calculating (4 theards)". Mỗi thao tác gõ chữ, thêm dòng,...trong trang đều mất 5 - 10s.
Em cũng thử nhiều cách giới hạn dữ liệu, format, sửa hàm, name,...nhưng không ăn thua. Do đó em dùng sub Worksheet_Activate và Deactivate để tắt/bật chức năng tính tự động.
Private Sub Worksheet_Activate()
Application.Calculation = xlCalculationManual
End Sub
Tuy nhiên điều này hạn chế khả năng copy dữ liệu từ trang đó tới trang khác, bởi khi thoát khỏi trang, Sub Worksheet_Deactivate sẽ chạy làm mất phần dữ liệu vừa copy. Mọi sub copy dữ liệu trong trang này, kể cả khi copy bằng tay đều gặp lỗi khi paste.
Mình k muốn tắt tính năng CalculationAutomatic vì hạn chế nhiều tới người dùng.
Các bác cho hỏi:
- Em định dạng vùng dữ liệu, các hàm tính toàn trong vùng khoảng 5000 dòng, như vậy có quá lớn không? Vì thực tế 1 trang khác em định dạng tới 10000 dòng, các hàm toàn tính tổng toàn bộ cột nhưng không gây ảnh hưởng như vậy?
- Các hàm Offset, index, match, vlookup có tạo nên việc tính toán quá nặng không?
- Giải pháp nào để Copy - Paste dữ liệu từ trang trên?
Xin cảm ơn mọi người.
Em cũng thử nhiều cách giới hạn dữ liệu, format, sửa hàm, name,...nhưng không ăn thua. Do đó em dùng sub Worksheet_Activate và Deactivate để tắt/bật chức năng tính tự động.
Private Sub Worksheet_Activate()
Application.Calculation = xlCalculationManual
End Sub
Tuy nhiên điều này hạn chế khả năng copy dữ liệu từ trang đó tới trang khác, bởi khi thoát khỏi trang, Sub Worksheet_Deactivate sẽ chạy làm mất phần dữ liệu vừa copy. Mọi sub copy dữ liệu trong trang này, kể cả khi copy bằng tay đều gặp lỗi khi paste.
Mình k muốn tắt tính năng CalculationAutomatic vì hạn chế nhiều tới người dùng.
Các bác cho hỏi:
- Em định dạng vùng dữ liệu, các hàm tính toàn trong vùng khoảng 5000 dòng, như vậy có quá lớn không? Vì thực tế 1 trang khác em định dạng tới 10000 dòng, các hàm toàn tính tổng toàn bộ cột nhưng không gây ảnh hưởng như vậy?
- Các hàm Offset, index, match, vlookup có tạo nên việc tính toán quá nặng không?
- Giải pháp nào để Copy - Paste dữ liệu từ trang trên?
Xin cảm ơn mọi người.