Option Explicit Private intNum1 As Integer, intNum2 As Integer, intNum3 As Integer Private intTries As Integer Private intMaxNumber As Integer Private Sub cmbGenerateNumbers_Click() intTries = 0 'This is for when the user does not enter a maximum number to generate If intMaxNumber = 0 Then intNum1 = 4 * Rnd + 1 intNum2 = 4 * Rnd + 1 intNum3 = 4 * Rnd + 1 Do While intNum1 = intNum2 Or intNum1 = intNum3 Or intNum2 = intNum3 intTries = intTries + 1 intNum1 = 4 * Rnd + 1 'Generate random number between one and three intNum2 = 4 * Rnd + 1 'Generate random number between one and three intNum3 = 4 * Rnd + 1 'Generate random number between one and three Loop lblTriesMessage.Caption = "Number of loop iterations it took to generate three unique numbers between 1 and 5" 'This is for when the user enters a maximum number to generate Else intNum1 = (intMaxNumber - 1) * Rnd + 1 intNum2 = (intMaxNumber - 1) * Rnd + 1 intNum3 = (intMaxNumber - 1) * Rnd + 1 Do While intNum1 = intNum2 Or intNum1 = intNum3 Or intNum2 = intNum3 intTries = intTries + 1 'Initialize counter intNum1 = (intMaxNumber - 1) * Rnd + 1 'Generate random number between one and the users' entered max number intNum2 = (intMaxNumber - 1) * Rnd + 1 'Generate random number between one and the users' entered max number intNum3 = (intMaxNumber - 1) * Rnd + 1 'Generate random number between one and the users' entered max number Loop lblTriesMessage.Caption = "Number of loop iterations it took to generate three unique numbers between 1 and " & intMaxNumber End If lblNum1.Caption = intNum1 lblNum2.Caption = intNum2 lblNum3.Caption = intNum3 lblTries.Caption = intTries End Sub Private Sub cmdDone_Click() Unload Me End Sub Private Sub cmdMaxNumber_Click() intMaxNumber = InputBox("Enter max number to generate", "Max number") End Sub Private Sub Form_Load() Randomize lblNum1.FontSize = 24 lblNum2.FontSize = 24 lblNum3.FontSize = 24 End Sub