Cách tự động sắp xếp dữ liệu theo bất kỳ cột nào bằng VBA trong Microsoft Excel 2010
Trong bài viết này, bạn sẽ học cách tự động sắp xếp dữ liệu theo một cột cụ thể.
[.underline] # Hãy để chúng tôi lấy một ví dụ: # Sau đây là ảnh chụp nhanh dữ liệu chúng tôi có. Tham khảo ảnh chụp nhanh dưới đây:
Chúng tôi muốn một mã sẽ tự động sắp xếp dữ liệu trên cột A khi chúng tôi nhập.
Nhấp vào tab Nhà phát triển Từ nhóm Mã, chọn Visual Basic
Nhập mã sau vào trang tính bạn đang làm việc. (sheet1 trong ví dụ của chúng tôi)
Private Sub Worksheet_Change (ByVal Target As Range)
Khi có lỗi Tiếp tục tiếp theo
If Not Intersect (Target, Range (“A: A”)) Không có gì thì
Range (“A1”). Sắp xếp Key1: = Range (“A2”), _
Order1: = xlAscending, Header: = xlYes, _
OrderCustom: = 1, MatchCase: = False, _
Định hướng: = xlTopToBottom
Kết thúc Nếu
End Sub
Sau đây là kết quả của đoạn mã trên.
Đoạn mã trên sẽ kích hoạt bất cứ khi nào có thay đổi trong cột A, nếu bạn muốn kích hoạt macro khi có bất kỳ thay đổi nào trong cột B thì bạn phải điều chỉnh một chút
Private Sub Worksheet_Change (ByVal Target As Range)
Khi có lỗi Tiếp tục tiếp theo
If Not Intersect (Target, Range (“B: B”)) Không có gì thì
Range (“B1”). Sắp xếp Key1: = Range (“B2”), _
Order1: = xlAscending, Header: = xlYes, _
OrderCustom: = 1, MatchCase: = False, _
Định hướng: = xlTopToBottom
Kết thúc Nếu
End Sub
Bằng cách này, bạn có thể dễ dàng sắp xếp dữ liệu theo bất kỳ cột cụ thể nào. Mã sẽ được kích hoạt và sắp xếp dữ liệu tự động khi bạn nhập thông tin vào cột A (trong ví dụ đầu tiên) & cột B (trong ví dụ thứ hai). Điều này sẽ tiết kiệm rất nhiều thời gian nếu chúng ta phải sắp xếp dữ liệu một cách thường xuyên.