Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi Everyone,
I have Two Sheets, One Named No Bonus & the Other Named Bonus. In Sheet No Bonus, I have Titles in Cells A1:G1. In Column A is the Draw Number, and Columns B:G are the 6 Drawn Numbers ( Excluding the Bonus Number ). In Sheet Bonus, I have Titles in Cells A1:H1. In Column A is the Draw Number, and Columns B:H are the 7 ( Including Bonus Number ) Drawn Numbers in Ascending Order. The Results go into Sheet Results. I am Trying to List the Number of Times ALL Combinations of 5 Numbers ( Including & Excluding the Bonus Number ) from 49 ( Combin(49,5) = 1,906,884 ) have Occurred in the Lotto Draws to Date. The Code Below for Some Reason gives Error 7 Out of Memory. Any Help would be Appreciated. Thanks in Advance. Here is the Code :- Option Explicit Option Base 1 Sub List() Dim i As Integer Dim j As Integer Dim k As Integer Dim l As Integer Dim m As Integer Dim nMinA As Integer Dim nMaxF As Integer Dim nCount As Long Dim nDraw As Integer Dim nNo(7) As Integer Dim nBonus(49, 49, 49, 49, 49) As Integer Dim nNoBonus(49, 49, 49, 49, 49) As Integer Application.ScreenUpdating = False nMinA = 1 nMaxF = 49 Sheets("No Bonus").Select Range("A2").Select Do While ActiveCell.Value 0 nDraw = ActiveCell.Value ActiveCell.Offset(1, 0).Select Loop Range("A1").Select For i = 1 To nDraw For j = 1 To 7 nNo(j) = ActiveCell.Offset(i, j).Value Next j nNoBonus(nNo(1), nNo(2), nNo(3), nNo(4), nNo(5)) = _ nNoBonus(nNo(1), nNo(2), nNo(3), nNo(4), nNo(5)) + 1 nNoBonus(nNo(1), nNo(2), nNo(3), nNo(4), nNo(6)) = _ nNoBonus(nNo(1), nNo(2), nNo(3), nNo(4), nNo(6)) + 1 nNoBonus(nNo(1), nNo(2), nNo(3), nNo(5), nNo(6)) = _ nNoBonus(nNo(1), nNo(2), nNo(3), nNo(5), nNo(6)) + 1 nNoBonus(nNo(1), nNo(2), nNo(4), nNo(5), nNo(6)) = _ nNoBonus(nNo(1), nNo(2), nNo(4), nNo(5), nNo(6)) + 1 nNoBonus(nNo(1), nNo(3), nNo(4), nNo(5), nNo(6)) = _ nNoBonus(nNo(1), nNo(3), nNo(4), nNo(5), nNo(6)) + 1 nNoBonus(nNo(2), nNo(3), nNo(4), nNo(5), nNo(6)) = _ nNoBonus(nNo(2), nNo(3), nNo(4), nNo(5), nNo(6)) + 1 Next i Sheets("Bonus").Select Range("A2").Select Do While ActiveCell.Value " " nDraw = ActiveCell.Value ActiveCell.Offset(1, 0).Select Loop Range("A1").Select For i = 1 To nDraw For j = 1 To 7 nNo(j) = ActiveCell.Offset(i, j).Value Next j nNoBonus(nNo(1), nNo(2), nNo(3), nNo(4), nNo(5)) = _ nNoBonus(nNo(1), nNo(2), nNo(3), nNo(4), nNo(5)) + 1 nNoBonus(nNo(1), nNo(2), nNo(3), nNo(4), nNo(6)) = _ nNoBonus(nNo(1), nNo(2), nNo(3), nNo(4), nNo(6)) + 1 nNoBonus(nNo(1), nNo(2), nNo(3), nNo(4), nNo(7)) = _ nNoBonus(nNo(1), nNo(2), nNo(3), nNo(4), nNo(7)) + 1 nNoBonus(nNo(1), nNo(2), nNo(3), nNo(5), nNo(6)) = _ nNoBonus(nNo(1), nNo(2), nNo(3), nNo(5), nNo(6)) + 1 nNoBonus(nNo(1), nNo(2), nNo(3), nNo(5), nNo(7)) = _ nNoBonus(nNo(1), nNo(2), nNo(3), nNo(5), nNo(7)) + 1 nNoBonus(nNo(1), nNo(2), nNo(3), nNo(6), nNo(7)) = _ nNoBonus(nNo(1), nNo(2), nNo(3), nNo(6), nNo(7)) + 1 nNoBonus(nNo(1), nNo(2), nNo(4), nNo(5), nNo(6)) = _ nNoBonus(nNo(1), nNo(2), nNo(4), nNo(5), nNo(6)) + 1 nNoBonus(nNo(1), nNo(2), nNo(4), nNo(5), nNo(7)) = _ nNoBonus(nNo(1), nNo(2), nNo(4), nNo(5), nNo(7)) + 1 nNoBonus(nNo(1), nNo(2), nNo(4), nNo(6), nNo(7)) = _ nNoBonus(nNo(1), nNo(2), nNo(4), nNo(6), nNo(7)) + 1 nNoBonus(nNo(1), nNo(2), nNo(5), nNo(6), nNo(7)) = _ nNoBonus(nNo(1), nNo(2), nNo(5), nNo(6), nNo(7)) + 1 nNoBonus(nNo(1), nNo(3), nNo(4), nNo(5), nNo(6)) = _ nNoBonus(nNo(1), nNo(3), nNo(4), nNo(5), nNo(6)) + 1 nNoBonus(nNo(1), nNo(3), nNo(4), nNo(5), nNo(7)) = _ nNoBonus(nNo(1), nNo(3), nNo(4), nNo(5), nNo(7)) + 1 nNoBonus(nNo(1), nNo(3), nNo(4), nNo(6), nNo(7)) = _ nNoBonus(nNo(1), nNo(3), nNo(4), nNo(6), nNo(7)) + 1 nNoBonus(nNo(1), nNo(3), nNo(5), nNo(6), nNo(7)) = _ nNoBonus(nNo(1), nNo(3), nNo(5), nNo(6), nNo(7)) + 1 nNoBonus(nNo(1), nNo(4), nNo(5), nNo(6), nNo(7)) = _ nNoBonus(nNo(1), nNo(4), nNo(5), nNo(6), nNo(7)) + 1 nNoBonus(nNo(2), nNo(3), nNo(4), nNo(5), nNo(6)) = _ nNoBonus(nNo(2), nNo(3), nNo(4), nNo(5), nNo(6)) + 1 nNoBonus(nNo(2), nNo(3), nNo(4), nNo(5), nNo(7)) = _ nNoBonus(nNo(2), nNo(3), nNo(4), nNo(5), nNo(7)) + 1 nNoBonus(nNo(2), nNo(3), nNo(4), nNo(6), nNo(7)) = _ nNoBonus(nNo(2), nNo(3), nNo(4), nNo(6), nNo(7)) + 1 nNoBonus(nNo(2), nNo(3), nNo(5), nNo(6), nNo(7)) = _ nNoBonus(nNo(2), nNo(3), nNo(5), nNo(6), nNo(7)) + 1 nNoBonus(nNo(2), nNo(4), nNo(5), nNo(6), nNo(7)) = _ nNoBonus(nNo(2), nNo(4), nNo(5), nNo(6), nNo(7)) + 1 nNoBonus(nNo(3), nNo(4), nNo(5), nNo(6), nNo(7)) = _ nNoBonus(nNo(3), nNo(4), nNo(5), nNo(6), nNo(7)) + 1 Next i Sheets("Results").Select Range("A1").Select For i = 1 To nMaxF - 4 For j = i + 1 To nMaxF - 3 For k = j + 1 To nMaxF - 2 For l = k + 1 To nMaxF - 1 For m = l + 1 To nMaxF nCount = nCount + 1 If nCount = 65501 Then nCount = 1 ActiveCell.Offset(-65500, 8).Select End If ActiveCell.Offset(0, 0).Value = i ActiveCell.Offset(0, 1).Value = j ActiveCell.Offset(0, 2).Value = k ActiveCell.Offset(0, 3).Value = l ActiveCell.Offset(0, 4).Value = m ActiveCell.Offset(0, 5).Value = nNoBonus(i, j, k, l, m) ActiveCell.Offset(0, 6).Value = nBonus(i, j, k, l, m) ActiveCell.Offset(1, 0).Select Next m Next l Next k Next j Next i Columns("A:IV").AutoFit Columns("A:IV").HorizontalAlignment = xlCenter Application.ScreenUpdating = True End Sub All the Best. Paul *** Sent via Developersdex http://www.developersdex.com *** |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Out of memory error | Excel Programming | |||
Out of memory error | Excel Programming | |||
Out of Memory error | Excel Programming | |||
Out of Memory Error | Excel Programming | |||
Out of memory error. | Excel Programming |