Cập nhật thanh trạng thái - Ví dụ về mã VBA

Ở góc dưới cùng bên trái của Excel, bạn sẽ tìm thấy Thanh trạng thái:

Excel sử dụng thanh trạng thái này để truyền thông báo cho bạn. Tuy nhiên, Thuộc tính StatusBar cũng có thể được điều chỉnh bằng VBA, cho phép bạn hiển thị các thông báo của riêng mình.

Thông báo trên thanh trạng thái tùy chỉnh

Bạn có thể cập nhật thanh trạng thái với thông báo tùy chỉnh của riêng bạn trong Excel khi macro đang chạy, bằng cách sử dụng Thanh trạng thái bất động sản.

1. Đặt mã này trong macro bất cứ khi nào bạn muốn cập nhật người dùng bằng thông báo trên thanh trạng thái tùy chỉnh:

1 Application.StatusBar = "Tôi đang làm việc !!!"

2. Và ở cuối macro của bạn, hãy đặt mã này để xóa thanh trạng thái và trả lại quyền điều khiển cho Excel:

1 Application.StatusBar = FALSE

Tắt cập nhật thanh trạng thái

Thay vì hiển thị thông báo trong khi thủ tục của bạn chạy, bạn có thể tắt Thanh trạng thái. Điều này sẽ làm tăng tốc độ mã VBA của bạn vì Excel có thể bỏ qua việc xử lý thông báo Thanh trạng thái sẽ hiển thị.

Để tắt cập nhật Thanh trạng thái trong khi mã của bạn đang chạy, hãy đặt DisplayStatusBar tài sản để sai.

1 Application.DisplayStatusBar = Sai

Khi kết thúc mã của bạn, hãy khôi phục cập nhật Thanh trạng thái:

1 Application.DisplayStatusBar = True

Quan trọng! Sử dụng Thanh trạng thái thuộc tính để đặt thông báo, nhưng sử dụng DisplayStatusBar thuộc tính để tắt hoặc bật thanh trạng thái hoàn toàn.

Tăng tốc mã VBA

Để có tốc độ xử lý tối ưu, hãy thử sử dụng mã này:

12345678910111213141516 sub RunFast ()Application.ScreenUpdating = SaiApplication.DisplayStatusBar = SaiApplication.EnableEvents = SaiActiveSheet.DisplayPageBreaks = SaiApplication.Calculation = xlCalculationManual'Mã của bạn ở đâyApplication.ScreenUpdating = TrueApplication.DisplayStatusBar = TrueApplication.EnableEvents = TrueActiveSheet.DisplayPageBreaks = TrueApplication.Calculation = xlCalculationAutomatickết thúc phụ

Bạn sẽ giúp sự phát triển của trang web, chia sẻ trang web với bạn bè

wave wave wave wave wave