RaoVat24h
Office Word

Cách sắp xếp dữ liệu trong Excel bằng VBA (Hướng dẫn từng bước)

Advertisement
Excel đã có một vài cách để sắp xếp dữ liệu một cách nhanh chóng.
Bạn có thể dễ dàng sắp xếp một tập dữ liệu bằng cách sử dụng các biểu tượng sắp xếp trong ruy-băng hoặc hộp thoại sắp xếp.
Sắp xếp tùy chọn Dữ liệu trong ruy-băng

Sau đó, tại sao bạn cần phải biết làm thế nào để làm điều này bằng cách sử dụng VBA?
Việc biết cách sắp xếp dữ liệu bằng cách sử dụng VBA có thể hữu ích khi được bao gồm như là một phần của mã của bạn. Ví dụ: giả sử bạn nhận được tập dữ liệu hàng ngày / hàng tuần mà bạn cần định dạng và sắp xếp theo thứ tự cụ thể.
Bạn có thể tạo macro để thực hiện tất cả điều này cho bạn chỉ bằng một cú nhấp chuột. Điều đó sẽ giúp bạn tiết kiệm rất nhiều thời gian và công sức mỗi khi bạn làm điều đó.
Ngoài ra, nếu bạn tạo trang tổng quan Excel , bạn có thể đưa khả năng sắp xếp Excel lên một cấp độ mới bằng cách cho phép người dùng sắp xếp dữ liệu bằng cách nhấp đúp vào tiêu đề (như được hiển thị bên dưới).
Sắp xếp dữ liệu bằng VBA - Trình diễn nhấp đúp
Tôi sẽ giới thiệu cách tạo ra điều này sau trong hướng dẫn này. Đầu tiên hãy nhanh chóng tìm hiểu những điều cơ bản.

Hiểu về phương pháp Range.Sort trong Excel VBA

Khi sắp xếp bằng VBA, bạn cần sử dụng phương thức Range.Sort trong mã của bạn.
‘Phạm vi’ sẽ là dữ liệu mà bạn đang cố sắp xếp. Ví dụ: nếu bạn sắp xếp dữ liệu trong A1: A10, thì ‘Phạm vi’ sẽ là Phạm vi (“A1: A10”).
Bạn cũng có thể tạo một dải ô được đặt tên  và sử dụng nó thay vì tham chiếu ô. Ví dụ: nếu tôi tạo một dải ô được đặt tên ‘DataRange’ cho các ô A1: A10, thì tôi cũng có thể sử dụng Phạm vi (“DataRange”)
Với phương pháp sắp xếp, bạn cần cung cấp một số thông tin bổ sung thông qua các tham số. Dưới đây là các thông số chính bạn cần biết:
  • Key – ở đây bạn cần phải xác định cột mà bạn muốn sắp xếp. Ví dụ: nếu bạn muốn sắp xếp cột A, bạn cần sử dụng khóa: = Phạm vi (“A1”)
  • Đặt hàng – tại đây bạn chỉ định bạn muốn sắp xếp theo thứ tự tăng dần hay thứ tự giảm dần. Ví dụ: nếu bạn muốn sắp xếp theo thứ tự tăng dần, bạn sẽ sử dụng Order: = xlAscending
  • Tiêu đề – tại đây bạn chỉ định xem tập dữ liệu của bạn có tiêu đề hay không. Nếu nó có tiêu đề, việc sắp xếp bắt đầu từ hàng thứ hai của tập dữ liệu, nếu không nó sẽ bắt đầu từ hàng đầu tiên. Để xác định rằng dữ liệu của bạn có tiêu đề, bạn sẽ sử dụng Tiêu đề: = xlYes
Trong khi ba trường hợp này trong hầu hết các trường hợp, bạn có thể đọc thêm về các tham số trong bài viết này .
Bây giờ chúng ta hãy xem cách sử dụng phương thức Range.Sort trong VBA để sắp xếp dữ liệu trong Excel.

Sắp xếp một cột đơn không có tiêu đề

Giả sử bạn có một cột đơn không có tiêu đề (như được hiển thị bên dưới).
Dữ liệu để sắp xếp với VBA - không có tiêu đề cột đơn
Bạn có thể sử dụng mã bên dưới để sắp xếp nó theo thứ tự tăng dần.

Sub SortDataWithoutHeader()
Range("A1:A12").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlNo
End Sub
Lưu ý rằng tôi đã chỉ định phạm vi dữ liệu theo cách thủ công là Phạm vi (“A1: A12”).
Trong trường hợp có thể có thay đổi về dữ liệu và giá trị có thể được thêm / xóa, bạn có thể sử dụng mã bên dưới tự động điều chỉnh dựa trên các ô được điền trong tập dữ liệu.
Sub SortDataWithoutHeader()
Range("A1", Range("A1").End(xlDown)).Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlNo
End Sub

Lưu ý rằng thay vì Range (“A1: A12”), tôi đã sử dụng, Phạm vi (“A1”, Phạm vi (“A1”) .Kết thúc (xlDown)).
Điều này sẽ kiểm tra ô được điền liên tiếp cuối cùng trong cột và bao gồm nó trong sắp xếp. Trong trường hợp có khoảng trống, nó sẽ chỉ xem xét dữ liệu cho đến ô trống đầu tiên.




Rate this post

DienDan.Edu.Vn

DienDan.Edu.Vn Cám ơn bạn đã quan tâm và rất vui vì bài viết đã đem lại thông tin hữu ích cho bạn.
DienDan.Edu.Vn! là một website với tiêu chí chia sẻ thông tin,... Bạn có thể nhận xét, bổ sung hay yêu cầu hướng dẫn liên quan đến bài viết. Vậy nên đề nghị các bạn cũng không quảng cáo trong comment này ngoại trừ trong chính phần tên của bạn.
Cám ơn.

Đăng bình luận

(+84) (901) 369.468