Macro định dạng ngày tháng năm

be09

Member
Hội viên mới
Để chào mừng lễ 2/9/2012 tôi nêu lên 1 Macro đơn giản mà hiệu quả trong công việc.

Trong nhập liệu, nhất là gom nhiều File vào 1 (do nhiều người nhập liệu) nhiều khi định dạng ngày tháng không đúng hoặc ngược (năm tháng ngày) dẫn đến tổng hợp số liệu có thể bị sai lệch.
Để định dạng lại ngày tháng cho đúng các bạn sử dụng macro sau trong module để dùng chung cho tất cả các sheet (nhấn Alt+F11 > Insert > module, cửa sổ Code hiện ra) Copy và dán đoạn code sau vào module.

Mã:
Sub NgayThang()
' Macro2 Macro 2/9/2012 by be09
'Định dạng ngày tháng năm
    Selection.NumberFormat = "mm/dd/yyyy"
End Sub
''''''''''''''''''''''''''''''''''
Sub ThangNgay()
' Macro1 Macro 2/9/2012 by be09
'Định dạng tháng ngày năm
    Selection.NumberFormat = "dd/mm/yyyy"
End Sub

Nhấn Alt+F11 để trở về bảng tính, chọn cả cột cần định dạng.
Vào Tools >Macro >Macro chọn NgayThang (sẽ định dạng ngày, tháng, năm).
Chọn ThangNgay (sẽ định dạng tháng, ngày, năm).

Chúc các bạn thực hiện tốt trong công việc.
 
Sửa lần cuối:
Ðề: Macro định dạng ngày tháng năm

Theo tôi , nếu ta kết hợp các hàm Text và Value trong một bộ dữ liệu cụ thể sẽ hiệu quả hơn trong việc điều chỉnh định dạng cho kiểu dữ liệu ngày tháng.
 
Ðề: Macro định dạng ngày tháng năm

Theo tôi , nếu ta kết hợp các hàm Text và Value trong một bộ dữ liệu cụ thể sẽ hiệu quả hơn trong việc điều chỉnh định dạng cho kiểu dữ liệu ngày tháng.

Dùng hàm thứ nhất là mất công Fill xuống, thứ 2 nếu sử dụng cho vài ngàn dòng thì nó nặng File và thao tác lại chậm chạp, nếu mình có cái gì đó nhanh hơn sẽ tốt hơn nhiều.
 
Sửa lần cuối:
Ðề: Macro định dạng ngày tháng năm

Dùng hàm thứ nhất là mất công Fill xuống, thứ 2 nếu sử dụng cho vài ngìn dòng thì nó nặng File và thao tác lại chậm chạp, nếu mình có cái gì đó nhanh hơn sẽ tốt hơn nhiều.

Cái gì cũng có hiệu quả riêng của nó khi sử dụng miễn là ta biết phải sử dụng nó như thế nào và vào lúc nào . Đồng ý là việc sử dụng Macro cho phép tự động hóa cao độ, nhưng sẽ là bất cập khi sử dụng Macro nếu là bộ dữ liệu không đồng nhất. Mời bạn xem bộ dữ liệu trong ví dụ sau (chú ý trường ngày tháng):
 

Đính kèm

  • Vidu.xls
    52 KB · Lượt xem: 420
Sửa lần cuối:
Ðề: Macro định dạng ngày tháng năm

Cái gì cũng có hiệu quả riêng của nó khi sử dụng miễn là ta biết phải sử dụng nó như thế nào và vào lúc nào . Đồng ý là việc sử dụng Macro cho phép tự động hóa cao độ, nhưng sẽ là bất cập khi sử dụng Macro nếu là bộ dữ liệu không đồng nhất. Mời bạn xem bộ dữ liệu trong ví dụ sau (chú ý trường ngày tháng):

Cái này trong bài tôi có nói rồi do nhiều người nhập liệu, nhiều khi định dạng ngày tháng không đúng hoặc ngược hoặc có thể nhập ở kiểu chuỗi (String). cách khắc phục những sai sót này như sau:
Ở kiểu chuỗi (String): sẽ có dấu tam giác màu xanh bên trái phía trên Cell, bạn cover nó bằng cách click vào Cell đó giữ phím xong kéo thanh cuộn xuống và chọn cell cuối cùng, rê chuột vào khung hình vuông có dấu chấm than màu đen nó sẽ hiện ra tam giác màu đen, click vào nó và chọn Conver to number thì tất cả các Cell kiểu chuỗi (String) sẽ chuyển sang kiểu số (Number).
Đối với trường hợp nhập ngược tháng, ngày bạn dùng phương pháp sort tất cả các Cell nhập ngược nó sẽ chuyển lên trên cùng lúc này bạn chỉ cần chọn vùng bị nhập ngược và chọn Macro ThangNgay nó sẽ trả kết quả về cho bạn.
Cách khác không cần sort: Bạn copy vùng nhập ngày tháng vào Edit > Paste Special > value để trả kiểu chuỗi (String) về kiểu Number và chọn Macro ThangNgay nó sẽ trả kết quả về ngày tháng năm cho bạn.
Nói chung có nhiều cách để thực hiện việc sửa lỗi khi có nhiều người nhập chưa đúng định dạng, việc còn lại là ta sửa cách nào cho nhanh chóng.
Ở đây tôi chỉ đưa ra giải pháp, còn vận dụng nó để áp dụng vào công việc như thế nào là tùy người sử dụng.
 
Sửa lần cuối:
Ðề: Macro định dạng ngày tháng năm

Bạn TQChanh chắc còn nhớ lần tôi nói về cách nhập dữ liệu của nhiều người chứ nhỉ và với cách sử dụng Excel như thế thì đối với các bạn ấy việc sử dụng các hàm có sẵn đã là vấn đề rồi huống gì nói đến việc sử dụng VBA .
Chúng ta dù gì cũng có một kiến thức nhất định về Excel và đều biết sử dụng VBA để phục vụ công việc của mình , tuy nhiên VBA vẫn là cái gì đó tương đối khó tiếp cận với hầu hết kế toán chúng ta . Chính do đó , theo tôi, để mang tính đại chúng ta nên tính đến phương án tiếp cận sao cho dễ sử dụng, ít xảy ra sai sót, và hỗ trợ được nhiều người nhất .
 
Ðề: Macro định dạng ngày tháng năm

Bạn TQChanh chắc còn nhớ lần tôi nói về cách nhập dữ liệu của nhiều người chứ nhỉ và với cách sử dụng Excel như thế thì đối với các bạn ấy việc sử dụng các hàm có sẵn đã là vấn đề rồi huống gì nói đến việc sử dụng VBA .
Chúng ta dù gì cũng có một kiến thức nhất định về Excel và đều biết sử dụng VBA để phục vụ công việc của mình , tuy nhiên VBA vẫn là cái gì đó tương đối khó tiếp cận với hầu hết kế toán chúng ta . Chính do đó , theo tôi, để mang tính đại chúng ta nên tính đến phương án tiếp cận sao cho dễ sử dụng, ít xảy ra sai sót, và hỗ trợ được nhiều người nhất .

Ở trên tôi muốn đưa ra giải pháp dùng VBA, nếu bạn muốn đại chúng thì tôi đưa ra phương pháp dùng hàm định dạng đúng theo kiểu ngày tháng năm để các bạn nào chưa biết về VBA thì dùng nó, công thức tại cell D5 (theo File ví dụ của bạn) như sau:
=RIGHT(TEXT(C5,"dd/mm/yyyy"),10)
 
Sửa lần cuối:

CẨM NANG KẾ TOÁN TRƯỞNG


Liên hệ: 090.6969.247

KÊNH YOUTUBE DKT

Cách làm file Excel quản lý lãi vay

Đăng ký kênh nhé cả nhà

SÁCH QUYẾT TOÁN THUẾ


Liên hệ: 090.6969.247

Top