Home |
Search |
Today's Posts |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Thanks, Dan. This is good info. I didn't know about
CStr, but it looks like it would work for me. Keith Lorenzen -----Original Message----- Keith, If VBA doesn't understand that you want a string, you could try using CStr instead of Str, CStr is very similar. It's a conversion function, following is help for CStr Returns for CStr If expression is CStr returns Boolean A string containing True or False Date A string containing a date in the short date format of your system Null A run-time error Empty A zero-length string ("") Error A string containing the word Error followed by the error number Other numeric A string containing the number Dan E "Keith Lorenzen" wrote in message ... Thanks so much for the good information. I just can't understand why it won't work for me. What's interesting is that any other character seems to return what I expect, and if I surround the period with spaces I get what I expect, but I don't want the period surrounded by spaces! It's pretty late in the day. I'll try again tomorrow. Thanks also for your info re Str function. What you say makes sense to me. Originally I had just used the Dim functions, but when I couldn't get what I wanted, I added the Str in an attempt to get VBA to understand that I wanted a string. Thanks again. Keith Lorenzen -----Original Message----- Works for me. The three strings should concatenate, including the ".". I cannot find a problem in what you have posted. BTW, Str () returns the string representation of a number, but Mid already returns a string, as do the concatenation operators (&). Using Str coerces the string to a number then returns the string representation of that number. That's fine if that is what you want, but I thought you'd like to know that it can make a difference. compa Dim v As String v = "110000000" Debug.Print Mid(v, 5, 5) & "." & Mid(v, 1, 2) Debug.Print Str(Mid(v, 5, 5) & "." & Mid(v, 1, 2)) -- Bob Kilmer "Keith Lorenzen" wrote in message ... I have this code which attempts to return parts of a string, separated by a period: For Each c In Range(RefEdit1.Value).Cells c.Value = Str(Mid(c.Value, 5, 5) & "." & Mid (c.Value, 1, 2)) When I take out the & ".", I get what I expect (the fifth through ninth character of the string, followed by the first two characters of the same string). But when I have the & "." in the code (my intention is to have a dot (period) between the two sections of text), I get only the first Mid function returned (characters five through nine). Can anyone help me with why this is happening? I thought that by enclosing my period in double quotes that the program would undersand it to mean text, but apparently it's considering it something else. Thanks, Keith Lorenzen . . |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
help with string functions please | New Users to Excel | |||
String functions in VB macro | Excel Discussion (Misc queries) | |||
String of functions confusion - please help | Excel Discussion (Misc queries) | |||
return partial string | Excel Worksheet Functions | |||
STRING functions | Excel Worksheet Functions |