Cách tự động sắp xếp trong Excel cực đơn giản và nhanh chóng

Nội dung được viết bởi Bến Hà Trương

Trong Excel, tính năng Sort có thể giúp bạn sắp xếp thứ tự tăng dần hoặc giảm dần của dữ liệu. Nhưng nếu sau đó thêm dữ liệu mới vào bảng, bạn sẽ cần phải sắp xếp lại toàn bộ. Vậy có cách nào hiệu quả hơn không?

Hôm nay, cùng Gitiho khám phá cách tự động sắp xếp trong Excel bằng công thức và VBA đơn giản, nhé!

Cách tự động sắp xếp thời gian theo thứ tự

Sử dụng công thức

Ví dụ: Chúng ta cần sắp xếp ngày tháng trong cột A theo thứ tự tăng dần. 

1. Bạn điền công thức sau vào ô C2:

=INDEX($A$2:$A$15, MATCH(ROWS($A$2:A2), COUNTIF($A$2:$A$15, "<=" & $A$2:$A$15), 0))

Sau khi điền xong công thức, hãy nhấn tổ hợp phím Ctrl + Shift + Enter và bạn sẽ nhận được một dãy số, sau đó kéo công thức xuống các ô bạn muốn sử dụng.

Lưu ý : Trong công thức trên: A2: A15 là phạm vi ngày ban đầu của bạn mà bạn muốn tự động sắp xếp theo thứ tự tăng dần.

Cách tự động sắp xếp ngày tháng bằng công thức

2. Sau đó, định dạng các số dưới dạng định dạng ngày tháng bằng cách nhấp vào Short Date từ danh sách thả xuống General trong tab Home.

nhấp vào Short Date từ danh sách thả xuống General  trong tab Home

3. Sau đó, các số thứ tự đã được chuyển đổi sang định dạng ngày, đồng thời chúng cũng được sắp xếp theo thứ tự tăng dần.

các số thứ tự đã được chuyển đổi sang định dạng ngày và ngày ban đầu cũng đã được sắp xếp

4. Từ bây giờ, khi bạn nhập ngày mới hoặc thay đổi ngày trong cột A, ngày trong cột C sẽ tự động được sắp xếp theo thứ tự tăng dần, xem ảnh chụp màn hình:

tự động sắp xếp ngày tháng khi cập nhật

Xem thêm: Cách tạo ngày tháng tăng dần trong Excel cực nhanh chóng

Cách tự động xếp ngày tháng bằng mã VBA

Mã VBA sau có thể giúp bạn tự động xếp ngày trong cột ban đầu khi bạn nhập ngày mới hoặc thay đổi ngày khi bạn cần.

1. Chuyển đến trang tính mà bạn muốn tự động sắp xếp ngày khi bạn nhập hoặc thay đổi ngày.

2. Nhấp chuột phải vào tab trang tính và chọn View Code  xem từ trình đơn ngữ cảnh. Trong cửa sổ Microsoft Visual Basic for Applications hiện ra, vui lòng sao chép và dán mã đoạn mã bên dưới vào cửa sổ Module trống:

Private Sub Worksheet_Change(ByVal Target As Range)
    'Updateby Extendoffice 20160606
    On Error Resume Next
    If Not Application.Intersect(Target, Me.Columns(1)) Is Nothing Then
        If Target.Count = 1 Then
            Me.Range("A1").Sort Key1:=Me.Range("A2"), Order1:=xlAscending, Header:=xlYes, _
                                OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
        End If
    End If
End Sub

Lưu ý: Trong đoạn mã trên, ngày đã nhập sẽ được tự động sắp xếp trong cột A, bạn có thể thay đổi ô A1 và A2 thành các ô khác tùy theo bảng dữ liệu của bạn.

Cách tự động sắp xếp ngày tháng bằng mã VBA

 

3. Từ bây giờ, khi bạn nhập ngày vào cột A, ngày sẽ tự động được sắp xếp theo thứ tự tăng dần.

Cách tự động sắp xếp trong Excel theo bảng chữ cái

Nếu có một số thay đổi hoặc dữ liệu mới được thêm vào trong Cột A, dữ liệu sẽ được sắp xếp tự động như hình minh họa sau. Làm thế nào bạn có thể đạt được công việc này?

Cách tự động sắp xếp dữ liệu theo thứ tự bảng chữ cái trong Excel

Để tự động sắp xếp dữ liệu theo thứ tự bảng chữ cái trong một cột, vui lòng thực hiện như sau:

1. Nhập công thức này vào ô D2: 

=SORT(A2:B, 1, TRUE)

Sau đó nhấn phím Enter , dữ liệu cụ thể đã được sắp xếp theo thứ tự tăng dần, xem ảnh chụp màn hình:

Cách tự động sắp xếp dữ liệu theo thứ tự bảng chữ cái trong Excel

Lưu ý:

  • Trong công thức trên: A2:B là phạm vi dữ liệu mà bạn muốn sắp xếp.
  • 1 là chỉ số cột trong phạm vi dữ liệu (A2:B) mà bạn muốn sắp xếp theo
  • Nếu bạn muốn sắp xếp dữ liệu theo thứ tự giảm dần, hãy áp dụng công thức này: =SORT (A2:B, 1, false).

2. Từ bây giờ, khi bạn nhập dữ liệu mới hoặc thay đổi dữ liệu trong cột, dữ liệu sẽ được sắp xếp tự động, hãy xem ảnh chụp màn hình:

dữ liệu sẽ được sắp xếp tự động

Cách tự động sắp xếp các cột theo giá trị

Ví dụ: Bạn có một bảng mua hàng như ảnh chụp màn hình bên trái được hiển thị. Bây giờ bạn muốn cột Giá được sắp xếp tự động khi bạn nhập giá mới vào cột này. Và macro VBA có thể giúp bạn.

Cách tự động sắp xếp các cột theo giá trị trong Excel

Macro VBA này sẽ tự động sắp xếp tất cả dữ liệu trong một cột cụ thể ngay sau khi bạn nhập dữ liệu mới hoặc thay đổi giá trị trong cột trong Excel.

1. Bấm chuột phải vào tên trang tính hiện tại, sau đó bấm View Code từ menu chuột phải.

Cách tự động sắp xếp các cột theo giá trị trong Excel

2. Trong hộp thoại mở Microsoft Visual Basic for Application, hãy dán mã macro VBA sau vào cửa sổ đang mở.

Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Not Intersect(Target, Me.Range("B:B")) Is Nothing Then
        Me.Range("B1").Sort Key1:=Me.Range("B2"), _
                           Order1:=xlAscending, Header:=xlYes, _
                           OrderCustom:=1, MatchCase:=False, _
                           Orientation:=xlTopToBottom
    End If
End Sub

Lưu ý: Trong đoạn mã VBA trên, B:B có nghĩa là mã sẽ tự động sắp xếp dữ liệu của Cột B, B1 là ô đầu tiên trong Cột B, B2 là ô thứ hai trong Cột B và bạn có thể thay đổi chúng dựa trên nhu cầu của mình.

VBA: Tự động sắp xếp cột trong Excel

3. Sau đó quay trở lại trang tính, khi bạn nhập một số mới vào cột Giá hoặc sửa đổi bất kỳ giá hiện có nào, cột Giá sẽ tự động được sắp xếp theo thứ tự tăng dần.

Cách tự động sắp xếp trong Excel cực đơn giản và nhanh chóng

Lưu ý: Khi bạn nhập một số mới vào cột Price, hãy chắc chắn rằng bạn nhập nó vào ô trống ngay dưới số cuối cùng của bảng dữ liệu. Nếu có bất kỳ ô trống nào giữa số mới và số cũ, cột sẽ không được tự động sắp xếp.

Kết luận

Hy vọng qua bài viết này, bạn đã biết cách tự động sắp xếp trong Excel theo giá trị, ngày tháng và bảng chữ cái. Chúc bạn học tốt!

KHÓA HỌC EXCEL ONLINE HOÀN TOÀN MIỄN PHÍ

Khóa học với hơn 14000 HỌC VIÊN đang học và đánh giá trung bình 4.76 SAO

0/5 - (0 bình chọn)

0/5 - (0 bình chọn)

0 thảo luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông