Vlookup y el punto decimal

Hola,
Estoy haciendo un aMacro en la que uso la función vlookup el problema que tengo es que le paso el valor que busco en una variable con decimales el problema es que en el formato que tengo separa la parte decimal con una "," y la función requiere que sea con un "." para que no de error por lo que me gustaría saber o bien la manera de que funcione con la "," o bien la forma de sacar la parte entera (sin redondeo) y la parte decimar y yo hacer la unión manual. Para que se hagan una idea les paso la función.
ActiveCell.formulR1C1 = _
"VLOOKUP(" & IMPORTE & ",C[3], 1,FALSE)"
Si el importe tiene parte decimal casca por que sería importe = 244,40 y la coma no le gusta tendría que ser importe = 244.40
Si no pueden decirme como hacer que eso funcione con que me digan de que modo puedo dividir el importe en su parte entera y su parte decimal ya lo hago yo manualmente.
Espero haberme explicado. Gracias

1 Respuesta

Respuesta
Las partes, entera y decimal, las podes obtener con:
entero = Int(IMPORTE)
decima = Round(IMPORTE - entero, 2)
Podes redondear a + o - decimales, el ejemplo lo deja en 2
Al final di yo mismo con la solución, y el problema de la solución que me planteas es que devuelve 0, xx y no se puede usar porque si lo concatenas con la parte entera quedaría algo así xx.0, xx por tanto hay que añadir un apaso más que es extraer los números a partir de la coma. La solución que yo he aplicado es la siguiente:
pdecimal = Mid(Round(IMPORTE - entero, 4), 3, 4)
Cómo puedes observar a tu solución le he añadido lo que te comentaba para despreciar el 0, .No sé si es una solución muy elegante pero al menos funciona.
Gracias de todos modos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas