Remove whitespace in VBA excel

calendar_today Asked May 13, 2012
thumb_up 11 upvotes
history Updated April 16, 2026

Question posted 2012 ยท +1 upvotes

I have some code for move text from cell to cell

Dim startIndex As Integer
Dim toIndex As Integer
Dim f As String
Dim g As String

For startIndex = 50 To 60 Step 2
toIndex = Str(startIndex + 1)
f = "F" & Str(toIndex)
g = "G" & Str(startIndex)
Range(f).Value = Range(g).Value
Range(g).Value = ""
Next startIndex

But variable f has “F 51” value instead of “F51”.

How solve this problem ? p.s. It’s my first code on vba.

Accepted answer +11 upvotes

You should be using
CStr
not
Str

Then no workaround is needed for removing an unncessary space

ie

 f = "F" & CStr(toIndex)
 g = "G" & CStr(startIndex)  

From Excel help for Str

When numbers are converted to strings, a leading space is always reserved for the sign of number.

Top vba Q&A (6)

+11 upvotes ranks this answer #36 out of 81 vba solutions on this site .
vba