I started trying to add the "QUIT" option but as it requires a different
approach to entering the manufacturers I ended up with pretty much a whole
new Sub - hope you don't mind, it can at least show you some ideas:
Public Sub pressHereToInputManufacturesNames_Click()
Dim ManufacturersNames$(5)
Dim CountManufacturers As Integer
Dim i As Integer
Dim UserInput$
Dim iTheRows As Long
CountManufacturers = 0
UserInput$ = "OK"
While CountManufacturers <= 4 And UCase(UserInput$) < "QUIT" And UserInput$
< ""
UserInput$ = InputBox("Enter the Manufacturer's Name" & vbCrLf _
& "You may enter the word QUIT when you are finished" & vbCrLf _
& "You may press CANCEL to abort" & vbCrLf _
& CountManufacturers & " manufacturers entered so far")
If UserInput$ < "QUIT" Then
CountManufacturers = CountManufacturers + 1
ManufacturersNames$(CountManufacturers) = UserInput$
End If
Wend
If UserInput$ = "" Then
MsgBox "CANCELLED: any entries will be ignored"
Exit Sub
End If
UserInput$ = ""
For i = 1 To CountManufacturers
ActiveSheet.Range("A" & i).Value = ManufacturersNames$(i)
UserInput$ = UserInput$ & ManufacturersNames$(i)
If i < CountManufacturers Then UserInput$ = UserInput$ & vbCrLf
Next i
MsgBox "You entered " & CountManufacturers & " Manufacturers:" & vbCrLf &
UserInput$
End Sub
--
- K Dales
"RELWOD85" wrote:
i have been doing the following coding which allows me to input through
a input box 5 names this works however i would first of all like to
enter the word QUIT before the 5th name is inputed so that i dont have
to input anymore then the second thind i want to do is get a message
box to appear after its has quit to show in numbers how many names have
been put in for example if only two names have been put in before the
word quit is entered i then would like a message box to appear with "2"
in it. if anyone can help i would be so greatful. below is my coding
Private Sub pressHereToInputManufacturesNames_Click()
Dim manufacturersName1$
Dim manufacturersName2$
Dim manufacturersName3$
Dim manufacturersName4$
Dim manufacturersName5$
Dim i As Integer
Dim rRange As Excel.Range
Dim strtext$
Set rRange = Range("a1", Range("a1").End(xlUp))
Dim iTheRows As Long
'the below message box instructs the user to enter the word QUIT before
they input a fifth
'manufacturers name the use of "&vbCrlf" in the coding forces a break
in the line of the message
MsgBox "Please can you enter the word QUIT befor putting in 5
manufacturers names" & vbCrLf & "its up to you when you do it aslong as
it is before the 5th name Thankyou"
With ActiveSheet
manufacturesName1 = InputBox("Manufactorsname 1")
.[a1].Value = manufacturesName1
manufacturesName2 = InputBox("Manufactorsname 2")
.[a2].Value = manufacturesName2
manufacturesName3 = InputBox("Manufactorsname 3")
.[a3].Value = manufacturesName3
manufacturesName4 = InputBox("Manufactorsname 4")
.[A4].Value = manufacturesName4
manufacturesName5 = InputBox("Manufactorsname 5")
.[a5].Value = manufacturesName5
End With
' this below section of coding selects the cells which the manufactures
names have been inputted into
iTheRows = rRange.Rows.Count
[a1,a2,a3,a4,a5].Select
' the below section of coding makes another message box come up showing
the manufactures names that have been inputted
'in here i want to i think put coding in to make it stop when the word
quit is put into the input box
'then after this i want the message box to display as a interger how
many names in total have been inputed into the cell range a1:a5
For i = 1 To iTheRows Step 1
strtext$ = strtext$ & ActiveCell.Value & vbCrLf
Next i
MsgBox strtext$
End Sub
--
RELWOD85
------------------------------------------------------------------------
RELWOD85's Profile: http://www.excelforum.com/member.php...o&userid=25753
View this thread: http://www.excelforum.com/showthread...hreadid=391833