View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
William William is offline
external usenet poster
 
Posts: 119
Default repeat macro through cell until first blank

I'm close, but I'm getting inaccurate results. Do you see any errors?
*****
Sub Sumcharacters()
Dim i As Long, s As String
Dim nSum As Long
Dim lSum As Long
i = 1
Do
Do While i <= Len(ActiveCell)
s = Mid(ActiveCell, i, 1)
If IsNumeric(s) Then
nSum = 0
Do While IsNumeric(s)
nSum = nSum * 10 + CLng(s)
i = i + 1
s = Mid(ActiveCell, i, 1)
Loop
lSum = lSum + nSum
Else
i = i + 1
End If
Loop
ActiveCell.Offset(0, 1).Value = lSum
ActiveCell.Offset(1, 0).Select
Loop Until ActiveCell = 0
End Sub
*****

"Charles Chickering" wrote:

here's one simple way assuming your macro operates based on the active cell:
Sub YourSub()
Do
'YourStuff
ActiveCell.Offset(1).Select
Loop Until ActiveCell = ""
--
Charles Chickering

"A good example is twice the value of good advice."


"william" wrote:

I am running a macro through one specific column of my spreadsheet. From cell
B4 to anywhere from B20 or higher, to be exact. I need to add something to my
code so that my macro will execute in each cell moving down that column until
it encounters the first blank cell. At that point it should stop altogether,
doing nothing with the blank cell.

Any suggestions?