Thực hiện sắp xếp ngẫu nhiên là một cách nhanh chóng và dễ dàng để đảm bảo rằng bạn kết thúc với tất cả các trường hợp xuất hiện với xác suất bằng nhau. Trong hướng dẫn này, chúng ta sẽ nói về cách dễ dàng sắp xếp ngẫu nhiên hoặc xáo trộn danh sách trong Excel trong vài bước.
Trong phần này, tôi sẽ hướng dẫn bạn cách xáo trộn danh sách bằng các hàm Excel tích hợp sẵn.
Người dùng của bất kỳ phiên bản Excel nào có thể sắp xếp ngẫu nhiên tập dữ liệu gốc của họ bằng cách sử dụng RAND chức năng với sự giúp đỡ của Sắp xếp tính năng, hãy làm theo các bước dưới đây.
Bước 1: Nhập công thức RAND
Chọn ô bên cạnh ô trên cùng của danh sách mà bạn sẽ chọn ngẫu nhiên, nhập công thức RAND bên dưới và nhấn đăng ký hạng mục thi.
=RAND()
Bước 2: Điền công thức RAND vào các ô khác
Nhấp đúp vào núm điều khiển điền (hình vuông nhỏ màu xanh lục ở góc dưới bên phải) của ô công thức để áp dụng công thức cho các ô bên dưới.
Bước 3: Sắp xếp kết quả RAND để xáo trộn danh sách
1. Lựa chọn B2: B8, danh sách chứa công thức RAND.
2. Nhấp vào Sắp xếp & Lọc > Sắp xếp Nhỏ nhất đến Lớn nhất trong Chỉnh sửa nhóm trên Trang chủ tab.
3. Trong cửa sổ bật lên Cảnh báo sắp xếp hộp thoại, chọn Mở rộng sự lựa chọn, và sau đó nhấp vào Sắp xếp.
Kết quả
Bây giờ, bạn đã sẵn sàng! Danh sách được sắp xếp ngẫu nhiên như hình bên dưới.
Nếu bạn là người dùng các phiên bản Excel mới hơn, chẳng hạn như Excel for Microsoft 365 hoặc Excel 2021 hoặc Excel for the Web, thì RANDARRAY, SẮP XẾP và ROWS công thức sẽ giúp bạn nhanh chóng có được danh sách đã xáo trộn tại vị trí bạn đã chỉ định.
Bước 1: Nhập công thức RANDARRAY, SORTBY và ROWS
Chọn một ô trống mà bạn muốn lấy kết quả ngẫu nhiên, nhập công thức bên dưới (Lưu ý bạn nên thay đổi A2: A8 trong công thức bên dưới vào danh sách ban đầu bạn muốn ngẫu nhiên hóa) và nhấn đăng ký hạng mục thi.
=SORTBY(A2:A8,RANDARRAY(ROWS(A2:A8)))
(Tùy chọn) Bước 2: Sao chép và dán kết quả công thức để có thể chỉnh sửa
Nếu bạn chỉ muốn xem một kết quả ngẫu nhiên, bạn có thể bỏ qua bước này. Nếu bạn muốn chỉnh sửa danh sách được xáo trộn ngẫu nhiên, bạn chỉ nên sao chép kết quả công thức và dán các giá trị:
1. Chọn kết quả công thức và nhấn Ctrl + C để sao chép nó.
2. Nhấp chuột phải vào ô mà bạn sẽ dán kết quả đã sao chép. (Bạn cũng có thể dán giá trị vào vị trí ban đầu của nó.)
3. Chọn Chỉ dán các giá trị tùy chọn từ menu chuột phải.
Kết quả
Bây giờ bạn sẽ nhận được một danh sách được xáo trộn và có thể chỉnh sửa như hình bên dưới.
Nếu bạn cảm thấy mệt mỏi với việc sử dụng các công thức và có ý định sử dụng sự trợ giúp của một phần bổ trợ, Kutools cho Excel'S Sắp xếp / Chọn phạm vi một cách ngẫu nhiên tính năng này có thể giúp bạn thực hiện sắp xếp ngẫu nhiên dễ dàng hơn nhiều với nhiều tùy chọn hơn. Xin thưa như sau:
Đầu tiên, chọn danh sách bạn sẽ xáo trộn. Và sau đó chọn Kutools > Phạm vi > Sắp xếp / Chọn phạm vi một cách ngẫu nhiên. Trong cửa sổ bật lên Sắp xếp / Chọn phạm vi một cách ngẫu nhiên hộp thoại, chọn Toàn bộ hàng, và sau đó nhấp vào Ok.
Nếu bạn muốn chọn ngẫu nhiên một danh sách bằng phương pháp VBA, vui lòng thực hiện như sau.
Bước 1: Chọn danh sách bạn sẽ xáo trộn
Bước 2: Copy mã VBA vào cửa sổ Module
1. nhấn Ctrl + F11 để mở trình soạn thảo VBA, rồi bấm Chèn > Mô-đun để mở cửa sổ mã Mô-đun.
2. Sao chép và dán mã VBA bên dưới vào cửa sổ Mô-đun đã mở.
Mã VBA: Sắp xếp ngẫu nhiên một danh sách
Sub RandomSort()
'Update by ExtendOffice
Dim xRg As Range
Dim xNum, xF, xI As Integer
Dim xWSh, xAWSh As Worksheet
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xAWSh = Application.ActiveSheet
Set xRg = ActiveWindow.RangeSelection
Set xWSh = Worksheets.Add
xNum = xRg.Count
For xF = xNum To 1 Step -1
xI = WorksheetFunction.RandBetween(1, xF)
xWSh.Range("A1").Value = xRg.Item(xI)
xRg.Item(xI) = xRg.Item(xF)
xRg.Item(xF) = xWSh.Range("A1")
Next
xWSh.Delete
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
Trong cửa sổ mã, nhấn F5 hoặc nhấp vào để chạy mã này.
Kết quả