Función de formato VBA

Tabla de contenido

Este tutorial demostrará cómo utilizar la función de formato.

Función de formato

Dar formato a números con formatos predefinidos

La función de formato puede convertir un número en una cadena formateada con formatos numéricos con nombre predefinidos. Esos formatos predefinidos son Moneda, Fijo, Estándar, Porcentaje, Científico, Sí / No, Verdadero / Falso y Activado / Desactivado.

12345678910111213141516171819202122232425262728293031 Sub FormatExample_1 ()Formato MsgBox (1234567.8) 'El resultado es: 1234567.8'El formato simplemente deja el número como estáFormato MsgBox (1234567.8, "Moneda") 'El resultado es: $ 1,234,567.80'Moneda utiliza la configuración de moneda del sistemaMsgBox Format (1234567.8, "Fixed") 'El resultado es: 1234567.80'Fijo: al menos un dígito antes del punto decimal y'usa la configuración del sistema para la parte decimalFormato MsgBox (1234567.8, "Estándar") 'El resultado es: 1,234,567.80'Estándar: Miles de separadores y sistema estándarFormato MsgBox (1234567.8, "Porcentaje") 'El resultado es: 123456780.00%'Porcentaje, multiplicado por 100 con% y sistema estándar.Formato MsgBox (1234567.8, "Científico") 'El resultado es: 1.23E + 06'Notación cientificaFormato MsgBox (1234567.8, "Sí / No") 'El resultado es: Sí'No si el número es ceroFormato MsgBox (1234567.8, "Verdadero / Falso") 'El resultado es: Verdadero'Falso si el número es igual a ceroFormato MsgBox (1234567.8, "Activado / Desactivado") 'El resultado es: Activado'Apagado si el número es ceroEnd Sub

Dar formato a números con formatos definidos por el usuario

La función de formato puede convertir un número en una cadena, formatos numéricos formateados definidos por el usuario. 0 es un marcador de posición de dígitos que muestra un dígito o cero. # es un marcador de posición de dígitos que muestra un dígito o nada. Un punto (.) Es el marcador de posición decimal,% es el marcador de posición de porcentaje y la coma (,) es el separador de miles. Se puede agregar texto en el formato usando comillas dobles (“”) y se puede agregar un solo carácter si se usa después de una barra invertida (\).

1234567891011 SubFormatoEjemplo_2 ()MsgBox Format (7.8, "000.00") 'El resultado es: 007.80Formato MsgBox (12347.8356, "000.00") 'El resultado es: 12347.84Formato MsgBox (7.8, "###. ##") 'El resultado es: 7.8Formato MsgBox (12347.8356, "###. ##") 'El resultado es: 12347.84Formato MsgBox (7.8, "\ $. 00") 'El resultado es: $ 7.80Formato MsgBox (1237.835, "ABA0.00") 'El resultado es: ABA1237.84Formato MsgBox (12347.8356, "000.00%") 'El resultado es: 1234783.56%Formato MsgBox (12347.8356, "% 000.00") 'El resultado es:% 12347.84End Sub

Dar formato a números según los valores

La función de formato puede tener diferentes secciones usando diferentes reglas de formato para números positivos, números negativos, cero y nulos. Estas secciones están separadas por un punto y coma.

1234567 SubFormatoEjemplo_3 ()Formato MsgBox (7.8, "000.00; (000.00); \ z \ e \ r \ o; nada") 'El resultado es: 007.80Formato MsgBox (-7.8, "000.00; (000.00); \ z \ e \ r \ o; nada") 'El resultado es: (007.80)Formato MsgBox (0, "000,00; (000,00); \ z \ e \ r \ o; nada") 'El resultado es: ceroFormato MsgBox (Nulo, "000.00; (000.00); \ z \ e \ r \ o; nada") 'El resultado es: nadaEnd Sub

Dar formato a fechas con formatos predefinidos

La función de formato puede formatear fechas con diferentes formatos predefinidos. Esos formatos son de fecha larga, media y corta y también de tiempo largo, medio y corto.

1234567891011121314 SubFormatoEjemplo_4 ()Dim DateEx como fechaDateEx = # 18/4/2020 7:35:56 PM #Formato de MsgBox (DateEx, "Fecha general") 'El resultado es: 18/4/2020 7:35:56 p.m.MsgBox Format (DateEx, "Long Date") 'El resultado es: sábado 18 de abril de 2022MsgBox Format (DateEx, "Medium Date") 'El resultado es: 18 de abril de 20MsgBox Format (DateEx, "Short Date") 'El resultado es: 18/4/2020MsgBox Format (DateEx, "Long Time") 'El resultado es: 7:35:56 p.m.MsgBox Format (DateEx, "Medium Time") 'El resultado es: 07:35 p.m.MsgBox Format (DateEx, "Short Time") 'El resultado es: 19:35End Sub

Dar formato a fechas con formatos definidos por el usuario

La función de formato puede formatear fechas con formatos definidos por el usuario. Se pueden utilizar caracteres como d, m, y, w, q para crear formatos de fecha personalizados.

123456789101112131415161718192021222324 SubFormatoEjemplo_5 ()Dim DateEx como fechaDateEx = # 18/4/2020 7:35:56 PM #MsgBox Format (DateEx, "m / d / aa") 'El resultado es: 18/4/2020Formato MsgBox (DateEx, "mm-dd-aa") 'El resultado es: 18/04/2020Formato de MsgBox (DateEx, "mmm-dd-aa") 'El resultado es: 18 de abril de 2020Formato de MsgBox (DateEx, "mmmm-dd-aa") 'El resultado es: 18 de abril de 2020Formato de MsgBox (DateEx, "mm-ddd-aa") 'El resultado es: 04-Sat-2020Formato MsgBox (DateEx, "mm-dddd-aa") 'El resultado es: 04-sábado-2020Formato de MsgBox (DateEx, "y")El resultado es: 109'número de días del año 1-366Formato de MsgBox (DateEx, "ww")El resultado es: 16'número de semana en el año 1-52Formato de MsgBox (DateEx, "q")'El resultado es: 2'trimestre en el año 1-4End Sub

Se pueden utilizar combinaciones de caracteres como h, n, sy am, pm para crear formatos de hora personalizados.

123456789101112 SubFormatoEjemplo_6 ()Dim DateEx como fechaDateEx = # 4/18/2020 7:06:05 PM #Formato MsgBox (DateEx, "h: n: s") 'El resultado es: 19: 6: 5Formato de MsgBox (DateEx, "hh: nn: ss") 'El resultado es: 19:06:05Formato MsgBox (DateEx, "hh: nn: ss am / pm") 'El resultado es: 07:06:05 pmFormato MsgBox (DateEx, "hh: nn: ss AM / PM") 'El resultado es: 07:06:05 PMFormato MsgBox (DateEx, "hh: nn: ss a / p") 'El resultado es: 07:06:05 pFormato MsgBox (DateEx, "hh: nn: ss A / P") 'El resultado es: 07:06:05 PEnd Sub

Formato para una mejor legibilidad

La función de formato puede formatear cadenas o números para una mejor legibilidad. @ es un marcador de posición de carácter que se utiliza para mostrar un carácter o un espacio. & es un marcador de posición de carácter que se utiliza para mostrar un carácter o nada. ! se puede usar para usar marcadores de posición de caracteres de izquierda a derecha y se puede usar para forzar minúsculas o mayúsculas. Puede ser útil para formatear números de teléfono u otros números grandes sin cambiar el valor original.

12345678910111213141516171819202122 SubFormatoEjemplo_7 ()Dim StrEx como cadenaStrEx = "ABCdef"Formato MsgBox (StrEx, "- @@@ - @@ - @@") 'El resultado es: - AB-Cd-efFormato MsgBox (StrEx, "- &&& - && - &&") 'El resultado es: -AB-Cd-ef'Empieza de derecha a izquierda.Formato MsgBox (StrEx, "- @@@ - @@ - @@ - @@") 'El resultado es: - -AB-Cd-efFormato MsgBox (StrEx, "- &&& - && - && - &&") 'El resultado es: --AB-Cd-ef'Empieza de derecha a izquierda. Cuando no hay caracteres @ agrega espacios y & no agrega nadaFormato MsgBox (StrEx, "! - @@@ - @@ - @@ - @@") 'El resultado es: -ABC-de-f -Formato MsgBox (StrEx, "! - &&& - && - && - &&") 'El resultado es: -ABC-de-f'Empieza de izquierda a derecha debido al!MsgBox Format (StrEx, ">") 'El resultado es: ABCDEFFormato MsgBox (StrEx, "<") 'El resultado es: abcdefFormato MsgBox (1234567890, "@@@ - @@@ - @@@@") 'El resultado es: 123-456-7890Formato MsgBox (1234567890, "@@@@ - @@@ - @@@") 'El resultado es: 1234-567-890End Sub

Dar formato a patrones en celdas de hojas de trabajo

La función de formato se puede usar en código VBA y también en celdas de hojas de trabajo. Seleccione la celda o rango de celdas y siga la entrada de menú Formato de celdas> Personalizado. Hay muchos formatos definidos por el usuario y también el usuario puede crear sus propios formatos personalizados.

Dar formato a patrones con fórmula de texto

La función de formato puede cambiar directamente el formato de un valor dentro del código VBA. También podemos usar la fórmula de Excel Text para obtener el mismo resultado usando WorksheetFunction.Text.

1234567891011 SubFormatoEjemplo_8 ()Formato de MsgBox (7.8, "000.00")'El resultado es: 007.80MsgBox WorksheetFunction.Text (7.8, "000.00")'El resultado es: 007.80Formato de MsgBox (7.8, "###. ##")'El resultado es: 7.8MsgBox WorksheetFunction.Text (7.8, "###. ##")El resultado es: 7.8End Sub

Va a ayudar al desarrollo del sitio, compartir la página con sus amigos

wave wave wave wave wave