San dữ liệu trong vùng

Thảo luận trong 'Khu vực đăng bài chung' bắt đầu bởi anhtuan2012, 19 Tháng năm 2017 lúc 18:13.

  1. anhtuan2012

    anhtuan2012 Well-Known Member

    Em chào các Anh/Chị,
    Em có vấn đề này nhờ các Anh/Chị tư vấn giúp!
    Yêu cầu trong file gửi kèm các anh ,chị xem giúp
    Xin cảm ơn.
     

    Các file đính kèm:

  2. eke_rula

    eke_rula Active Member

    Làm đại xem đúng ý bạn không, bạn dùng CT mảng này ở B15:
    Mã:
    B15=IFERROR(IF(AND(SUM(--($A15:A15<>""))>1,(COLUMN()-LOOKUP(2,1/($A15:A15<>""),COLUMN($A15:A15)))<3),"",IF(COLUMN()-1=RANDBETWEEN(COLUMN()-1,23-(COUNTA($B4:$X4)-1)*3+(SUM(--($A15:A15<>""))-1)*3),INDEX($B4:$X4,MATCH(0,IF($B4:$X4<>"",COUNTIF($A15:A15,$B4:$X4)),)),"")),"")
    Ctrl+Shift+Enter fill sang phải rồi fill xuống, bấm F9 để thay đổi!!!
    P/S: công thức này chỉ tính trên từng dòng, tức là 2 ô dữ liệu trên cùng một dòng sẽ cách nhau tối thiểu là 2 cột, nếu mà xét trên toàn bảng thì chịu. Bài này viết bằng VBA sẽ hay hơn, phân bổ ngẫu nhiên kết hợp với điều kiện thì không thể tối ưu trên công thức được!!!
     

    Các file đính kèm:

    befaint thích bài này.
  3. anhtuan2012

    anhtuan2012 Well-Known Member

    Vâng !Em cảm ơn anh nhé!
     

Chia sẻ trang này