Cómo dar formato a número con VBA en Excel (3 métodos)

  • Compartir Este
Hugh West

Aplicación de Macro VBA es el método más eficaz, rápido y seguro para ejecutar cualquier operación en Excel. En este artículo, le mostraremos cómo formatear el número en Excel utilizando VBA .

Descargar el cuaderno de ejercicios

Puede descargar gratuitamente el libro de prácticas en Excel desde aquí.

Formatear número con VBA.xlsm

3 Métodos para Formatear Número en Excel con VBA

Fíjate en el siguiente ejemplo. Hemos almacenado los mismos números en ambos Columna B y C para que cuando formateemos el número en Columna C sabrá por el Columna B en qué formato estaba antes el número.

1. VBA para formatear el número de un tipo a otro en Excel

Primero, sepamos cómo formatear el número 12345 de Célula C5 en nuestro conjunto de datos con VBA a Moneda formato.

Pasos:

  • Pulse Alt + F11 en su teclado o vaya a la pestaña Desarrollador -> Visual Basic para abrir Editor de Visual Basic .

  • En la ventana de código emergente, en la barra de menús, haga clic en Insertar -> Módulo .

  • Copie el siguiente código y péguelo en la ventana de código.
 Sub NumberFormat() Range("C5").NumberFormat = "#,##0.0" 'Esto formateará el número 12345 en una moneda End Sub 

Su código ya está listo para ejecutarse.

  • Pulse F5 en el teclado o, en la barra de menús, seleccione Run -> Run Sub/UserForm También puede hacer clic en el botón pequeño icono Play en la barra de submenú para ejecutar la macro.

Este código formatear el número 12345 en una moneda con un valor decimal.

Si desea mostrar el símbolo de moneda en la celda, sólo tiene que poner el símbolo antes del código.

 Sub NumberFormat() Range("C6").NumberFormat = "$#,##0.0" 'Esto formateará el número 12345 en moneda con el símbolo $ End Sub 

En nuestro caso, hemos utilizado el dólar ($) Puede utilizar cualquier símbolo monetario que desee.

Este código formateará el número en moneda con un dólar ($) símbolo.

También puedes convertir este formato de número a muchos otros formatos. Sólo tienes que seguir el código que aparece a continuación para transformar el número al formato que necesites.

 Sub NumberFormat() 'Número original 12345 Range("C5").NumberFormat = "#,##0.0" 'Esto formateará el número en una moneda Range("C6").NumberFormat = "$#,##0.0" 'Esto formateará el número en una moneda con símbolo $ Range("C7").NumberFormat = "0.00%" 'Esto formateará el número en un valor porcentual Range("C8").NumberFormat = "#,##.00;[red]-#,##.00" 'Estoformateará el número en rojo (Formato condicional) Range("C9").NumberFormat = "#?/?" 'Esto formateará el número en fracciones Range("C10").NumberFormat = "0#"" Kg""" 'Esto formateará el número con texto Range("C11").NumberFormat = "#-#-#-#-#" 'Esto formateará el número con separadores Range("C12").NumberFormat = "#,##0.00" 'Esto formateará el número connúmero con comas y decimales si procede Range("C13").NumberFormat = "#,##0" 'Esto formateará el número en miles con comas si procede Range("C14").NumberFormat = "#,##0.00" 'Esto formateará el número en millones Range("C15").NumberFormat = "dd-mmm-aaaa hh:mm AM/PM" 'Esto formateará el número en fecha & hora End Sub 

Macro VBA

Visión general

Read More: Excel Formato de Número Personalizado Condiciones Múltiples

2. Macro para Formatear un Rango de Números en Excel

Hemos visto cómo cambiar el formato numérico de una sola celda. Pero si desea cambiar el formato de un rango de números entonces el VBA son prácticamente iguales a los mostrados en la sección anterior. Esta vez, en lugar de pasar un único número de referencia de celda dentro de los paréntesis del objeto Range, tiene que pasar toda la gama (así C5:C8) dentro de los corchetes.

 Sub NumberFormatRng() Range("C5:C8").NumberFormat = "$#,##0.0" End Sub 

Este código formateará un rango específico de números de su conjunto de datos en Excel.

Read More: Cómo formatear números a millones en Excel (6 maneras)

Lecturas similares:

  • Excel Redondea a 2 Decimales (con Calculadora)
  • Cómo Poner Paréntesis para Números Negativos en Excel
  • Cómo formatear un número en miles K y millones M en Excel (4 maneras)
  • Formato de Número Personalizado: Millones con un Decimal en Excel (6 Maneras)
  • Cómo cambiar el formato de número de coma a punto en Excel (5 maneras)

3. Incrustar VBA para convertir el número con la función de formato en Excel

También puede utilizar la función Función de formato en Excel VBA para convertir los números. La macro para hacerlo es,

Pasos:

  • De la misma manera que antes, abra Editor de Visual Basic del Desarrollador y Inserte a Módulo en la ventana de código.
  • En la ventana de código, copia el siguiente código y pégalo.
 Sub NumberFormatFunc() MsgBox Format(12345, "#,##0.00") End Sub 

Su código ya está listo para ejecutarse.

Obtendrá el número formateado en el cuadro de mensaje.

Contenido relacionado: Cómo convertir un número en porcentaje en Excel (3 formas rápidas)

Conclusión

Este artículo muestra cómo formatear el número en Excel con VBA Espero que este artículo le haya sido muy útil. No dude en preguntar si tiene alguna duda sobre el tema.

Hugh West es un capacitador y analista de Excel altamente experimentado con más de 10 años de experiencia en la industria. Tiene una Licenciatura en Contabilidad y Finanzas y una Maestría en Administración de Empresas. Hugh tiene una pasión por la enseñanza y ha desarrollado un enfoque de enseñanza único que es fácil de seguir y comprender. Su conocimiento experto de Excel ha ayudado a miles de estudiantes y profesionales en todo el mundo a mejorar sus habilidades y sobresalir en sus carreras. A través de su blog, Hugh comparte su conocimiento con el mundo, ofreciendo tutoriales gratuitos de Excel y capacitación en línea para ayudar a las personas y empresas a alcanzar su máximo potencial.