Hướng Dẫn Cách Dùng Hàm NOW TODAY TIME Trong VBA Excel
Có thể bạn quan tâm
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 Học Excel Online 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
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ụ:
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:
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ụ:
Chúng ta có câu lệnh thay thế cho hàm TODAY trong VBA như sau:
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ư:
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:
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
Từ khóa » Hàm Lấy Ngày Tháng Trong Vba
-
Các Hàm Xử Lý Ngày Tháng Trong VBA (Date & Time) - Freetuts
-
Hàm Date() Trong VBA - Học Lập Trình VBA Online - VietTuts
-
Hàm Xử Lý Date Và Time Trong VBA - VietTuts
-
Hướng Dẫn Cách Dùng Hàm NOW TODAY TIME Trong ...
-
[Hỏi] Format Ngày Tháng Trong VBA | Giải Pháp Excel
-
Macro VBA – Date And Time (Ngày Và Giờ) - Excel Cơ Bản
-
Hướng Dẫn Cách Dùng Hàm NOW TODAY TIME Trong VBA Excel
-
Hàm Lấy Giá Trị Ngày Tháng Trong VBA
-
Làm Cách Nào để Lấy Ngày Cuối Tháng Trong Excel? - ExtendOffice
-
[VBA Excel] Cách Tách Ngày Tháng Năm Từ Chuỗi Văn Bản
-
Lấy Giá Trị Ngày Tháng Trong Sheet để Thực Hiện Trên VBA?
-
Date And Time (ngày Và Giờ) Trong VBA Excel - Tài Liệu - 123doc
-
Các Hàm Vba Trong Excel 2010 / TOP #10 Xem Nhiều Nhất & Mới ...
-
Hướng Dẫn Cách Dùng Hàm NOW TODAY TIME Trong VBA Excel