Hướng dẫn cách dùng hàm NOW TODAY TIME trong VBA Excel

Chia sẻ bởi:api_publisher
★★★★★
Quảng cáo

Tóm tắt: Hướng dẫn thực hành Excel, trình bày theo từng bước, có công thức mẫu và lưu ý áp dụng nhanh trong công việc.

Trong Excel chúng ta có các hàm dùng để lấy giá trị thời gian thực như hàm NOW, TODAY và hàm xác định giờ là TIME. Tuy nhiên việc sử dụng những hàm này lại có một nhược điểm là Excel sẽ luôn luôn phải tính toán những hàm này liên tục. Vậy có cách nào để thay thế cách sử dụng những hàm này mà vẫn đạt hiệu quả như mong muốn? Hãy cùng SprinGo tìm hiểu qua bài viết này.

Trước hết các bạn có thể xem lại bài viết về hàm NOW, DATE, TIME trong Excel:

Định dạng thời gian trong Excel & cách sử dụng hàm NOW và TIME để chèn thời gian

Học Nhân sự Tổng hợp – Trở thành chiến binh nhân sự vững nghiệp vụ
Khóa học SprinGO phù hợp

Học Nhân sự Tổng hợp – Trở thành chiến binh nhân sự vững nghiệp vụ

Con người là một trong những yếu tố quan trọng của công ty, là tài sản quý giá của doanh nghiệp. Chính vì thế,...

Xem khóa học

Cách sử dụng đối tượng NOW trong VBA thay cho hàm NOW

Hàm =NOW() trong Excel là hàm giúp tạo ra 1 giá trị thời gian theo đúng thời gian thực, gồm cả Ngày/tháng/năm và giờ:phút:giây.

Ví dụ:

Hướng dẫn cách dùng hàm NOW TODAY TIME trong VBA Excel

Kết quả của hàm sẽ luôn thay đổi mỗi khi bạn nhập bất kỳ công thức nào trong Excel.

Để tránh việc phải sử dụng hàm NOW, chúng ta có thể sử dụng câu lệnh sau đây trong VBA:

Hướng dẫn cách dùng hàm NOW TODAY TIME trong VBA Excel

Trong hình trên, chúng ta có sử dụng Macro trong VBA là câu lệnh NowByVBA

Tại vị trí ô B3 của Sheet1 (là Sheet đang làm việc) điền giá trị thời gian hiện tại là NOW

Kết quả của câu lệnh VBA và hàm NOW là giống nhau. Tuy nhiên câu lệnh VBA trên chỉ hoạt động khi được gọi ra, và kết quả sẽ là 1 giá trị cố định tại 1 thời điểm. Còn hàm NOW() sẽ luôn biến động và thay đổi giá trị. Do đó chúng ta có thể sử dụng cách lấy thời gian hiện tại bằng NOW trong VBA sẽ tốt hơn.

Cách sử dụng đối tượng DATE trong VBA thay cho hàm TODAY

Khác với hàm NOW(), hàm TODAY() trong Excel giúp xác định đối tượng Ngày/tháng/năm hiện tại.

Ví dụ:

Hướng dẫn cách dùng hàm NOW TODAY TIME trong VBA Excel

Chúng ta có câu lệnh thay thế cho hàm TODAY trong VBA như sau:

Hướng dẫn cách dùng hàm NOW TODAY TIME trong VBA Excel

Trong VBA, chúng ta sử dụng đối tượng là DATE chứ không phải là Today. Câu lệnh TodayByVBA được hiểu là:

Tại vị trí ô B5 của Sheet1 (là sheet đang áp dụng) gán giá trị Date là ngày hiện tại.

Kết quả tương tự như việc sử dụng hàm TODAY(), tuy nhiên giá trị này không thay đổi 1 cách tự động mà chỉ xác định mỗi khi kích hoạt macro TodayByVBA.

Xác định giờ hiện tại với câu lệnh Time trong VBA

Ngoài ra trong Excel không có hàm giúp xác định trực tiếp giá trị giờ:phút:giây tại thời điểm hiện tại. Chúng ta chỉ có thể xác định giờ phút giây theo hàm NOW() rồi kết hợp với các hàm HOUR, MINUTE, SECOND. Ví dụ như:

Hướng dẫn cách dùng hàm NOW TODAY TIME trong VBA Excel

Khá phức tạp phải không nào? Tuy nhiên trong VBA việc này lại thực hiện khá đơn giản với câu lệnh sau:

Hướng dẫn cách dùng hàm NOW TODAY TIME trong VBA Excel

Như vậy với 3 câu lệnh trong VBA, chúng ta hoàn toàn có thể thay thế được các hàm NOW, TODAY, TIME để có thể làm việc với đối tượng thời gian thực. Đây cũng là 1 biện pháp rất hiệu quả giúp file Excel của bạn tăng tốc độ tính toán, giảm các công thức động trong Excel.

Ngoài ra các bạn có thể tham khảo 1 số bài viết cùng chủ đề thời gian như:

Tự động điền thời gian theo tổng số ngày

Hàm thời gian thông dụng trong Excel

Cộng tổng thời gian quá 24 giờ trong Excel

★★★★★ 5 ★ 1 👤 0 ▥ 0
Quảng cáo

Bạn nên đọc

Leave a Reply

Your email address will not be published. Required fields are marked *

Quảng cáo

Cũ vẫn chất

Xem thêm