Counting the length of a string and adding spaces...
Dear Bob I have noticed that it is only generating the error on certain
rows, if i run it on a row it will work fine, but then if i run it on
some other row it generates the problem.
I've included the full code for the macro i'm using here, which the
code you gave me was a part of. Could you please take a look and see
where you think it might be going wrong?
.....
Sub SelectEveryThird()
Dim ilastcolumn As Long
Dim textstring As String
Application.ScreenUpdating = False
ilastcolumn = (Cells(ActiveCell.Row,
Columns.Count).End(xlToLeft).Column)
' 42 is the number of columns between repeated fields.
' 6 is the numberical reference for the first column that contains make
data.
model = 7
expirary = 38
commision = 42
For make = 6 To ilastcolumn Step 42
With ActiveCell
sMake = Cells(.Row, make).Value
sModel = Cells(.Row, model).Value
sExpiry = Cells(.Row, expirary).Value
sCommission = Cells(.Row, commision).Value
textstring = sMake & Space(20 - Len(sMake)) & " - " & _
sModel & Space(30 - Len(sModel)) & " - " & _
sExpiry & Space(30 - Len(sExpiry)) & " - " & _
"£" & sCommission & Space(30 - Len(sCommission)) &
_
Chr(10)
End With
If model + 42 = ilastcolumn Then
model = ilastcolumn
Else
model = model + 42
End If
If expirary + 42 = ilastcolumn Then
k = expirary
Else
expirary = expirary + 42
End If
If commision + 42 = ilastcolumn Then
commision = ilastcolumn
Else
commision = commision + 42
End If
Next make
Cells(ActiveCell.Row, "A").Value = textstring
End Sub
|