Removing spaces from value using VBA

B

Barb Reinhardt

I need to define a value for rangename. I have this working so far:

rangename = Workbooks(curbook).Worksheets(datasheet).Range("a" & i).Value
Debug.Print rangename

Unfortunately, the range name has SPACES in it and when I use it to create a
named range, it GACKS. How do I remove the spaces from this?

Thanks,
Barb Reinhardt
 
B

Barb Reinhardt

Trim leaves ONE space. I'd like to use the SUBSTITUTE function, but am not
sure how to add it to what I have. Suggestions?

Thanks,
Barb Reinhardt
 
O

OZDOC

Range("a" & i).Value

I am guessing this is where the name comes from so this reference cell can
youshow me what you have in it ? formula ?
 
J

Joe HM

Darn ... I must be stupid ... here we go ...
rangename = Replace(rangename, " ", "")

Sorry about that ...
Joe
 
J

Jim Thomlinson

Perhaps this will help... Note Application.Trim and Trim are different. You
probably want application.substitute

Sub TrimTest()
Dim str As String

str = " This Is Only A Test "
MsgBox Trim(str)
MsgBox Application.Trim(str)
MsgBox Application.Substitute(str, " ", "")
End Sub
 
B

Barb Reinhardt

The value in this cell is something like "Company Name" and I need to change
it either to "CompanyName" or "Company_Name". It's printing what's there,
but range names can't have spaces and I need to remove them. I'd like to
know how I use the SUBSTITUTE function with this

rangename = Workbooks(curbook).Worksheets(datasheet).Range("a" & i).Value

So that "Company Name" can be converted to "Company_Name".
 
J

Joe HM

Here we go ...
rangename = Replace(Workbooks(curbook).Worksheets(datasheet).Range("a"
& i).Value, " ", "_")

Joe
 
O

OZDOC

Jim, the reason wanted to see the formula in the cell is it may be possible
to re write it to fix the problem,

i.e. you could if it is looking up a reference trim from that ref point, you
could use find to find the space then use left function right function etc,
but it is hard to sort something without this, in other words fix it before
the macro not in the macro ? don't know if it was you want but just an idea
 

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