Nhờ viết code VBA để thống kê các số hay ra cùng nhau (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

phithuongbatphu86

Thành viên mới
Tham gia
17/6/21
Bài viết
31
Được thích
0
Chào mọi người. Chả là mình đang làm file thống kê dữ liệu xổ số bằng excel. Mình đang cần thống kê các số hay ra cùng nhau trong số kỳ đã chọn. Mình thấy dùng hàm thì khó đáp ứng được yêu cầu. Không biết VBA có thể xử lý được không? Mình gửi file để mọi người tham khảo.
Xin cảm ơn mọi người!
 

File đính kèm

Đối với các thiết bị quay số bây giờ thì độ chính xác của các "dự án" dự đoán kết quả xổ số cũng chỉ bằng với hàm RANDBETWEEN thôi bạn. Dùng luôn hàm RANDBETWEEN cho nó nhanh.
 
Upvote 0
Đối với các thiết bị quay số bây giờ thì độ chính xác của các "dự án" dự đoán kết quả xổ số cũng chỉ bằng với hàm RANDBETWEEN thôi bạn. Dùng luôn hàm RANDBETWEEN cho nó nhanh.
chưa hiểu ý bác lắm. Hàm randbeetwen là tạo bộ số ngẫu nhiên. Mình thì lại đang thống kê lại các số đã ra.
 
Upvote 0
Sổ số cũng là 1 dạng cờ bạc mà thôi; Nhưng mục tiêu là ích nước lợi nhà như bạn nói, nên nó khỏa lấp tính cờ bạc đi mà thôi;
Thực ra số đề bị cấm vì nó không đem lại lợi lộc cho số đông; chú cơ chế vận hành nó rẽ hơn sổ số nhiều!
 
Upvote 0
Cái này theo chính thống gọi là "lô tô 2 cặp số", dân gian gọi là "xiên đôi" phải không bạn.

Bài của bạn chỉ tính "lô tô 2 cặp số" thôi à?
xiên đôi là gì vậy bác? nghe như cờ bạc số đề vậy? tui đang thống kê bậc 2-3-4-5-6-7 của xổ số nhanh keno
 
Upvote 0
Ra vậy.
Cái này VBA làm được.
Ý nghĩa của "Bậc" là thế nà
Ra vậy.
Cái này VBA làm được.
Ý nghĩa của "Bậc" là thế nào
Trong keno có 80 số, 1 kỳ quay xổ 20 số. Người mua lựa chọn từ 1 số đến 10 số trong 80 số
- nếu chọn 1 số thì goi là bậc 1
- nếu chọn 2 số thì gọi là bậc 2
-....
- chọn 10 số gọi là bậc 10
 
Upvote 0
đây là xổ sổ ko phải cờ bạc. mà xổ sổ thì " ích nước lợi nhà"
Xổ số Vietlott là hình thức đánh bạc được nhà nước cấp phép và quản lý đặc biệt, lợi nhuận lớn vì người chơi thua nhiều hơn thắng, càng nghiên cứu cách chơi càng thua nhiều và lại lao vào cơn khát cờ bạc
 
Upvote 0
Xổ số Vietlott là hình thức đánh bạc được nhà nước cấp phép và quản lý đặc biệt, lợi nhuận lớn vì người chơi thua nhiều hơn thắng, càng nghiên cứu cách chơi càng thua nhiều và lại lao vào cơn khát cờ bạc
chuẩn bác. Nhưng suy cho cùng mọi hình thức đầu tư cũng đều rủi ro. Nếu nghiêm túc nghiên cứu thống kê, quan sát, biết kiểm soát trong phạm vi tài chính thì vẫn có thể kiếm được với tỷ suất lợi nhuận không thua kênh đầu tư chứng khoán
 
Upvote 0
/-)ầu tư chứng khoán phải biết & hiểu nhiều về thị trường & doanh nghiệp;
Còn chuyện sổ số này nếu ai đó đã thống kê được thì chả đến lượt chúng ta & tôi!
Dù sao cũng xin chúc bạn thành công hay dừng đúng lúc!
 
Upvote 0
Xổ số Vietlott là hình thức đánh bạc được nhà nước cấp phép và quản lý đặc biệt, lợi nhuận lớn vì người chơi thua nhiều hơn thắng, càng nghiên cứu cách chơi càng thua nhiều và lại lao vào cơn khát cờ bạc
Cái gì có đóng thuế là hợp pháp anh à.Nước mình cũng có vài cái Casino đang hoạt động mà.
 
Upvote 0
Cái gì có đóng thuế là hợp pháp anh à.Nước mình cũng có vài cái Casino đang hoạt động mà.
Việt nam không chỉ vài cái mà khá nhiều Casino, về luật chính thức cấm người dân Việt đánh bạc, nhưng thực tế làm ngơ giả bộ không biết khá nhiều
Có nhiều thứ ngày nay hợp pháp ngày mai lại bất hợp pháp
 
Upvote 0
Việt nam không chỉ vài cái mà khá nhiều Casino, về luật chính thức cấm người dân Việt đánh bạc, nhưng thực tế làm ngơ giả bộ không biết khá nhiều
Có nhiều thứ ngày nay hợp pháp ngày mai lại bất hợp pháp
sao lại bàn luận về việc hợp pháp hay không hợp pháp nhỉ? Ví dụ: con dao là chỉ là công cụ, dùng nó để gọt trái cây, thái thịt thì nó là công cụ nhà bếp ( hợp pháp). Dùng nó giết người thì bất hợp pháp. Hợp pháp hay bất hợp pháp là ý thức người sử dụng và quan điểm cảu nhà cầm quyền. Còn mình đơn giản chỉ cần thống kê thôi mà nhỉ
 
Upvote 0
Ở Việt nam chỉ có Vietlott là của chính phủ, có "mục đích" (*1)
Keno là nhà thầu xin giấy phép tổ chức. Họ chỉ đóng thuế. Về cách chơi thì giống xổ số. Nhưng sổ số quốc gia thì đã định sẵn mức phần trăm cho "mục đích". Keno thì cách phân bổ đồng tiền thì cũng như một doanh nghiệp.

(*1) tin vào cái mục đích đó hay không là chuyện khác

Xổ số Vietlott là hình thức đánh bạc được nhà nước cấp phép và quản lý đặc biệt, lợi nhuận lớn vì người chơi thua nhiều hơn thắng, càng nghiên cứu cách chơi càng thua nhiều và lại lao vào cơn khát cờ bạc
Tuy người thua nhiều, nhưng Vietlott là của chính phủ cho nên có thể dùng câu "ích nước lợi nhà". Keno thì khác hẳn.
Thường thì Keno là trò chơi cá nhân. Nhưng cũng có những nhóm gom tiền chơi rất bạo. Ỏ Bắc Mỹ (Canada và US), Keno là nguồn lợi lớn cho các quán mở dưới hình thức câu lạc bộ (club) (*2).

(*2) Keno đợc nhà thầu lớn bao hết. Các clubs có giấy phép thì chỉ là đại lý lãnh hoa hồng thep số thu, số chi bên thầu chịu.

(*3) Tôi nhớ có lần ghé LA, thằng cháu họ dẫn tôi đến một club người Việt uống cà phê. Tiếp viên ăn mặc thật xếch xy, phần lớn là mấy cô Việt đi du học kiếm tiền thêm. Nhưng nguồn lợi chính của club không phải ở cà phê, mà là ở Keno, các trò cờ bạc điện tử khác. Hồi ấy, trò chơi Roulette điện tử rất nổi.

(*4) trên nguyên tắc toán xác suất thì thống kê con số hoàn toàn chả có nghĩa lý gì. Vì mỗi lần xổ hoàn toàn độc lập với các lần khác.
Nhưng trên thực tế thì con người bao giờ cũng có trí tưởng tượng cao, và rất dễ tin vào luật "đi cặp". Nếu bạn làm được một cái bảng tính "đi cặp" thì sẽ dễ dàng quy tụ được nhiều người hùn đánh lớn. Mà dân máu mê thì phải đánh lớn nó mới đã. Tôi từng thấy mấy nhóm đánh hằng chục ngàn đô la vào mỗi lượt xổ. Dĩ nhiên là thành viên trong các nhóm này, cứ một vài tuần là thấy có chuyện cầm bán này nọ - thường là xe hơi, đồng hồ, dây chuyền, lắc vàng.
Thường thường thì trước khi gia nhập nhóm sẽ được "nhóm trưởng" giảng một mớ quy luật:
- đánh là tự nguyện, không ai bắt buộc.
- tiền là tiền mặt, không lấy check, không thiếu chịu.
- cấm nhặt chuyện mượn tiền nhau trong cuộc chơi. (nếu muốn mượn tiền thì đưa nhau ra riêng, tự thoả thuận, không dựa vào các thành viên khác làm chứng - mục đích là tránh cãi vả, liên luỵ sau này)
 
Upvote 0
Trong keno có 80 số, 1 kỳ quay xổ 20 số. Người mua lựa chọn từ 1 số đến 10 số trong 80 số
- nếu chọn 1 số thì goi là bậc 1
- nếu chọn 2 số thì gọi là bậc 2
-....
- chọn 10 số gọi là bậc 10
Bấm nút trong file đính kèm.
Bạn có thể giải thích cách sử dụng kết quả tính toán này?

---
Code dưới đây ưu tiên lấy các cặp đạt yêu cầu có số lượng dòng nhiều nhất
Mã:
Option Explicit

Sub xxx()
Dim Nguon
Dim Thongke, Spt
Dim Tam, Mang0, Mang1, csD
Dim bac, chuky, cap
Dim congSl, ghSl
Dim Kq
Dim rws, i, j, k, x, z, t

With Sheet1
    bac = .Range("B3")
    chuky = .Range("C3")
    cap = .Range("D3")
End With

Spt = 80
ReDim Tam(1 To Spt)
With Sheet2
    Thongke = .Range("C2", .Range("C2").End(xlToRight).End(xlDown))
    rws = UBound(Thongke)
    ReDim Nguon(1 To rws)
    For i = 1 To rws
        For j = 1 To UBound(Thongke, 2)
            Tam(Thongke(i, j)) = Thongke(i, j)
        Next j
        Nguon(i) = Tam
        For j = 1 To Spt
            Tam(j) = 0
        Next j
    Next i
End With

If chuky > rws Or cap = 0 Then
    MsgBox "Xem lai chu ky"
    Exit Sub
End If
ghSl = cap * bac
With CreateObject("Scripting.Dictionary")
    ReDim csD(1 To chuky)
    For i = 1 To chuky
        csD(1) = i
        .Item(.Count) = Array(1, csD, Nguon(i))
    Next i

    Do While .Count > 0
        Thongke = .items
        .RemoveAll
        t = t + 1
        For i = 0 To UBound(Thongke)
            k = Thongke(i)(0)
            csD = Thongke(i)(1)
            Mang0 = Thongke(i)(2)
           
            If csD(k) + 1 <= chuky Then
                For j = csD(k) + 1 To chuky
                    congSl = 0
                    Mang1 = Nguon(j)
                    For z = 1 To Spt
                        If Mang0(z) > 0 And Mang1(z) > 0 Then
                            congSl = congSl + 1
                            Tam(z) = z
                        End If
                    Next z
                    If congSl >= ghSl Then
                        csD(k + 1) = j
                        .Item(.Count) = Array(k + 1, csD, Tam, congSl)
                    End If
                    For z = 1 To Spt
                        Tam(z) = 0
                    Next z
                Next j
            End If
        Next i
    Loop
End With

ReDim Kq(1 To UBound(Thongke) + 1, 1 To 2)
Sheet1.Range("H3").Resize(rws * rws, UBound(Kq, 2)).Clear
If t > 1 Then
    For i = 0 To UBound(Thongke)
        k = 0
        Mang0 = Thongke(i)(2)
        csD = Thongke(i)(1)
        Kq(i + 1, 1) = Application.Trim(Join(csD))
        Kq(i + 1, 2) = Application.Trim(Replace(Join(Mang0), "0", ""))
    Next i
   
    Sheet1.Range("H3").Resize(UBound(Kq), UBound(Kq, 2)) = Kq
    Sheet1.UsedRange.Columns.AutoFit
Else
    MsgBox "Khong co cap nao"
End If
End Sub
 

File đính kèm

Upvote 0
!Tôi đã sử dụng bảng tính đánh số đề cách đây 3 năm. Tôi tải xuống tất cả lịch sử sổ số trong vòng 2 năm gần nhất. Lập bảng đánh giá theo hệ thống. Đặt quy tắc và các phương pháp luận để đưa ra con những con số an toàn để đánh. Một vài ví dụ theo cách suy luận riêng tôi: 2 số hàng đầu và 2 số hàng đặc biệt không thể giống nhau, trong hai ngày liên tiếp đặc biệt không ra lại, đặc biệt miền nam không giống đặc biệt miền bắc trong cùng 1 ngày....v...v.... Đầu tiên tôi đánh nguội, nghĩa là tôi tự xem mình là người chơi. Tôi dùng bảng tính đấy và chọn ra được gần bốn chục số, Tôi tự đánh và kiểm tra kết quả cuối những buổi chiều trời hè trong xanh. Suốt một tháng liên tục như vậy! Vào một ngày cuối mùa hè bầu trời u ám. Tôi phát hiện ra rằng nó là trò chơi có thể gặp rủi ro. Không có quy tắc nào áp dụng cho nó được cả. Tôi đã tìm tòi, mất thời gian vắt óc, đặt ra các quy luật tạo bảng tính toán mất 6 tháng. Tôi đã mất 6 tháng cho việc vô bổ. Nhưng bù đắp lại, tôi thành thạo một số hàm trong excel và biết một số ít về VBA. Vì vậy, tôi áp dụng kiến thức đó làm việc khác tốt hơn. Nếu bạn có một ý tưởng thiết lập một phương pháp lập luận, thông kê, quy tắc chạy bằng VBA để đánh sổ số. Đó là một y tưởng điên rồ! Tôi không cản bạn. Nhưng mong rằng khi bạn có bảng tính rồi. Hãy đánh nguội trước bạn nhé! Chúc bạn thành công. Tôi luôn thích những người có ý tưởng điên rồ.
 
Lần chỉnh sửa cuối:
Upvote 0
!Tôi đã sử dụng bảng tính đánh số đề cách đây 3 năm. Tôi tải xuống tất cả lịch sử sổ số trong vòng 2 năm gần nhất. Lập bảng đánh giá theo hệ thống. Đặt quy tắc và các phương pháp luận để đưa ra con những con số an toàn để đánh. Một vài ví dụ theo cách suy luận riêng tôi: 2 số hàng đầu và 2 số hàng đặc biệt không thể giống nhau, trong hai ngày liên tiếp đặc biệt không ra lại, đặc biệt miền nam không giống đặc biệt miền bắc trong cùng 1 ngày....v...v.... Đầu tiên tôi đánh nguội, nghĩa là tôi tự xem mình là người chơi. Tôi dùng bảng tính đấy và chọn ra được gần bốn chục số, Tôi tự đánh và kiểm tra kết quả cuối những buổi chiều trời hè trong xanh. Suốt một tháng liên tục như vậy! Vào một ngày cuối mùa hè bầu trời u ám. Tôi phát hiện ra rằng nó là trò chơi có thể gặp rủi ro. Không có quy tắc nào áp dụng cho nó được cả. Tôi đã tìm tòi, mất thời gian vắt óc, đặt ra các quy luật tạo bảng tính toán mất 6 tháng. Tôi đã mất 6 tháng cho việc vô bổ. Nhưng bù đắp lại, tôi thành thạo một số hàm trong excel và biết một số ít về VBA. Vì vậy, tôi áp dụng kiến thức đó làm việc khác tốt hơn. Nếu bạn có một ý tưởng thiết lập một phương pháp lập luận, thông kê, quy tắc chạy bằng VBA để đánh sổ số. Đó là một y tưởng điên rồ! Tôi không cản bạn. Nhưng mong rằng khi bạn có bảng tính rồi. Hãy đánh nguội trước bạn nhé! Chúc bạn thành công. Tôi luôn thích những người có ý tưởng điên rồ.

Bấm nút trong file đính kèm.
Bạn có thể giải thích cách sử dụng kết quả tính toán này?

---
Code dưới đây ưu tiên lấy các cặp đạt yêu cầu có số lượng dòng nhiều nhất
Mã:
Option Explicit

Sub xxx()
Dim Nguon
Dim Thongke, Spt
Dim Tam, Mang0, Mang1, csD
Dim bac, chuky, cap
Dim congSl, ghSl
Dim Kq
Dim rws, i, j, k, x, z, t

With Sheet1
    bac = .Range("B3")
    chuky = .Range("C3")
    cap = .Range("D3")
End With

Spt = 80
ReDim Tam(1 To Spt)
With Sheet2
    Thongke = .Range("C2", .Range("C2").End(xlToRight).End(xlDown))
    rws = UBound(Thongke)
    ReDim Nguon(1 To rws)
    For i = 1 To rws
        For j = 1 To UBound(Thongke, 2)
            Tam(Thongke(i, j)) = Thongke(i, j)
        Next j
        Nguon(i) = Tam
        For j = 1 To Spt
            Tam(j) = 0
        Next j
    Next i
End With

If chuky > rws Or cap = 0 Then
    MsgBox "Xem lai chu ky"
    Exit Sub
End If
ghSl = cap * bac
With CreateObject("Scripting.Dictionary")
    ReDim csD(1 To chuky)
    For i = 1 To chuky
        csD(1) = i
        .Item(.Count) = Array(1, csD, Nguon(i))
    Next i

    Do While .Count > 0
        Thongke = .items
        .RemoveAll
        t = t + 1
        For i = 0 To UBound(Thongke)
            k = Thongke(i)(0)
            csD = Thongke(i)(1)
            Mang0 = Thongke(i)(2)
          
            If csD(k) + 1 <= chuky Then
                For j = csD(k) + 1 To chuky
                    congSl = 0
                    Mang1 = Nguon(j)
                    For z = 1 To Spt
                        If Mang0(z) > 0 And Mang1(z) > 0 Then
                            congSl = congSl + 1
                            Tam(z) = z
                        End If
                    Next z
                    If congSl >= ghSl Then
                        csD(k + 1) = j
                        .Item(.Count) = Array(k + 1, csD, Tam, congSl)
                    End If
                    For z = 1 To Spt
                        Tam(z) = 0
                    Next z
                Next j
            End If
        Next i
    Loop
End With

ReDim Kq(1 To UBound(Thongke) + 1, 1 To 2)
Sheet1.Range("H3").Resize(rws * rws, UBound(Kq, 2)).Clear
If t > 1 Then
    For i = 0 To UBound(Thongke)
        k = 0
        Mang0 = Thongke(i)(2)
        csD = Thongke(i)(1)
        Kq(i + 1, 1) = Application.Trim(Join(csD))
        Kq(i + 1, 2) = Application.Trim(Replace(Join(Mang0), "0", ""))
    Next i
  
    Sheet1.Range("H3").Resize(UBound(Kq), UBound(Kq, 2)) = Kq
    Sheet1.UsedRange.Columns.AutoFit
Else
    MsgBox "Khong co cap nao"
End If
End Sub
bác có thể hình dung tôi đang muốn tạo 1 file excel tương tự như thế này nhưng ở dạng đơn giản hơn
 

File đính kèm

  • ảnh.jpg
    ảnh.jpg
    91 KB · Đọc: 70
Upvote 0
bác có thể hình dung tôi đang muốn tạo 1 file excel tương tự như thế này nhưng ở dạng đơn giản hơn
Nếu chỉ là thống kê thì không vấn đề gì, có cái là bạn phải làm rõ cách tính thì mới có thể viết được, mỗi người tính 1 cách, để hình dung ra là hơi bị khó.
 
Upvote 0
Upvote 0
Thống kê có lẽ cũng cần làm rõ là thống kê những thông số nào, thời điểm tính là như thế nào, phạm vi số liệu....
Vậy không là tính toán thì là gì vậy bạn
file của bác cũng khá ổn. Có thể chỉnh code thống kê từ kỳ mới nhất đến các kỳ trước đó không ( ngược thời gian), file cũ của tôi lại quên để chạy xuôi theo thời gian. Ví dụ file mới tôi thống kê trong 5 kỳ ( kỳ dòng kỳ 30 đến dòng kỳ 25).
Thank bác nhiều!
 

File đính kèm

Upvote 0
file của bác cũng khá ổn. Có thể chỉnh code thống kê từ kỳ mới nhất đến các kỳ trước đó không ( ngược thời gian), file cũ của tôi lại quên để chạy xuôi theo thời gian. Ví dụ file mới tôi thống kê trong 5 kỳ ( kỳ dòng kỳ 30 đến dòng kỳ 25).
Thank bác nhiều!
Có lẽ bạn đưa nhầm file, trong file bài trên, vùng tính toán vẫn thế mà bạn.
Bạn gửi file cũ của bạn lên để đối chiếu sửa chữa cho nhanh.
 
Upvote 0
Gửi bác. cảm ơn bác nhiều nhé.
Bạn đưa cái file cũ của bạn ấy, đừng đưa cái tôi viết, để đối chiếu.
file của bác cũng khá ổn. Có thể chỉnh code thống kê từ kỳ mới nhất đến các kỳ trước đó không ( ngược thời gian), file cũ của tôi lại quên để chạy xuôi theo thời gian. Ví dụ file mới tôi thống kê trong 5 kỳ ( kỳ dòng kỳ 30 đến dòng kỳ 25).
Thank bác nhiều!
 
Upvote 0
Bạn đưa cái file cũ của bạn ấy, đừng đưa cái tôi viết, để đối chiếu.
Chào bạn! code của bạn trong quá trình vận hành có lỗi: đối với các số có hàng đơn vị là "0" ví du: 10,20,30,40,50,60,70,80 thì khi chạy code, excel chỉ trả kết quả tương ứng là : 1;2;3;4;5;6;7;8 mà không có hàng đơn vị là "0". Nhờ bạn check lại giúp mình. Thank!
 

File đính kèm

Upvote 0
Chào bạn! code của bạn trong quá trình vận hành có lỗi: đối với các số có hàng đơn vị là "0" ví du: 10,20,30,40,50,60,70,80 thì khi chạy code, excel chỉ trả kết quả tương ứng là : 1;2;3;4;5;6;7;8 mà không có hàng đơn vị là "0". Nhờ bạn check lại giúp mình. Thank!
Mã:
'Tam(j) = 0
Tam(j) = Empty
Mã:
'Tam(z) = 0
Tam(z) = Empty
Mã:
'Kq(i + 1, 2) = Application.Trim(Replace(Join(Mang0), "0", ""))
Kq(i + 1, 2) = Application.Trim(Join(Mang0))
Bạn tìm các dòng trên, thay = dòng dưới
 
Upvote 0
Chào bác Chao Quay!
File trước đây về tìm 2 số về cùng nhau mà bác viết code giúp tôi giờ vận hành quá tuyệt vời. Giờ tôi phát sinh thêm 1 tiêu thức thống kê" số về trước - số về sau " cách nhau 1 kỳ. ko rõ bác có cách nào code được không? Bác thử giúp tôi nhé.
Ví dụ trong file tôi gửi kèm: kỳ trước ra số 17, kỳ sau thường ra số 33
Rất cảm ơn bác đã giúp đỡ.
Bài đã được tự động gộp:

Mã:
'Tam(j) = 0
Tam(j) = Empty
Mã:
'Tam(z) = 0
Tam(z) = Empty
Mã:
'Kq(i + 1, 2) = Application.Trim(Replace(Join(Mang0), "0", ""))
Kq(i + 1, 2) = Application.Trim(Join(Mang0))
Bạn tìm các dòng trên, thay = dòng dưới
Chào bác Chao Quay!
File trước đây về tìm 2 số về cùng nhau mà bác viết code giúp tôi giờ vận hành quá tuyệt vời. Giờ tôi phát sinh thêm 1 tiêu thức thống kê" số về trước - số về sau " cách nhau 1 kỳ. ko rõ bác có cách nào code được không? Bác thử giúp tôi nhé.
Ví dụ trong file tôi gửi kèm 1 file mới : kỳ trước ra số 17, kỳ sau thường ra số 33
Rất cảm ơn bác đã giúp đỡ.
Bài đã được tự động gộp:

Chào bạn! code của bạn trong quá trình vận hành có lỗi: đối với các số có hàng đơn vị là "0" ví du: 10,20,30,40,50,60,70,80 thì khi chạy code, excel chỉ trả kết quả tương ứng là : 1;2;3;4;5;6;7;8 mà không có hàng đơn vị là "0". Nhờ bạn check lại giúp mình. Thank!
Chào bác Chao Quay!
File trước đây về tìm 2 số về cùng nhau mà bác viết code giúp tôi giờ vận hành quá tuyệt vời. Giờ tôi phát sinh thêm 1 tiêu thức thống kê" số về trước - số về sau " cách nhau 1 kỳ. ko rõ bác có cách nào code được không? Bác thử giúp tôi nhé.
Ví dụ trong file tôi gửi kèm 1 file mới : kỳ trước ra số 17, kỳ sau thường ra số 33
Rất cảm ơn bác đã giúp đỡ.
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Mã:
'Tam(j) = 0
Tam(j) = Empty
Mã:
'Tam(z) = 0
Tam(z) = Empty
Mã:
'Kq(i + 1, 2) = Application.Trim(Replace(Join(Mang0), "0", ""))
Kq(i + 1, 2) = Application.Trim(Join(Mang0))
Bạn tìm các dòng trên, thay = dòng dưới
Em chào bác! e có một số vấn đề muốn hỏi bác trực tiếp: Bác CHAO QUAY có thể cho em xin số điện thoại để tiện liên hệ không ak?
 
Upvote 0
Em chào bác! e có một số vấn đề muốn hỏi bác trực tiếp: Bác CHAO QUAY có thể cho em xin số điện thoại để tiện liên hệ không ak?
e đã sửa như bác nói mà vẫn thiếu số 0 đằng trước các số từ 01-09 ak! bác giúp em được không ak?
 
Upvote 0
Lần chỉnh sửa cuối:
Upvote 0

File đính kèm

Upvote 0
Upvote 0
Nhân dịp đầu năm mới ! Chúc Anh Chão Quẩy một năm mới Sức khỏe, Hạnh Phúc và Thành công.
Em có File dữ liệu nhờ Bác code giúp em với ak. Mọi mong muốn và nội dung em đã viết trong file rồi ak!
 

File đính kèm

Upvote 0
Mã:
'Tam(j) = 0
Tam(j) = Empty
Mã:
'Tam(z) = 0
Tam(z) = Empty
Mã:
'Kq(i + 1, 2) = Application.Trim(Replace(Join(Mang0), "0", ""))
Kq(i + 1, 2) = Application.Trim(Join(Mang0))
Bạn tìm các dòng trên, thay = dòng dưới
Chào bác ChaoQuay, file excel trước bác viết giúp sau 1 thời gian vận hành hoạt động hay quá. Tuy nhiên, giờ đây tôi muốn đưa file lên googlesheet, Nhờ bác xem có thể viết code lên google sheet được không? Tôi cũng chấp nhận việc trả phí để đưa lên googlesheet. Nếu có thể bác để lại địa chỉ email hoặc zalo để tôi tiện liên hệ được ko? cảm ơn bác
 
Upvote 0
có anh chị nào giúp em giải quyết vấn đề này với. Em loay hoay mãi không tìm được cách nào giải quyết. Em xin cám ơn ạ
 

File đính kèm

Upvote 0
chào bạn. mình cần tạo ra 1 triệu( hoặc tất cả) kết quả từ tổ hợp KENO bậc 10. xin thông tin để inbox riêng bạn nhé
Bài đã được tự động gộp:

Bấm nút trong file đính kèm.
Bạn có thể giải thích cách sử dụng kết quả tính toán này?

---
Code dưới đây ưu tiên lấy các cặp đạt yêu cầu có số lượng dòng nhiều nhất
Mã:
Option Explicit

Sub xxx()
Dim Nguon
Dim Thongke, Spt
Dim Tam, Mang0, Mang1, csD
Dim bac, chuky, cap
Dim congSl, ghSl
Dim Kq
Dim rws, i, j, k, x, z, t

With Sheet1
    bac = .Range("B3")
    chuky = .Range("C3")
    cap = .Range("D3")
End With

Spt = 80
ReDim Tam(1 To Spt)
With Sheet2
    Thongke = .Range("C2", .Range("C2").End(xlToRight).End(xlDown))
    rws = UBound(Thongke)
    ReDim Nguon(1 To rws)
    For i = 1 To rws
        For j = 1 To UBound(Thongke, 2)
            Tam(Thongke(i, j)) = Thongke(i, j)
        Next j
        Nguon(i) = Tam
        For j = 1 To Spt
            Tam(j) = 0
        Next j
    Next i
End With

If chuky > rws Or cap = 0 Then
    MsgBox "Xem lai chu ky"
    Exit Sub
End If
ghSl = cap * bac
With CreateObject("Scripting.Dictionary")
    ReDim csD(1 To chuky)
    For i = 1 To chuky
        csD(1) = i
        .Item(.Count) = Array(1, csD, Nguon(i))
    Next i

    Do While .Count > 0
        Thongke = .items
        .RemoveAll
        t = t + 1
        For i = 0 To UBound(Thongke)
            k = Thongke(i)(0)
            csD = Thongke(i)(1)
            Mang0 = Thongke(i)(2)
          
            If csD(k) + 1 <= chuky Then
                For j = csD(k) + 1 To chuky
                    congSl = 0
                    Mang1 = Nguon(j)
                    For z = 1 To Spt
                        If Mang0(z) > 0 And Mang1(z) > 0 Then
                            congSl = congSl + 1
                            Tam(z) = z
                        End If
                    Next z
                    If congSl >= ghSl Then
                        csD(k + 1) = j
                        .Item(.Count) = Array(k + 1, csD, Tam, congSl)
                    End If
                    For z = 1 To Spt
                        Tam(z) = 0
                    Next z
                Next j
            End If
        Next i
    Loop
End With

ReDim Kq(1 To UBound(Thongke) + 1, 1 To 2)
Sheet1.Range("H3").Resize(rws * rws, UBound(Kq, 2)).Clear
If t > 1 Then
    For i = 0 To UBound(Thongke)
        k = 0
        Mang0 = Thongke(i)(2)
        csD = Thongke(i)(1)
        Kq(i + 1, 1) = Application.Trim(Join(csD))
        Kq(i + 1, 2) = Application.Trim(Replace(Join(Mang0), "0", ""))
    Next i
  
    Sheet1.Range("H3").Resize(UBound(Kq), UBound(Kq, 2)) = Kq
    Sheet1.UsedRange.Columns.AutoFit
Else
    MsgBox "Khong co cap nao"
End If
End Sub
chào bạn. xin thông tin để inbox thêm bạn nhé
 
Lần chỉnh sửa cuối:
Upvote 0

Bài viết mới nhất

Back
Top Bottom