Saltar al contenido
macrosenexcel.com

Funciones de VBA


(adsbygoogle = window.adsbygoogle || []).push({});

Programar macros de VBA para Excel, como se podrá observar a lo largo de los ejemplos de macro de este blog, lleva a conocer a fondo las distintas maneras de seleccionar o referenciar celdas, como así también saber los distintos términos usados en VBA, además de conocer a fondo las distintas funciones de VBA, siendo el motivo de este post, el cual responde a preguntas como cuales son las funciones de VBA, que funciones trae incorporadas VBA, con que función de VBA se puede hacer tal o cual cosa, como por ejemplo convertir a mayúsculas o minúsculas.

Antes de seguir recomiendo leer un excelente libro sobre Excel que te ayudará operar las planillas u hojas de cálculo, haz click acá, si quieres aprender sobre Excel, en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet.

  

A continuación se va a exponer un ejemplo de algunas de las funciones de VBA más utilizadas, si necesitas obtener un ejemplo de todas las funciones de VBA te invito a consulta mi libro digital sobre funciones de VBA donde se presenta una explicación y un ejemplo de cada una de las funciones de VBA, seguidamente se muestran 3 vídeos explicando el tema.

La función  Abs permite regresar el valor absoluto de un número, éste es su magnitud sin depender del signo es decir si una celda contiene -10 o 10 esta función devuelve el valor absoluto 10, sin depender del signo, aplicado al valor de una celda la expresión sería; la celda B1 es igual al valor absoluto de la celda A1.

Cells(1, 2) = Abs(Cells(1, 1))

Asc, permite obtener el valor ASCII del primer carácter, si en la celda B1 el número escrito es -2788,09 el primer carácter es “-” y se forma con teclado con alt + 45, siendo valor devuelto por la función.

Cells(2, 2) = Asc(Cells(2, 1))

Convierte una expresión al tipo de dato moneda (Currency) en este caso B5 va a ser igual al valor expresado en formato  tipo moneda del valor de la celda A1.

Cells(5, 2) = CCur(Cells(1, 1))

Convierte una expresión al tipo de dato fecha (Date)

Cells(6, 2) = CDate(Cells(6, 1))

Convierte una expresión al tipo de dato decimal (Decimal)

Cells(8, 2) = CDec(Cells(1, 1))

Regresa un número como un texto con formato de porcentaje

Cells(29, 2) = FormatPercent(Cells(1, 1))

Regresa la hora de un valor de tiempo

Cells(30, 2) = Hour(Cells(1, 1))

Muestra un cuadro de diálogo que solicita la entrada del usuario
Cells(32, 2) = InputBox(Cells(1, 1))
Regresa la posición de una cadena de texto dentro de otra cadena
Cells(33, 2) = InStr(Cells(1, 1), 2)
Regresa verdadero si la variable está vacía
Cells(37, 2) = IsEmpty(Cells(1, 1))
Regresa verdadero si la expresión es un valor de error
Cells(38, 2) = IsError(Cells(1, 1))
Regresa verdadero si la variable es un valor numérico
Cells(40, 2) = IsNumeric(Cells(1, 1))
Regresa una cadena convertida en minúsculas
Cells(42, 2) = LCase(Cells(1, 1))
Regresa la longitud de una cadena (en caracteres)
Cells(44, 2) = Len(Cells(1, 1))

Despliega un cuadro de dialogo con un mensaje especificado
Cells(5, 2) = MsgBox(Cells(1, 1))
Regresa la fecha y hora actual del sistema
Cells(5, 2) = Now(Cells(1, 1))

Redondea un número a una cantidad específica de decimales, en este caso dos decimales

Cells(57, 2) = Round(Cells(1, 1), 2)

Invierte el orden de los caracteres de una cadena

Cells(61, 2) = StrReverse(Cells(1, 1))

Convierte una cadena de texto en mayúsculas

Cells(67, 2) = UCase(Cells(1, 1))

Regresa el número contenido en una cadena de texto

Cells(68, 2) = Val(Cells(1, 1))


Regresa el nombre de un día de la semana, si fuera 3 el número de la celda B70, devuelve Martes, la semana empieza el domingo, según la función expuesta.

Cells(70, 2) = WeekdayName(Cells(70, 1))

Obtiene el año de una fecha

Cells(71, 2) = Year(Cells(71, 1))

Los vídeos que siguen muestran una explicación más detallada y gráfica de las funiones presentadas, se ha dividido el tema en tres partes para que no sea tan extenso, recomiendo observar cada uno de ellos para una más fácil comprensión de las funciones; suscribe a nuestra web desde la parte superior derecha de la página ingresando tu mail y a nuestro canal de You Tube para recibir en tu correo vídeos explicativos sobre macros interesantes, como  por ejemplo formulario que crea un listado de todas las hojas para poder luego seleccionarlasbuscar en listbox mientras escribes en textboxordenar hojas libro excel por su nombreconectar Excel con Access y muchos ejemplos más.

function onYtEvent(payload) {
if (payload.eventType == ‘subscribe’) {
// Add code to handle subscribe event.
} else if (payload.eventType == ‘unsubscribe’) {
// Add code to handle unsubscribe event.
}
if (window.console) { // for debugging only
window.console.log(‘YT event: ‘, payload);
}
}

En el cuadro siguiente se exponen  las distintas funciones de VBA y una pequeña descripción de lo que realiza la función:

FUNCIÓN DESCRIPCIÓN
1 Abs Regresa
el valor absoluto de un número
2 Asc Obtiene
el valor ASCII del primer caracter de una cadena de texto
3 CBool Convierte
una expresión a su valor booleano
4 CByte Convierte
una expresión al tipo de dato Byte
5 CCur Convierte
una expresión al tipo de dato moneda (Currency)
6 CDate Convierte
una expresión al tipo de dato fecha (Date)
7 CDbl Convierte
una expresión al tipo de dato doble (Double)
8 CDec Convierte
una expresión al tipo de dato decimal (Decimal)
9 Choose Selecciona
un valor de una lista de argumentos
10 Chr Convierte
un valor ANSI en valor de tipo texto
11 CInt Convierte
una expresión en un dato de tipo entero (Int)
12 CLng Convierte
una expresión en un dato de tipo largo (Long)
13 CreateObject Crea
un objeto de tipo OLE
14 CStr Convierte
una expresión en un dato de tipo texto (String)
15 CurDir Regresa
la ruta actual
16 CVar Convierte
una expresión en un dato de tipo variante (Var)
17 Date Regresa
la fecha actual del sistema
18 DateAdd Agrega
un intervalo de tiempo a una fecha especificada
19 DateDiff Obtiene
la diferencia entre una fecha y un intervalo de tiempo especificado
20 DatePart Regresa
una parte específica de una fecha
21 DateSerial Convierte
una fecha en un número serial
22 DateValue Convierte
una cadena de texto en una fecha
23 Day Regresa
el día del mes de una fecha
24 Dir Regresa
el nombre de un archivo o directorio que concuerde con un patrón
25 EOF Regresa
verdadero si se ha llegado al final de un archivo
26 FileDateTime Regresa
la fecha y hora de la última modificación de un archivo
27 FileLen Regresa
el número de bytes en un archivo
28 FormatCurrency Regresa
un número como un texto con formato de moneda
29 FormatPercent Regresa
un número como un texto con formato de porcentaje
30 Hour Regresa
la hora de un valor de tiempo
31 IIf Regresa
un de dos partes, dependiendo de la evaluación de una expresión
32 InputBox Muestra
un cuadro de diálogo que solicita la entrada del usuario
33 InStr Regresa
la posición de una cadena de texto dentro de otra cadena
34 InStrRev Regresa
la posición de una cadena de texto dentro de otra cadena pero empezando desde
el final
35 Int Regresa
la parte entera de un número
36 IsDate Regresa
verdadero si la variable es una fecha
37 IsEmpty Regresa
verdadero si la variable está vacía
38 IsError Regresa
verdadero si la expresión es un valor de error
39 IsNull Regresa
verdadero si la expresión es un valor nulo
40 IsNumeric Regresa
verdadero si la variable es un valor numérico
41 Join Regresa
una cadena de texto creada al unir las cadenas contenidas en un arreglo
42 LCase Regresa
una cadena convertida en minúsculas
43 Left Regresa
un número específico de caracteres a la izquierda de una cadena
44 Len Regresa
la longitud de una cadena (en caracteres)
45 LTrim Remueve
los espacios a la izquierda de una cadena
46 Mid Extrae
un número específico de caracteres de una cadena de texto
47 Minute Regresa
el minuto de una dato de tiempo
48 Month Regresa
el mes de una fecha
49 MsgBox Despliega
un cuadro de dialogo con un mensaje especificado
50 Now Regresa
la fecha y hora actual del sistema
51 Replace Reemplaza
una cadena de texto con otra
52 Space regresa
una cadena de texto con el número de espacios especificados
53 Split Regresa
un arreglo formado for cadenas de texto que formaban una sola cadena
54 Str Regresa
la representación en texto de un número
55 Right Regresa
un número especificado de caracteres a la derecha de una cadena de texto
56 Rnd Regresa
un número aleatorio entre 0 y 1
57 Round Redondea
un número a una cantidad específica de decimales
58 RTrim Remueve
los espacios en blanco a la derecha de una cadena de texto
59 Second Regresa
los segundos de un dato de tiempo
60 StrComp Compara
dos cadenas de texto
61 StrReverse Invierte
el orden de los caracteres de una cadena
62 Time Regresa
el tiempo actual del sistema
63 Timer Regresa
el número de segundos desde la media noche
64 TimeValue Convierte
una cadena de texto a un número de serie de tiempo
65 Trim Remueve
los espacios en blanco al inicio y final de una cadena de texto
66 TypeName Obtiene
el nombre del tipo de dato de una variable
67 UCase Convierte
una cadena de texto en mayúsculas
68 Val Regresa
el número contenido en una cadena de texto
69 Weekday Regresa
un número que representa un día de la semana
70 WeekdayName Regresa
el nombre de un día de la semana
71 Year Obtiene
el año de una fecha

Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar ejemplos de forma gratuita.


(adsbygoogle = window.adsbygoogle || []).push({});

If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.

Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends