Converting a variable from text to numeric in VBA

450nick

Well-known Member
Joined
May 11, 2009
Messages
507
Hi all,

I have the following piece of code which pulls a number (in this case "2") from a string, which I want to load into an array. Later on I want to add other numbers to this and have noticed that I'm getting 2+2 = 22 instead of 4 and this appears to be because the number is being treated as a string. What's the simplest way to convert the variable to a number?

Res(R, 3) = Mid(Res(R, 0), Len(Res(R, 0)) - 3, 1)

The Array "Res" will hold numeric and alphanumeric in different columns so I don't think I can make the whole array numeric
 

Excel Facts

Can a formula spear through sheets?
Use =SUM(January:December!E7) to sum E7 on all of the sheets from January through December
Code:
[COLOR=#333333]Res(R, 3) = Int(Mid(Res(R, 0), Len(Res(R, 0)) - 3, 1))[/COLOR]
 
Upvote 0
In your case you could also use
Code:
Res(R, 3) = CLng(Mid(Res(R, 0), Len(Res(R, 0)) - 3, 1))
 
Upvote 0

Forum statistics

Threads
1,216,033
Messages
6,128,427
Members
449,450
Latest member
gunars

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top