CÔNG THỨC CHỌN RA 5 CON TRONG SỐ 10 CON VẬT

Liên hệ QC

giaydabo

Thành viên chính thức
Tham gia
18/3/16
Bài viết
50
Được thích
3
CÁC BÁC GIÚP EM.
Chọn ra số lượng 5 con vật khác nhau ghép cặp với nhau, xem ra bao nhiêu cặp như thế?

1548752797209.png
 

File đính kèm

  • file làm công thức.xlsx
    10.1 KB · Đọc: 23
KO BÁC NÀO GIÚP E Ạ.
@HieuCD Bác giúp em với?
Mình dùng code VBA tạo Function được không?
Có phân biệt thứ tự không? ví dụ: gà lợn và lợn gà là 1 hay 2 khả năng?
Kết quả là con số thể hiện số cặp, hay liệt kê tất cả các cặp?
Các con số dòng thứ 2 là gì vậy?
 
Mình dùng code VBA tạo Function được không?
Có phân biệt thứ tự không? ví dụ: gà lợn và lợn gà là 1 hay 2 khả năng?
Kết quả là con số thể hiện số cặp, hay liệt kê tất cả các cặp?
Các con số dòng thứ 2 là gì vậy?
a chờ em chút, anh làm công thức bình thường giúp em với ạ. Code là e không biết gì luôn ạ
 
Mình dùng code VBA tạo Function được không?
Có phân biệt thứ tự không? ví dụ: gà lợn và lợn gà là 1 hay 2 khả năng?
Kết quả là con số thể hiện số cặp, hay liệt kê tất cả các cặp?
Các con số dòng thứ 2 là gì vậy?

gà lợn hay lợn gà là như nhau? chỉ cần tìm ra có bao nhiêu cặp là được ạ
em gửi lại file cần giúp đỡ. bác xem điều kiện trực tiếp trên file và làm giúp em ạ
Em cảm ơn Anh Ạ!
 

File đính kèm

  • file làm công thức.xlsx
    10.7 KB · Đọc: 25
gà lợn hay lợn gà là như nhau? chỉ cần tìm ra có bao nhiêu cặp là được ạ
em gửi lại file cần giúp đỡ. bác xem điều kiện trực tiếp trên file và làm giúp em ạ
Em cảm ơn Anh Ạ!
Bài toán rất hay, tiếc rằng 40 năm rồi không coi lại xác suất cổ điển nên quên hết, để mình tìm lớp học lại
Trong khi chờ đợi, nhờ các bạn trên diễn đàn giải dùm
 
gà lợn hay lợn gà là như nhau? chỉ cần tìm ra có bao nhiêu cặp là được ạ
em gửi lại file cần giúp đỡ. bác xem điều kiện trực tiếp trên file và làm giúp em ạ
Em cảm ơn Anh Ạ!
Nếu chỉ cần tìm số cặp
Thì đó là bài toán tổ hợp 5 của 10
=COMBIN(10,5)
là ra số cặp (5) cần tìm)
 
Lần chỉnh sửa cuối:
gà lợn hay lợn gà là như nhau? chỉ cần tìm ra có bao nhiêu cặp là được ạ
em gửi lại file cần giúp đỡ. bác xem điều kiện trực tiếp trên file và làm giúp em ạ
Em cảm ơn Anh Ạ!
Làm tạm cho bạn bằng công thức, nhưng tính từng lần để xác định được cặp nào luôn (không sử dụng một công thức được), cách tính chọn cặp theo số lượng từ lớn tới nhỏ. Đang làm công thức cố định cho 3 nhóm, số cặp có thể thay đổi ở R1 nhưng phải lớn hơn hoặc bằng 3 cặp,sửa số lượng từng loại thì sửa ở dòng 5, kết quả là sum cột P lại.
Theo cách tính này thì số liệu bạn đưa tính ra được 13 cặp, bạn HieuCD tính 14 cặp có thể cách tính này chưa tối ưu.
Bài đã được tự động gộp:
 

File đính kèm

  • Book1.xlsx
    13.6 KB · Đọc: 17
Lần chỉnh sửa cuối:
gà lợn hay lợn gà là như nhau? chỉ cần tìm ra có bao nhiêu cặp là được ạ
em gửi lại file cần giúp đỡ. bác xem điều kiện trực tiếp trên file và làm giúp em ạ
Em cảm ơn Anh Ạ!
Đêm qua ngủ ngon, nhớ máng máng có nàng tiên xinh đẹp mách nước :)
Dùng cột phụ cho gọn, nếu thích thì tự gôm hết vào 1 công thức duy nhất
Bài đã được tự động gộp:

Làm tạm cho bạn bằng công thức, nhưng tính từng lần để xác định được cặp nào luôn (không sử dụng một công thức được), cách tính chọn cặp theo số lượng từ lớn tới nhỏ. Đang làm công thức cố định cho 3 nhóm, số cặp có thể thay đổi ở R1 nhưng phải lớn hơn hoặc bằng 3 cặp,sửa số lượng từng loại thì sửa ở dòng 5, kết quả là sum cột P lại.
Theo cách tính này thì số liệu bạn đưa tính ra được 13 cặp, bạn HieuCD tính 14 cặp có thể cách tính này chưa tối ưu.
Bài đã được tự động gộp:
Mình không để ý phân phối lần 2, cám ơn bạn, chúc bạn 1 sáng vui
Thay số cực đoan một chút, kết quả trong file chưa hợp lý
 

File đính kèm

  • file làm công thức (1).xlsx
    11.9 KB · Đọc: 12
  • Book1 (26).xlsx
    12.9 KB · Đọc: 9
Đêm qua ngủ ngon, nhớ máng máng có nàng tiên xinh đẹp mách nước :)
Dùng cột phụ cho gọn, nếu thích thì tự gôm hết vào 1 công thức duy nhất
Bài đã được tự động gộp:


Mình không để ý phân phối lần 2, cám ơn bạn, chúc bạn 1 sáng vui
Thay số cực đoan một chút, kết quả trong file chưa hợp lý
Trường hợp 2 bạn đưa, tôi tính 10 cặp bạn tính 8, tôi đếm lại 10 cặp vẫn đúng, bạn xem bảng phân bổ kết quả cho trường hợp 2.
 

File đính kèm

  • Book1 (26) (1).xlsx
    17.1 KB · Đọc: 13

File đính kèm

  • file làm công thức (1).xlsx
    14 KB · Đọc: 14
@giaydabo
Đổi không khí bằng VBA
Code trong dưới đây các tổ hợp giống nhau vẫn đếm
Kết quả điền vào sheet2
Không biết sai chỗ nào lại ra 16 khác với bác HieuCD
---
Sửa điều kiện Do_Loop cho đúng, kết quả = 15
Mã:
Sub abc_()
Dim Nguon
Dim Nhom
Dim SoLuong, MinSl
Dim Ten
Dim Tam
Dim DicTT As Object
Dim i, j, k, x, z, t

Set DicTT = CreateObject("Scripting.Dictionary")
Nguon = Sheet1.Range("d3:r4")
ReDim Nhom(1 To 3), SoLuong(1 To 3)
For i = 1 To 15 Step 5
    For j = i To i + 4
        If Nguon(2, j) > 0 Then
            DicTT(Nguon(1, j)) = Array(Nguon(1, j), Nguon(2, j))
        End If
    Next j
    k = k + 1
    Nhom(k) = DicTT.items
    SoLuong(k) = DicTT.Count
    DicTT.RemoveAll
Next i
Sheet2.UsedRange.Clear
MinSl = UBound(Nguon, 2)
'Do While SoLuong(1) >= 0 And SoLuong(2) >= 0 And SoLuong(3) >= 0 And SoLuong(1) + SoLuong(2) + SoLuong(3) >= 4
Do While SoLuong(1) > 0 And SoLuong(2) > 0 And SoLuong(3) > 0 And SoLuong(1) + SoLuong(2) + SoLuong(3) > 4
    ReDim Ten(1 To 3)
    For j = 1 To UBound(Nhom)
        k = 0
        SoLuong(j) = 0
        Tam = Nhom(j)
        If MinSl > UBound(Tam) + 1 Then MinSl = UBound(Tam) + 1
        ReDim Ds(UBound(Tam))
        For i = 0 To UBound(Tam)
            Ten(j) = Ten(j) & IIf(Ten(j) = "", "", "|") & Tam(i)(0)
            Tam(i)(1) = Tam(i)(1) - 1
            If Tam(i)(1) Then
                Tam(k) = Tam(i)
                k = k + 1
            End If
        Next i
        If k Then
            SoLuong(j) = k
            ReDim Preserve Tam(k - 1)
            Nhom(j) = Tam
        End If
    Next j
    Sheet2.Range("A1000000").End(xlUp).Offset(1) = Replace(Ten(1), "|", ", ")
    Sheet2.Range("B1000000").End(xlUp).Offset(1) = Replace(Ten(2), "|", ", ")
    Sheet2.Range("C1000000").End(xlUp).Offset(1) = Replace(Ten(3), "|", ", ")
    Sheet2.Range("E1000000").End(xlUp).Offset(1) = MinSl
    Sheet2.Range("E1") = Sheet2.Range("E1") + MinSl
Loop
Sheet2.UsedRange.Columns.AutoFit
End Sub
 
Lần chỉnh sửa cuối:
Bài toán quá nhiều điều kiện, không biết còn sót điều kiện gì không
Bác có thể giải thích cách tính co được không
Còn đoạn code trên là em dung cách trừ lùi bác ạ. Điều kiện là : Khi nào 1 trong 3 cột hết tên hoặc tổng tên trong 3 cột < 5 thì dừng
 
@giaydabo
Bon chen tí công thức theo cách trừ lùi
 

File đính kèm

  • Copy of file làm công thức.xlsb
    23.7 KB · Đọc: 8
Web KT
Back
Top Bottom