Xin hướng dẫn Random kết quả không bị trùng

Liên hệ QC

Minwon

Thành viên mới
Tham gia
2/7/20
Bài viết
2
Được thích
2
Mình đang tạo một bảng excel gồm list (màu vàng) là các từ anh văn đã học, dùng để ôn lại. Mình sử dụng hàm Randbetween để pick ra một từ sau đó viết lại từ đó (màu xanh) và dịch nghĩa. Yêu cầu đặt ra là khi chạy hàm Randbetween thì nó sẽ dựa trên từ mình vừa viết mà chạy ra các giá trị còn lại để không bị trùng với các giá trị trong list màu vàng. Xin các anh chị hướng dẫn giúp đỡ mình phần công thức không biết phải chạy như thế nào vì mình không biết VBA. Xin cám ơn.

1593627938851.png1593627938851.png
 
Mình đang tạo một bảng excel gồm list (màu vàng) là các từ anh văn đã học, dùng để ôn lại. Mình sử dụng hàm Randbetween để pick ra một từ sau đó viết lại từ đó (màu xanh) và dịch nghĩa. Yêu cầu đặt ra là khi chạy hàm Randbetween thì nó sẽ dựa trên từ mình vừa viết mà chạy ra các giá trị còn lại để không bị trùng với các giá trị trong list màu vàng. Xin các anh chị hướng dẫn giúp đỡ mình phần công thức không biết phải chạy như thế nào vì mình không biết VBA. Xin cám ơn.

View attachment 240283View attachment 240283
Mấy từ tiếng Anh bạn học hay quá nè, gửi cái file cho mình học chung với, hi.
Nói chứ bạn gửi file lên mình thử làm xem ! :)

ps: bạn thức khuya quá đó.
 
Mình đang tạo một bảng excel gồm list (màu vàng) là các từ anh văn đã học, dùng để ôn lại. Mình sử dụng hàm Randbetween để pick ra một từ sau đó viết lại từ đó (màu xanh) và dịch nghĩa. Yêu cầu đặt ra là khi chạy hàm Randbetween thì nó sẽ dựa trên từ mình vừa viết mà chạy ra các giá trị còn lại để không bị trùng với các giá trị trong list màu vàng. Xin các anh chị hướng dẫn giúp đỡ mình phần công thức không biết phải chạy như thế nào vì mình không biết VBA. Xin cám ơn.

View attachment 240283View attachment 240283
Bạn dùng 1 cột phụ đặt hàm RAND(), sau đó dò tìm giá trị INDEX hoặc VLOOKUP tìm giá trị nhỏ nhất tăng dần (SMALL) dựa theo cột phụ này. Có thể xảy ra trùng như tỷ lệ rất thấp, vì RAND() tạo ra 1 số có 15 chữ số lận.
 
Công thức mảng:
Mã:
=INDEX(B1:B1000,SMALL(IF((COUNTIF(N1:N100,B1:B1000)=0)*LEN(B1:B1000),ROW(B1:B1000),""),RANDBETWEEN(1,COUNTA(B1:B1000)-COUNTA(N1:N100))))
Để dùng công mảng, nhập xong nhấn Ctrl + Shift + Enter.
 
Bạn dùng 1 cột phụ đặt hàm RAND(), sau đó dò tìm giá trị INDEX hoặc VLOOKUP tìm giá trị nhỏ nhất tăng dần (SMALL) dựa theo cột phụ này. Có thể xảy ra trùng như tỷ lệ rất thấp, vì RAND() tạo ra 1 số có 15 chữ số lận.
Quá hợp lí rồi, giá trị nhỏ nhất tăng dần có thể dùng hàm Counta cột màu xanh, mỗi lần bạn ghi lại 1 từ mới vào cột xanh thì một từ mới khác sẽ xuất hiện ở ô E5.
 
Bạn dùng 1 cột phụ đặt hàm RAND(), sau đó dò tìm giá trị INDEX hoặc VLOOKUP tìm giá trị nhỏ nhất tăng dần (SMALL) dựa theo cột phụ này. Có thể xảy ra trùng như tỷ lệ rất thấp, vì RAND() tạo ra 1 số có 15 chữ số lận.
Tìm không trùng thì dễ rồi, vấn đề là không dùng VBA thì không tạo được danh sách các từ đã dùng tại vùng màu xanh
 
Mấy từ tiếng Anh bạn học hay quá nè, gửi cái file cho mình học chung với, hi.
Nói chứ bạn gửi file lên mình thử làm xem ! :)

ps: bạn thức khuya quá đó.
Cám ơn bạn, nhờ các anh chị ở đây mình làm được rồi. Còn mấy từ này mình cứ gặp từ nào lạ thì ghi lại để ôn thôi, mình học kế toán nên các từ sử dụng liên quan đến kinh tế, bạn add zalo mình gửi qua nhé 0898686796.
Mình hay bị mất ngủ thôi. Cám ơn bạn
Bài đã được tự động gộp:

Bạn dùng 1 cột phụ đặt hàm RAND(), sau đó dò tìm giá trị INDEX hoặc VLOOKUP tìm giá trị nhỏ nhất tăng dần (SMALL) dựa theo cột phụ này. Có thể xảy ra trùng như tỷ lệ rất thấp, vì RAND() tạo ra 1 số có 15 chữ số lận.
Quá hợp lí rồi, giá trị nhỏ nhất tăng dần có thể dùng hàm Counta cột màu xanh, mỗi lần bạn ghi lại 1 từ mới vào cột xanh thì một từ mới khác sẽ xuất hiện ở ô E5.
Tìm không trùng thì dễ rồi, vấn đề là không dùng VBA thì không tạo được danh sách các từ đã dùng tại vùng màu xanh
Công thức mảng:
Mã:
=INDEX(B1:B1000,SMALL(IF((COUNTIF(N1:N100,B1:B1000)=0)*LEN(B1:B1000),ROW(B1:B1000),""),RANDBETWEEN(1,COUNTA(B1:B1000)-COUNTA(N1:N100))))
Để dùng công mảng, nhập xong nhấn Ctrl + Shift + Enter.
Cám ơn tất cả các anh chị đã quan tâm và giúp đỡ vấn đề của mình. Đặc biệt cám ơn anh Huuthang_bd đã dành thời gian giải đáp, công thức anh hướng dẫn đã hoàn thành theo yêu cầu. Chúc các anh chị nhiều sức khoẻ và thành công trong công việc.
 
Lần chỉnh sửa cuối:
Web KT
Back
Top Bottom