do .... loop

N

nhanh

Hi,

I'm trying to use the Do loop in my coding but am getting no where.

I have already prompted the user with an input box asking for thei
name.

I have a list of names in sheet2
My aim is to start at the beginning of the list and move down th
column one cell at a time until i reach an empty cell. When I get t
the empty cell, i want input the new name that the user has jus
inputed.

Currently i have:


Public Sub AddNames()

Worksheets("Sheet1").Select
Range("B2").Select

Dim FirstName As String
FirstName = InputBox("What is your firstname?", "First Name")
ActiveWorkbook.Worksheets("sheet1").Range("B2").Value = FirstName

Dim SurName As String
SurName = InputBox("What is your surname?", "Surname Name")
ActiveWorkbook.Worksheets("sheet1").Range("B2").Offset(0, 1).Value
SurName

Worksheets("Sheet2").Select
Range("A2").Select

Do Until IsEmpty(ActiveCell)

ActiveCell.Value = FirstName
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = SurName

Exit Do
Loop


I am sure there is something wrong with the coding after "D
Untill...". Any help would be REALLY appreciated. Thank
 
D

Don Guillett

try this

Sub tt()
lastcell = Cells(Rows.Count, "a").End(xlUp).Row + 1
Cells(lastcell, "a").Value = InputBox("First Name")
Cells(lastcell, "a").Offset(, 1).Value = InputBox("last name")
End Sub
 
K

kkknie

Here's a diagnosis:

Worksheets("Sheet2").Select <-- Select Sheet2
Range("A2").Select <-- Select A2

Do Until IsEmpty(ActiveCell) <-- Do until A2 is empty

ActiveCell.Value = FirstName <-- Set A2 to FirstName
ActiveCell.Offset(0, 1).Select <-- Select B2
ActiveCell.Value = SurName <-- Set B2 to SurName

Exit Do
Loop

Don't see how you would ever exit here. Here is my thought
(untested):

If you want to enter it into the last available space, use this:

Range("A65536").End(xlUp).Offset(1,0).Value = FirstName
Range("A65536").End(xlUp).Offset(1,1).Value = SurName

If you are looking to add to the next available space (in column A)
use:

For Each r in Range("A1:A" & Range("A65536").End(xlUp).Row)
If r.Value = "" then
r.Value = FirstName
r.Offset(0,1).Value = SurName
Exit For
End If
Next

Sorry that I didn't do any testing, but I've got a new PC at home an
don't have Excel loaded yet. I'll check at work tomorrow (8am EST) t
see how things are going with your issue.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top