0% encontró este documento útil (0 votos)
144 vistas34 páginas

Ayuda de Macro

Este documento proporciona una introducción a las macros en Excel y el lenguaje VBA. Explica conceptos clave como MsgBox, InputBox, bucles, variables de datos, y controles de formulario. También describe el entorno VBA, módulos, procedimientos, y conceptos básicos de programación orientada a objetos como objetos, propiedades y métodos. El objetivo es enseñar los fundamentos necesarios para que el lector pueda crear macros efectivas en Excel.

Cargado por

Harold Cobo
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
144 vistas34 páginas

Ayuda de Macro

Este documento proporciona una introducción a las macros en Excel y el lenguaje VBA. Explica conceptos clave como MsgBox, InputBox, bucles, variables de datos, y controles de formulario. También describe el entorno VBA, módulos, procedimientos, y conceptos básicos de programación orientada a objetos como objetos, propiedades y métodos. El objetivo es enseñar los fundamentos necesarios para que el lector pueda crear macros efectivas en Excel.

Cargado por

Harold Cobo
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 34

MANUAL DE AYUDA

VBA MACRO
AUTOR:
CRISTHIAN FERNANDO
CASTRO VERA
FACULTAD ECONOMÍA
CUSCO PERU 2021
VBA – MACROS EN EXCEL
En la actualidad ya no es un lujo sino una necesidad primordial en el ámbito laboral. Es por
ello que nos vemos en la necesidad de tratar explicar los conceptos claves para que seas un
excelente programador y puedas brindar las soluciones necesarias en beneficio de la
empresa y éxito laboral
Por lo tanto, en las siguientes líneas citaremos los conceptos claves, luego pasaremos a
demostrar con casos prácticos de la vida real.
CONCEPTOS CLAVES AYUDA OPCIONAL

 MsgBox * Breek boy = frenar


 InputBox * Call = llamar
 Exit sub * For each = atacar variables tipo objeto
 End sub * Mid = extrae
 Else- If - Then * Abs = valor absolute
 Select * Next i = siguiente valor I
 Function * step = incrementar
 Cell - offset * Mod = permite obtener el residuo
 ActiveCell * Row = referencia a una celda
 ActiveValue * Count = contar cantidad de veces
 Select Case * uf = última fila; uc = última columna
 Worksheet * Sub = Indica el inicio de la Macro
 Workbook * End sub = Indica el final de la Macro
 Range * if = verifica si el resultado es V o F.
BUCLES CONTROLES DE FORMULARIO

 For – Next * Barra desplazamiento


 Do While – Whend * Botón
 Do Until * Botón de opción
*Casilla de verificación
VARIABLES * Control de numero

 Variable Local * Cuadro combinado


 Variable Publica * Cuadro de grupo
*Cuadro de lista
TIPO DE DATOS * Etiqueta

 Integer = valor entero número


 String = carácter y/o texto
 Long = # largos
Introducción
Las iniciales VBA provienen del inglés Visual Basic for Applications, el cual podemos
traducirlo como “Aplicaciones para Visual Basic”. De modo que VBA nos permite:
 Automatizar las tareas que realizamos en Excel y crear Macros
 Crear funciones complicadas y/o personalizadas
 Interactuar con ficheros
Macros y su relación con VBA
Podemos decir que una Macro es un procedimiento y un procedimiento es una Macro y
ejecutamos procedimientos. VBA es el entorno donde creo mis procedimientos o Macros

ENTORNO VBA
Abrimos una hoja de Excel, ALT + F11 para abrir entorno de VBA

Ventana de trabajo

Se llama Explorador de Proyectos


porque encontramos todos los objetos

Es donde escribimos nuestro código


en este caso hacemos la MACRO

El editor de Visual Basic sirve para crear, ver y modificar las


Ventanas de propiedades, si macros existentes. Esto incluye a las macros que se han
seleccionamos un objeto y vemos creado por medio del uso del grabador de macro, las que se
su propiedad
han escrito manualmente con el lenguaje VBA, y permite
verificar que cada línea de programación este correctamente
escrita y cumpla su función

La barra de menú es lo que más vamos a usar:

 Ejecutar macro, interrumpir y reestablecer


¿Luego de ello debemos saber cómo concepto qué es un módulo?
Sabemos que un módulo podemos hacer 1 o más procedimientos
Primero empezamos creando un módulo, luego cambiamos un nombre

Cuando insertamos un módulo en la ventana de propiedades podemos cambiar un nombre


MOD_EJERCICIOS, como sabemos podemos crear 1 a más módulos
 Módulo 1: crear procedimientos
 Módulo 2: crear funciones
 Módulo 3: crear variables publicas
Ahora crearemos el Módulo 1
Decimos que un módulo podemos crear un procedimiento y ¿qué es un procedimiento? Un
procedimiento es una secuencia de pasos que ejecutas y en un módulo podemos crear 1 o
más procedimientos.
PROCEDIMIENTOS
Un procedimiento está formado por un conjunto de sentencias que permite resolver un
problema. Un módulo está formado por uno o más procedimientos.
La sentencia Sub y End Sub son obligatorias al definir cualquier procedimiento

Sub Procedimiento (argumento1, argumento2,)


[Sentencias]
End Sub

Es equivalente a:

Public Sub Procedimiento (argumento1, argumento2,)


[Sentencias]
End Sub

Aplicación en VBA
En este primer procedimiento usaremos la primera función de VBA
 MsgBoxt “caja de mensaje”: MsgBox (Mensaje, Tipo de mensaje, Titulo)
 InputBox: es un cuadro de mensaje nos permite escribir cualquier cosa sobre él.
Al darle clic nos aparece la ventana de mensaje
Ahora cuando queremos trabajar con celdas debemos emplear dos palabas: [Cells, Range], estas
palabras hacen referencia a una celda.

 Range: te ofrece ayuda


 Cells: No ofrece ayuda y se referencia fila y columna

'Ahora cuando queremos hacer referencia a una celda

'Usamos Cells o Range

A3 …. Range("A3”) ...... Cells (3,1) .... Cells(3,"A")'

Range ("A4: B9") …… Range (Cells (4,1), Cells (9,2))

POGRAMACIÓN ORIENTADA A OBJETOS


A la hora de trabajar con macros en Excel, deben tenerse claros ciertos conceptos de lo que se llama
programación orientada a objetos (OOP).

 Objeto: algo abstracto ‘cualquier cosa’


 Propiedades: características
 Métodos: acciones
GRAFICO
OBJETO: El concepto objeto tiene un concepto equivalente al objeto de nuestro mundo real, es
decir se refiere de algo abstracto que puede ser cualquier cosa. En nuestro entorno siempre
estamos en constante relación con objetos: los creamos, los usamos, los modificamos cambiando
sus atributos, características o propiedades, los relacionamos con otros objetos, etc. Por ejemplo,
tomemos el objeto CARRO.
Donde un automóvil es un objeto bastante pesado que tiene un conjunto de propiedades como su
identificación (placa), antigüedad, marca, modelo, Kilometraje, etc. Tiene también un conjunto de
funciones como la de desplazarse, detenerse, ponerse en marcha. Podemos cambiarle de color,
aumentar o quitar sus accesorios; es decir, podemos modificar sus propiedades.

Modelo KM Año Características = Propiedades

CARRO

Encender Acelerar Frenar Acciones = Métodos

OBJETO
Tienen de la capacidad de ser activados para poner en acción sus funcionalidades; es decir,
disponemos de un procedimiento para ponerlo en marcha, avanzar en retroceso, detenerlo,
voltear a la izquierda o derecha; es decir, mediante un conjunto de métodos podemos darle
uso al objeto automóvil.
En la POO el objeto es el automóvil; las propiedades de este objeto son sus características y los
métodos lo constituyen las funcionalidades o procedimientos con los cuales hacemos uso del objeto
y modificamos su estado o contenido. En el Excel podemos hablar del objeto Celda. Este objeto
tiene dimensiones, color de fondo, tipo de borde, tiene un contenido o valor. Posee algunas
funcionalidades que nos permiten cambiarlo de tamaño, de color de fondo, de contenido. El objeto
celda pertenece al objeto Rango y está relacionada con él y tiene otras relaciones con otros objetos
como el objeto Hoja, el objeto Gráfico, Libro, etc.

Color Tamaño Value Atributos o Propiedades

CELDA

Select Copy Paste Acciones = Métodos

En resumen, podemos decir que todo objeto tiene propiedades y métodos, por ello en VBA habrá
ocasiones donde al poner Range ‘A4’. [Aquí te aparecerá una mano o un borrador] la mano hace
referencia a propiedad y el borrador métodos. Por ultimo decimos que del objeto Celda vamos a
trabajar su Value y su Select. Antes de explicar el concepto de propiedad haremos un hincapié en
explicar la diferencia entre Cells y Range.
CELLS Y RANGE
Primero debemos saber que cuando queremos hacer referencia a una celda o conjunto de celdas
usamos Cells y Range, y se tiene que conocer su posición especifica en función de fila y columna
que ocupa. Los objetos Range y Cells en la mayoría de casos pueden ser utilizados sin distinción
algunas, sin embargo, hay casos puntuales donde se recomienda el uso de uno de los dos.
Ejemplo:
 Range(‘A1’). Value = Valor p/una celda
 Range (‘A1:C5’). Value = Valor p/un conjunto de celdas
 Cells (fila, columna). Actívate = Activa la celda (fil, col)
Para seleccionar una celda
Ejemplo:
Si se quiere seleccionar la celda "C2", se tiene dos opciones.
Range("C2").select o Cells(2,3).select
* cells(i,j) , donde i=fila i ; j=columna j.
Para dar valor a una celda
Ejemplo:
-Si se desea darle valor a la celda "C2" =620, se tiene dos opciones
Range("C2").value=620 o Cells(2,3).value=620


 Range: Su uso es más sencillo y facilita ayuda, se dice que entre las propiedades del objeto
Range están Value, que contiene el valor de la celda Column y Row que contiene
respectivamente la fila y columna de la celda, Font que contiene la fuente de los caracteres
que muestra la celda. Podemos decir que Range como objeto tiene método y estos métodos
sirven para llevar a cabo una acción sobre un objeto. Es decir:
Value

Range
Activate
 Cells: Tiene como primer argumento número de fila y como segundo argumento número de
columna, este objeto no nos permite seleccionar un rango porque solamente podemos
especificar una celda a la vez. El objeto Cells ofrece una ventaja que debemos considerar
cuando necesitamos hacer un recorrido programático por varias celdas ya que será muy
sencillo especificar las filas y columnas utilizando una variable numérica.
Ejemplo:
Sub AZUL()
For i = 4 To 40
For j = 2 To 10
Cells(i, j).Value = i * j
Next j
Next i
End Sub
PARTICULARIDADES
Objeto Range
- Permite seleccionar más de una celda.
Ejemplo:
Range("A1:B5").Select
*El objeto Cells, no permite seleccionar más de una celda.
Objeto Cells
- Es compatible con selección de celdas bajo un patrón de formula. La ventaja del uso del objeto
Cells, es permitir vincular funciones numéricas al uso de las celdas y/o a su selección.
Ejemplo:
Se desea conocer la suma que de la combinación de una fila y columna, entonces se establece el
siguiente programa:
Sub celdasuma()
For i = 1 To 10 For j = 1 To 10
Cells(i, j).Value = i + j
Next i
Next j
End Sub
De esta forma se conocerá lo propuesto en el ejemplo, asimismo los rangos podrán ampliarse de
acuerdo a lo deseado. RESUMEN
Un objeto para acceder a una propiedad tiene que ir acompañado de un punto
Range (A2). = "CRISTHIAN"
Puedes usar RANGE cuando estemos usando variables y las variables las tengas que meter en filas
o columnas usar CELLS.
SELECT: te posiciona en una celda, es decir mueve el curso a la celda que quieres seleccionar
¿Sirve usar el SELECT?
No, si queremos optimizar códigos debemos evitar SELECT porque el Select lo que hace es retrasar
tiempo es ¿decir que me sirve mover el cursor? Si nosotros queremos automatizar, lo cual no vamos
a ver cuál es movimiento que hace la Macro.
PROPIEDAD: Como hemos explicado anteriormente las propiedades son las características,
atributos o formas del objeto a las que se hace referencia mediante el uso de variables. Una
propiedad de objeto común de Excel es su Nombre, que nos permitirá usarlos en los diferentes usos
que hagamos del objeto. De manera que una celda, un rango de celdas, una hoja, libro, gráfico o
tabla en Excel, tendrá un nombre con el cual lo identificaremos. Para hacer referencia a las
propiedades mediante los programas en VBA, se usa la sintaxis: NombreDelObjeto.Propiedad
Ejemplo:
Range("A5"). Name: Aquí se hace referencia al nombre del objeto Range de la celda A5.
METODO: Como se mencionó anteriormente son acciones de un objeto, es decir que cosa puede
hacer el objeto por ejemplo el Select: seleccionar una celda. Este método viene pre – programados
en el lenguaje. Por ultimo decimos que realizan tareas típicas, previsibles y comunes para todas las
aplicaciones. Cada objeto o control lleva sus propios métodos.
Ejemplo:
Range("A5"). Select Aquí se ejecuta el método Select, que permite activar la celda
A5 y ponerla en disponible para cualquier otra operación.
Range ("B2:G4"). Formato En este caso, se ejecuta el método Formato sobre el
rango B2:G4. Se supone que el método Formato ya está definido previamente.
EVENTOS: Se dice que un evento es el resultado de una acción, es decir es la forma como queda
el objeto después de alguna acción sobre él. Por lo general estas acciones son producidas por los
métodos que actúan sobre el objeto.
COLECCIONES: Son objetos que agrupan otros objetos con características similares y que son
especialmente útiles cuando se buscan cambiar atributos a todo un conjunto de objetos es decir son
clases a las que pertenece los objetos.

** CLASE: Modelo donde se redactan las características comunes de un grupo objetos


Auto: Chasis y las ruedas del auto.
VBA LENGUAJE DE PROGRAMACION BASADO EN OBJETOS
Los objetos de Excel pueden contener otros objetos, y, a su vez, estos pueden contener otros
objetos. Esto significa que tenemos un cierto orden o jerarquía.
Ejemplo de Jerarquía

Dónde: El objeto de mayor jerarquía es la misma aplicación del Excel, luego sigue el objeto libro
(Workbook), luego sigue la pestaña (Worksheet) finalmente acaba en Range y Cells. También
podemos tomar en cuenta los gráficos (Charts). Algunas propiedades también realizan la función de
objetos. Por ejemplo, el objeto Application tiene una propiedad ActiveWindow (nombre de la
ventana activa) que a su vez en sí misma es un objeto. Esto puede dar lugar a confunsiones en la
sintaxis. Por ejemplo:
Application. ActiveWindow. ActiveCell. Font. Italic
Aplicando un ejemplo de la jerarquía
Application. Workbooks (1). Worksheets (1). Range("A1"). Value = "Hola"
Insistiendo con la nomenclatura, Application casi nunca es necesario especificarlo, piense que
todos los objetos dependen de este, WorkBooks será necesario implementarlo si en las macros se
trabaja con diferentes libros de trabajo (diferentes archivos), a partir de WorkSheets, es aconsejable
incluirlo en el código, sobre todo si se quiere trabajar con diferentes hojas, verá, sin embargo, que
en muchas ocasiones no se aplica.
VARIABLE
Ahora tocaremos un tema importante VARIABLES, primero partimos del concepto ¿Qué es una
Variable?

 Es una palabra que guarda un valor y dicho valor puede ser cambiado en el tiempo.
 Cuando utilizo una variable en realidad lo que hago es separar un espacio de memoria, es
decir imagínate que declaras 5 variables estarías separado 5 espacio de memoria.
 Cuando usamos variable hay 3 pasos a seguir:
o El primer paso es definir una variable y, para definir una variable nosotros tenemos
que saber el Tipo de Dato: [Integer, String, Long].
o El segundo paso es asignarle un valor y este valor es el signo ¨=¨
o El tercer paso es utilizar la variable, suena lógico ya que nosotros creamos una
variable para crearla.
 La forma general de declarar una variable es: DIM variable AS Tipo
 Antes de declarar una variable debemos de saber el tipo de dato que vamos aplicar
TIPO ENTERO: Usamos para una variable numérica de valores de – 32768 a 32768, para ello
usamos la sintaxis: “Dim NombreVaraible As Integer”
TIPO LONG: Se usa cuando tenemos números enteros muy grandes en concreto entre -
2.147.483.648 y 2.147.483.648. La sintaxis de este tipo de variables es:
“Dim NombreVaraible As Long”
TIPO SINGLE: Para almacenar valores numéricos decimales, aunque si requerimos una mayor
precisión, usaremos variables tipo Double. El código para declarar variables tipo Single es:

“Dim NombreVaraible As Single”


TIPO STRING: Para almacenar valores de cadenas de texto, es decir, uniones de cualquier tipo
de carácter ya sea numérico o no numérico.

“Dim NombreVaraible As String”

TIPO VERDADERO O FALSO: Nos permite almacenar valores de variables del tipo verdadero o
falso. Su sintaxis es:

“Dim NombreVaraible As Boolean”

TIPO VARIANT: Este tipo nos permite almacenar cualquier tipo de información ya sea
numérica, de texto o del tipo verdadero o falso o cualquier otro que se nos ocurra. En definitiva,
cuando no sabemos qué tipo de variable va a tener usaremos el tipo Variante, donde entran todos
los tipos posibles. El inconveniente es que ocupa una gran cantidad de memoria.

“Dim NombreVaraible As Variant”

Ejemplo en VBA:
En el ejemplo estamos viendo la ejecución de los 3 pasos que debemos hacer.

 Ahora crearemos un procedimiento en VBA


Ahora en la hoja de Excel queremos que nos aparezca mi nombre y mi nota para ello aplicamos ya lo
mencionado anteriormente

Este código nos permite registrar mi nombre y nota ahora procederemos a poner en un botón.
Nos vamos en desarrollador, insertar y control de botón, escogemos el procedimiento8
Ahora haremos un ejercicio usando lo condición si en VBA es IF CONDICION. THEE

VARIABLES LOCAL Y PUBLICA


Las variables locales también llamadas variables de procedimiento se declaran mediante las
instrucciones Dim, Static o Private … se dice que son variables de procedimiento las variables de
nivel procedimiento solo estarán disponibles en el procedimiento donde se declara o utilizan por
primera vez, fuera de este procedimiento las variables no existirán (literalmente). En resumen, la
variable así definida se reconoce únicamente dentro del procedimiento en el que declaramos.

DIM starName As String

Si la instrucción aparece en la sección de declaraciones del módulo, la variable strName está


disponible para todos los procedimientos dentro del módulo, pero no para los procedimientos de
otros módulos del proyecto. Para permitir que esta variable esté disponible para todos los
procedimientos del proyecto, debe ir precedida de la instrucción Public, como en el ejemplo
siguiente:

PUBLIC starName As String

Las variables Publicas también conocidas las variables de nivel proyecto se crean con una
declaración Public en la parte superior de cualquier módulo, fuera de cualquier procedimiento.
Estas variables estarán disponibles en todos los procedimientos del proyecto, se encuentren en el
mismo módulo donde se ha declarado o en cualquier otro. La variable contendrá los valores hasta
que se cierre el proyecto
BUCLES
En la programación y en el VBA los bucles o también conocidos como ciclos son importantes ya
que es una instrucción que permite repetir la ejecución de líneas de código hasta que se cumpla la
condición que hayamos especificado, estos métodos son muy utilizados para la estructura del
control de flujo.

 For … Next : Desde … Siguiente


Con su clausula
 Step : Paso
FOR (Desde)
Un bucle FOR es una estructura de control de repetición que permite escribir de manera eficiente un
bucle que es necesario ejecutar un número determinado de veces. Por ello decimos que el bucle For
es útil cuando se sabe cuántas veces una tarea se va repetir. Su sintaxis es lo siguiente:

La imagen lo que quiere decir es For se va inicializar en 1 y va recorrer hasta el n°12 y se va


incrementar en 1 en 1 por cada ciclo.
FOR – NEXT (Desde – Siguiente) con su cláusula Step
Es una de las instrucciones más utilizadas en el VBA, su función es realizar la repetición de un
conjunto de instrucciones un determinado número de veces. En resumen, nos permite repetir una
acción un número de veces dado. El for- Next va acompañado con su cláusula Step (paso)

Al poner este código en la macro


Para x =2 a 10
MSGBOX x
Next

El codigo establece que la variable x tenga los valores 1,2, 3 … 10, y cada uno de estos valores se
ejecuta a través del codigo VBA dentro del ciclo
BUCLES DETERMINADOS
Los Bucles determinados será aquel que repite una serie de líneas de códigos un número
determinado de veces, esto quiere decir que sin necesidad de ejecutar el programa solo leyendo el
código sabemos a priori cuantas veces se va ejecutar el código del bucle, sabemos sin ejecutar el
programa si repetirá las líneas 7 veces, 17, 90 o 107 lo sabemos exactamente el número que va
repetir. En resumen, se sabe a priori cuantas veces se repetirá el código de su interior

 For
 For – each
FOR – EACH (Para cada Bucle)
Este bucle es parecido al bucle for – Next en lugar de recorrer un conjunto de valores para una
variable, el ciclo for each se ejecuta a través de todos los objetos dentro de un conjunto de objetos,
es decir se dice que este bucle se puede realizar bucles en colección de objetos (como las hojas, los
libros, etc.). En resumen, puede usarse para iterar una colección de objetos.
La sintaxis es:

Sub xxx ()
For each (objetos dentro del conjunto)
Se escribe el objetivo que quiere que se realice en ese conjunto
Next Se finaliza la función For Each
End sub ()
BUCLES INDETERMINADOS
Los Bucles indeterminados son aquellos sin ejecutar el programa solo leyendo el código de
programación no sabemos cuántas veces repetirá el código de su interior, solamente podemos saber
cuántas veces va repetir el código cuando el programa este en ejecución y comience a funcionar, si
nosotros vemos el programa en ejecución y estamos viendo que falla una vez y otra y otra sabemos
cuántas veces lo va repetir, es decir cada vez que falle lo va repetir … por ello decimos que este tipo
de bucles repetirá el código dependiendo de las circunstancias durante la ejecución del programa

 Do … Loop While : Hacer … Repetir Mientras


 Do – Loop – Until : Hacer hasta que se cumpla la condición
 While – wend :
BUCLES DO … LOOP
DO WHILE (Hacer mientras se cumpla la condición)
Este bucle repite un conjunto de instrucciones cuando se cumple una condición, es decir es un
bloque de instrucciones que se escribe en el editor de visual basic para que se repita si una
condición o comparación que arroja un valor booleano se ejecuta como verdadero. En resumen, el
funcionamiento del ciclo es muy sencillo ya que repetiremos una acción tantas veces que sea
necesario siempre y cuando se evalué una condición verdadera.
La sintaxis es la siguiente:
Do { While Condición}
[Instrucciones a repetir]
[Exit Do ]
[Instrucciones a repetir]
Loop (regresar al inicio de la instrucción Do While)
Donde:
Condición: Es la condición que se evaluara, ponemos caracteres de comparación como =, <, >, <>
Instrucción: Son las instrucciones que se repetirá mientras o hasta que la condición devuelva True o
Verdadero
Exit Do: Aquí le podemos indicar que, si se cumple alguna condición especial, podemos salir del
bucle
DO WHILE UNTIL (Hacer hasta que se cumpla la condición)
El bucle Do – Until es muy similar al bucle Do – While, la única diferencia entre ellos es que

 Un ciclo Do – While se repite siempre que una determinada condición sea verdadera
 Por otro lado, un ciclo Do – Until itera hasta que una condición no es verdadera
Por ello decimos que nos permite realizar un bucle mientras la condición sea falsa, tiene dos formas
de uso, se puede verificar la condición al principio del ciclo o al final del ciclo. En resumen, se usa
cuando queremos repetir un conjunto de declaraciones siempre que la condición sea falsa.
DIAGRAMA DE FLUJO DE UN BUCLE DE EJECUCION HASTA EN VBA

Sintaxis 1:

 En esta sintaxis Do-Until, la condición del bucle se verifica junto con la instrucción Do.
 Si la condición es falsa, entonces se ejecuta el 'bloque de código' dentro del bucle hasta que
se ejecute, y comienza la siguiente iteración. Cada iteración antes de comenzar verifica la
condición del bucle, y el 'bloque de código' dentro del bucle de hacer hasta que solo se
ejecuta cuando la condición se evalúa como falsa.
 Cuando la condición de bucle se vuelve verdadera, no se producen más iteraciones de bucle
y el flujo de control salta a la siguiente declaración fuera del bucle Do Until.
Sintaxis 2:

 En esta sintaxis Do-Until, la condición de bucle no se comprueba junto con la instrucción


Do.
 Dado que, para la primera iteración, no se comprueba ninguna condición. Por lo tanto, se
ejecuta el bloque de código dentro del cuerpo Do-Until.
 Después de la primera iteración, cada iteración subsiguiente, antes de comenzar, verifica la
condición del bucle, y el 'bloque de código' dentro del bucle hasta que se ejecute solo se
ejecuta cuando la condición se evalúa como falsa.
 Cuando la condición de bucle se vuelve verdadera, no se producen más iteraciones de bucle
y el flujo de control salta a la siguiente declaración fuera del bucle Do Until.
NOTA: La sintaxis 2 Do Until Loop siempre itera al menos una vez, ya que la condición que se va a
verificar se coloca al final del bucle
WHILE – WEND (Ejecuta instrucción mientras se cumpla condición)
La instrucción While wend sirve para realizar bucles o dicho de otra manera repiter un
procedimiento mientras una condición sea verdadera o true, es decir ejecuta una serie de
declaraciones siempre que una condición sea verdadera y se va ejecutar la instrucción varias veces
hasta que la condición deje de cumplirse.

NOTA: Si la condición es Verdadera, todas las declaraciones se ejecutan hasta que se encuentra la declaración Wend. A continuación,
el control vuelve a la instrucción While y se vuelve a comprobar la condición. Si la condición sigue siendo Verdadera, el proceso se
repite. Si no es Verdadero, la ejecución se reanuda con la declaración que sigue a la declaración de Wend.

Mientras ... Los bucles Wend se pueden anidar en cualquier nivel. Cada Wend coincide con el más reciente bien

Un ejemplo utilizando los Bucles mencionados anteriormente


OPERADORES
Los operadores son elementos más importantes de los lenguajes de programación que
permiten la ejecución de operaciones sobre el contenido de ciertos elementos, tales como
calcular, comparar, validar y unir, las variables y las constantes declaradas en VBA. La
combinación de uno o varios operadores y elementos en los cuales los operadores van a apoyarse se
llama una expresión. Estas expresiones se valoran en el momento de su ejecución, en función de los
operadores y valores que tienen asociados. En resumen, relaciona uno valores con otros.
Estos operadores pueden ser de varios tipos:

 Operadores aritméticos: son operadores utilizados para ejecutar cálculos matemáticos


 Operadores de comparación: son operadores utilizados para ejecutar comparaciones
 Operadores de concatenación: son operadores utilizados para combinar cadenas de
caracteres
 Operadores lógicos: Son operadores usados para realizar operaciones lógicas

OPERADOR DEFINICION
Operador (+) Se utiliza para añadir un valor a otro y también para concatenar cadenas
Operador ( - ) Se usa para hallar la diferencia entre 2 o + números y también para mostrar número como
negativo
Operador ( * ) Se utiliza para multiplicar un valor por otro
Operador (^) Se utiliza para elevar un número a la potencia de otro número
Operador Se utiliza para hallar el resto de la división
MOD
Operador And Combina 2 condiciones simples y devuelve un valor que es verdadero si estas 2 condiciones
son V
Operador Or Devuelve el valor verdadero cuando una de las 2 expresiones es verdadera
Operador Not Se utiliza sobre una sola condición para negar su valor
FORMULARIOS Y CONTROLES
FORMULARIOS
Los formularios o UserForm es una ventana que tiene un conjunto de controles insertados
por el usuario y hacen uso de controles Activex disponibles que nos permite solicitar
información al usuario. Para crear un formulario nuevo hay que utilizar el comando
UserForm desde el menú insertar

Los formularios sirven a tres propósitos principales:

 Como panel para introducir datos y el resultado de un cálculo realizado con dichos
datos.
 Para introducir datos en una hoja de cálculo.
 Para recuperar datos almacenados en una hoja de cálculo.

Podemos decir que los diferentes tipos de formularios en Excel nos evitaran inconvenientes
y problema alguno ya que podremos tener cierto grado de control sobre el ingreso de datos
que otras personas realizan sobre nuestras hojas de Excel.
CONTROL DE FORMULARIOS
Los controles de formulario en Excel son objetos que podemos colocar dentro de una hoja
y que nos darán funcionalidad adicional para interactuar mejor con los usuarios y tener un
mejor control sobre la información.

DIFERENTES CONTROLES DE FORMULARIOS


Existen diferentes tipos de controles de formulario en Excel que ofrecen diversos tipos de
funcionalidad e interacción con el usuario. Desde una simple etiqueta hasta controles que
permiten una selección múltiple de sus opciones. A continuación, una breve descripción de
cada uno de ellos.

Los controles tienen propiedades específicas, pero también hay propiedades comunes a
todos ellos, que son las siguientes:
TABLAS DINAMICAS CON VBA
OBJETO PIVOTTABLE
Presenta un informe de tabla dinámica de una hoja de cálculo. Podemos decir que el objeto
PivotTable contiene todos los objetos PivotTable de una hoja de cálculo puesto que la
programación de informes de tabla dinámica puede ser complicada, normalmente es más
fácil grabar las acciones de informes de tabla dinámica y después revisar el código grabado.
Ejemplo:

Use PivotTables (índex), donde índex es el nombre o número de índice de la tabla


dinámica, para devolver un solo objeto PivotTable .El ejemplo siguiente convierte el campo
denominado Year en un campo de fila del primer informe de tabla dinámica de Sheet3

METODOS

DESCRIPCION
Agrega un campo de datos a un informe de tabla, devuelve un objeto PivotTable que
representa el nuevo campo de datos. Sintaxis:

AddDataField
AddDataField (Field, Caption, function)

 Field: Necesario, objeto y campo único en el servidor


 Caption: rotulo utilizado en el informe de tabla dinámica para especificar este
campo de datos.
 Function: función que se ejecuta en el campo de datos agregados

Agrega campos de filas, columnas y paginas a un informe de tabla dinámica o de gráfico


dinámico. Su sintaxis es:

AddFields (RowFields, ColumnFields, PageFields, AddToTable)

 RowFields: Especifica un nombre de campo (o una matriz de nombres de campos)


que se agregará como filas o se agregará al eje de categorías.
AddFields  ColumnFields: Especifica un nombre de campo (o una matriz de nombres de
campos) que se agregará como columnas o se agregará al eje de series.
 PageFields: Especifica un nombre de campo (o una matriz de nombres de campos)
que se agregará como páginas o se agregará al área de página.
 AddToTable: Sólo se aplica a los informes de tabla dinámica. True para agregar al
informe los campos especificados (no se reemplazan los campos
existentes). False para reemplazar los campos existentes con los nuevos campos. El
valor predeterminado es False.
El tipo de datos es Variant
Realiza una operación de reescritura para todas las celdas editadas de un informe de tabla
dinámica basado en un origen de datos OLAP. Su sintaxis es:

AllocateChanges
 Expresión. AllocateChanges … expresión variable que representa un objeto
PivotTable
 Este método genera un error en tiempo de ejecución si se ejecuta en un informe de
tabla dinámica basado en un origen de datos que no es de OLAP.

Devuelve una colección CalculatedFields que representa todos los campos calculados del
informe de tabla dinámica especificado. Solo lectura. Su sintaxis:

CalculatedFields
expresión. CalculatedFields … donde la expresión Variable que representa un
objeto PivotTable .
Cambia la conexión del objeto PivotTable especificado, solo se puede usar con una tabla
dinámica que esté conectada a un origen de datos externo. Su sintaxis es:

expresión. ChangeConnection (Conn) … expresión Variable que representa un


objeto PivotTable.
ChangeConnectio
n  Conn: Es obligatorio, tipo de dato WorkbookConnection y esto representa la nueva
conexión para la tabla dinámica

Cambia el objeto PivotCache de la tabla dinámica especificada, solo se puede usar con una
tabla dinámica que use datos almacenados en una hoja de cálculo como origen de datos. Su
sintaxis es:

expresión. ChangePivotCache (BSRT) … expresión Variable que representa un


objeto PivotTable.

ChangePivotCach  BSRT: Es obligatorio, tipo de dato String, el objeto PivotTable o PivotCache que
e representa la nueva PivotCache de la tabla dinámica especificada.

Elimina todos los filtros aplicados actualmente a la tabla dinámica. Esto incluye eliminar
todos los filtros de la colección PivotFilters , quitar los filtros manuales aplicados y establecer
todos los campos dinámicos en el área de filtro de informe en el elemento predeterminado. Su
ClearAllFilters sintaxis es:

expresión. ClearAllFilters … expresión Variable que representa un objeto PivotTable. Al


llamar al método ClearAllFilters se vacía la colección PivotFilters.
Sirve para borrar una tabla dinámica. Cuando se borra una tabla dinámica, se quitan todos los
campos y se eliminan todos los filtros y criterios de ordenación aplicados. Este método
restablece la tabla dinámica al estado que tenía cuando se creó, antes de que se agregaran
ClearTable campos. Su sintaxis es:

expresión. ClearTable … expresión Variable que representa un objeto PivotTable. La función


no toma ningún argumento y se puede realizar en tablas dinámicas relacionales y OLAP.
CommitChanges Realiza una operación de confirmación en el origen de datos de un informe de tabla dinámica
basado en un origen de datos OLAP. Este método envía una instrucción COMMIT
TRANSACTION al servidor OLAP y borra todas las celdas editadas mediante la
especificación de un valor, pero no borra la fórmula de las celdas de valor. Este método
genera un error en tiempo de ejecución si se ejecuta en un informe de tabla dinámica basado
en un origen de datos que no es de OLAP. Su sintaxis es: expresión. CommitChanges … …
expresión Variable que representa un objeto PivotTable … valor devuelto Nothing
ConvertToFormul El método se usa para convertir una tabla dinámica en fórmulas de cubo. Boolean de lectura
as y escritura. Su sintaxis es:

expresión. ConvertToFormulas (ConvertFilters)

 ConvertFilters: Obligatorio, tipo de dato Boolean y contiene True o False para


indicar el estado de área ReportFilter.
 Podemos comentar que El argumento controla si se debe convertir o no el
área ReportFilter de la tabla dinámica.

CreateCubeFile Crea un archivo de cubo a partir de un informe de tabla dinámica conectado a un origen de
datos OLAP (Online Analytical Processing). Su sintaxis es:

expresión. CreateCubeFile (Archivos, medidas, niveles, miembros, propiedades)

 Archivos: Es necesario, tipo de dato String, nombre del archivo de cubo que
se va a crear. Si el archivo existe, se sobrescribirá.
 Medidas: Opcional, tipo de dato Variant, Matriz de nombres únicos de medidas
que formarán parte del sector.
 Miembros: Opcional, tipo de dato Variant, Matriz de cadenas de caracteres. Cada
elemento de la matriz es un nombre de nivel único. Representa el nivel inferior de
una jerarquía que está en el sector.
 Propiedades: Opcional, tipo de dato Variant, Matriz de matrices de cadenas. Los
elementos se corresponden, por orden, con las jerarquías representadas en la
matriz Levels. Cada elemento es una matriz de matrices de cadenas que se compone
de los nombres exclusivos de los miembros del nivel superior de la dimensión que
se van a incluir en el sector.

DiscardChanges Descarta todos los cambios realizados en las celdas editadas de un informe de tabla dinámica
basado en un origen de datos OLAP. Para un informe de tabla dinámica basado en un origen
de datos OLAP, el método quita todos los valores y las fórmulas especificados en las celdas
de valor y, a continuación, ejecuta una operación de actualización de tabla dinámica para
recuperar los valores más recientes del origen de datos. Su sintaxis:
expresión. DiscardChanges.
DrillDown Permite profundizar en los datos dentro de una jerarquía de cubos basada en OLAP o en
PowerPivot. Su sintaxis es: expresión. Obtención de detalles (Pivotltem, PivotLine)

 Pivotltem: Es necesario, tipo de dato dinámico, el miembro desde el que se realiza


la obtención de detalles.
 Coincidente: Opcional, tipo de dato Variant, especifica la línea de la tabla dinámica
en la que reside el miembro inicial de la operación. En los casos en los que no se
especifica PivotLine, se toma como valor predeterminado la línea dinámica
superior donde aparece el miembro.

DrillTo Permite profundizar en una ubicación dentro de una jerarquía de cubos basada en OLAP o en
PowerPivot. Su sintaxis es: expresión. Drillto (Pivotltem, CubeField, PivotLine

 Pivotltem: Necesario, tipo de dato dinámico, miembro desde el que se realiza la


operación de obtención de detalles.
 CubeField: Necesario, tipo de dato CubeField, Jerarquía de destino a la que se va a
taladrar.
 PivotLine: Opcional, tipo de dato Variant, Especifica la línea de la tabla dinámica
en la que reside el miembro inicial de la operación. En los casos en los que no se
especifica PivotLine, se toma como valor predeterminado la línea dinámica
superior donde aparece el miembro.
 Valor devuelto … efecto

DrillUp Permite profundizar en los datos dentro de una jerarquía de cubos basada en OLAP
o en PowerPivot. Su sintaxis es: expresión. DrillUp (Pivotltem, PivotLine,
LevelUniqueName)

 Pivotltem: Necesario, tipo de dato dinámico, miembro desde el que se realiza la


operación de obtención de detalles.
 LevelUniqueName, opcional, tipo de dato Variant, el destino de un desglose de
varios niveles. La acción pre determinada, si no se especifica, es un nivel de detalle
de un nivel.

GetData Devuelve el valor para el archivado de datos en una tabla dinámica. Su sintaxis es:
expresión. GetData (Nombre)

 Name: obligatorio, tipo de dato String, describe una celda única en el


informe de tabla dinámica, utilizando una sintaxis similar a la del metodo
PivotSelect o por referencias al informe de tabla dinámica en las fórmulas
de elementos calculados.

GetPivotData Devuelve un objeto Range con información sobre un elemento de datos en un


informe de tabla dinámica. Su sintaxis es:
expresión.IMPORTARDATOSDINAMICOS (DataFields, Campo1, Item1, Campo
2, Item2, Field3, Item3, Field4, Item4, Field5, Item5, Field6, Item6, _
Field7_, Item7, Field8, Item8, Field9, Item9, Field10, Item10, Field11, Item11, Fiel
d12, Item12, _Field13 _, Item13, Field14, Item14
ListFormulas Crea una lista con los elementos calculados y los campos de una tabla dinámica en
una hoja de cálculo distinta. Este método no está disponible para orígenes de datos
OLAP.

Su sintaxis es: expresión. ListFormulas


PivotCache Devuelve un objeto PivotCache que representa la caché del informe de tabla
dinámica especificado. Solo lectura. Su sintaxis es: expresión. PivotCache …
expresión variable que representa un objeto PivotTable
PivotFields Devuelve un objeto que representa un solo campo de tabla dinámica (un
objeto PivotField ) o una colección de los campos visibles y ocultos (un
objeto PivotFields ) en el informe de tabla dinámica. Solo lectura. Su sintaxis es:
expresión. Campos Dinámicos (índice)

 Index: opcional, tipo de datos Variant, Nombre o número del campo que se
devolverá

PivotSelect Selecciona parte de un informe de tabla dinámica. Su sintaxis es: expresión.


PivotSelect (Name, mode, UseStandardName)

 Name, obligatorio, tipo de dato String, parte del informe de tabla dinámica
que seleccionar.
 Mode, opcional, tipo de dato XIPTSelectionMode, especifica el modo de
selección estructurado
 UseStandardName, opcional, tipo de dato Variant, True para macros
grabadas que se reproducirán en otras configuraciones regionales.

PivotTableWizard Crea y devuelve un objeto PivotTable. Este método no muestra el Asistente para
tablas dinámicas. Este método no está disponible para orígenes de datos OLE
DB. Utilice el método Add para agregar una memoria caché de tabla dinámica y, a
continuación, crear un informe de tabla dinámica basado en la memoria caché. Su
sintaxis es:
expresión.PivotTableWizard (SourceType, sourceData, TableDestination, TableN
ame, RowGrand, ColumnGrand, savedata, HasAutoFormat, AutoPage, reservado, _
BackgroundQuery_, OptimizeCache, PageFieldOrder, PageFieldWrapCount, Read
Data, Connection)
PivotValueCell Recuperar el objeto PivotValueCell de una tabla dinámica dada, siempre que haya
determinados índices de fila y de columna. Su sintaxis es: expresión.
PivotValueCell (RowLine, ColumnLine)

 RowLine, opcional, tipo de dato Variant, Si de tipo PivotLine,


especifica la línea dinámica en el área de fila con la que se alinea
la PivotValueCell. Si es de tipo int, especifica la posición de la
línea dinámica en el área de fila con la que se alinea la PivotValueCell. Si
falta, vacío, nulo o 0 especifica la fila total general.
 ColumnLine, opcional, tipo de dato Variant, Es similar que
RowLine la diferencia es que especifica la línea dinámica en el área de
columna con la que se alinea la PivotValueCell

RefreshDataSourc Recupera los valores actuales del origen de datos para todas las celdas editadas en
eValues un informe de tabla dinámica que está en modo de escritura diferida. Su sintaxis es:
expresión. RefreshDataSourceValues
RefreshTable Actualiza el informe de tabla dinámica a partir de los datos de origen. Devuelve
True si se realiza correctamente. Su sintaxis es: expresión. RefreshTable
RepeatAllLabels Especifica si se van a repetir etiquetas de elementos para todos los campos
dinámicos de la tabla dinámica especificada. Su sintaxis: expresión.
RepeatAllLabels (Repetir)

 Repetir: Necesario, tipo de dato XIPivotFieldRepeatLabels,


especifica si se repiten todas las etiquetas de elementos de campo en un
informe de tabla dinámica.

RowAxisLayout Este método se utiliza para definir simultáneamente opciones de diseño para todos
los campos dinámicos existentes. Su sintaxis es: expresión. RowAxisLayout

 RowLayout: Necesario, tipo de dato XILayoutRowType, Especifica el tipo


de la fila de diseño. Puede ser xlCompactRow, xlTabularRow

ShowPages Crea un informe de tabla dinámica nuevo por cada elemento del campo de
páginas. Cada informe de tabla dinámica se creará en una nueva hoja de cálculo. Su
sintaxis es: expresión. ShowPages (PageField)

 PageField: opcional, Variant, Cadena que asigna un nombre a un solo


campo de páginas del informe de tabla dinámica.

SubtotalLocation Este método cambia la ubicación del subtotal para todos los campos dinámicos
existentes. Cambiar la ubicación del subtotal tiene un efecto visual inmediato sólo
para los campos en formato de diseño, pero se establecerá también para los campos
que están en formato tabular.
Update Actualiza el informe de tabla dinámica.
https://docs.microsoft.com/es-es/office/vba/api/excel.pivottable
OBJETO SHAPE
http://codevba.com/es/Excel/Shape.htm#.YEF6iVVKiM8
OBJETO CHART
DEFINICION
 MsgBoxt: Es una función que sirve para mostrar los resultados de un cálculo o para
lanzar los mensajes. Se le conoce también como caja de salida o mensaje. En
resumen, es una función que sirve para mostrar un mensaje dentro de un cuadro de
dialogo.
Su argumento es:
MsgBox (Mensaje, Tipo de mensaje, Titulo)
Donde:
Msgbox = mensaje, tipo critico (obligatorio)
Buttons = tipo de Mensaje (opcional)
Title = Titulo de mensaje (opcional)
Ejemplo n°1
Como el 1mer argumento de la función es obligatoria podemos crear un mensaje
informativo con la siguiente línea de código.
Private Sub CommandButton1_Click ()
MsgBox "Hola Mundo"
End Sub
El botón comando, nos permite encapsular procedimientos para que utilice el usuario dándole el clic
sobre el

Ejemplo n°2
Hablaremos sobre el título de mensaje, para poner un título personalizado será suficiente
indicarlo de la siguiente manera:
Private Sub CommandButton2_Click()
MsgBox "Hola Mundo", , “Mensaje especial”
End Sub
Ejemplo n°3
Hasta ahora solo has visto el botón Aceptar en el cuadro de diálogo, pero el segundo
argumento de la función MsgBox nos permitirá indicar los botones que deseamos mostrar y
también podremos elegir el icono desplegado y el comportamiento del cuadro de diálogo.
La siguiente tabla indica los valores que podemos utilizar para este argumento:

El grafico todos estos valores los podemos dividir en cinco grupos.

1) Primer grupo: Del número (o al 5) nos permite indicar los botones que se mostrarán en
el cuadro de diálogo
2) Segundo grupo: Del número (16, 32, 48,64) determinará el tipo de ícono mostrado,
3) El tercer grupo (0, 256, 512, 768) es útil para indicar el botón predeterminado
4) El cuarto grupo (0, 4096) es la modalidad del cuadro de diálogo
5) El último grupo que son los valores restantes, nos permiten indicar la alineación del
texto y si deseamos mostrar un botón de Ayuda.

Ya que los valores de cada grupo son excluyentes, solo hace sentido elegir un valor de cada uno de
ellos. De esta manera, si deseo mostrar los botones Si y No, y además mostrar un icono de mensaje
de advertencia, entonces debo utilizar la siguiente instrucción:
Private Sub CommandButton3_Click ()
MsgBox "Hola Mundo", “vbYesNo + vbExclamation, “Mensaje especial”
End Sub
 InputBox: Es un cuadro de dialogo que solicita al usuario un valor, es decir es un
cuadro de mensaje nos permite escribir cualquier cosa sobre él.
Su argumento es:
InputBox (Mensaje, Titulo, Predeterminado)
Donde:
Promt = especifica la leyenda que mostrará la caja de mensajes
Title = especifica el título que llevará el cuadro de diálogo
Default = “predeterminado”, es el texto que mostrará la caja de texto.
CONDICIONES
 If: Es una condición que verifica la condición ingresada es verdadera o no. En
resumen, es una condición a evaluar.
 Else: Es una condición que acompaña al if, lo cual indica la acción a llevar a cabo
en caso la condición if no se cumpla.

 If – Then: Son condiciones que nos permite validar para tomar una buena decisión,
en base a una condición, esta condición podemos traducirla como un Si – Entonces.
 Es decir “SI cumple la condición ENTONCES hazlo”
 Select Case: Debemos recordar que en VBA equivale a la instrucción SWITCH de otros
lenguajes. Esta función nos permite tener el control de las instrucciones agrupándolas. De
manera que trata de asignar y clasificar en función de una única variable con varios posibles
resultados. Esta expresión puede ser evaluada en un valor numérico o cadena de texto. En
resumen, es una función de una única variable con varios posibles resultados
Su argumento es:
Select [Case] expresión a evaluar

[Case lista de expresiones [Instrucciones a


ejecutar]]
[Case Else]
[Instrucciones a ejecutar en el caso del else]]
End Select

Sólo se puede evaluar una expresión y no múltiples expresiones.


a) De coincidencia: por ejemplo, Case 12 indicaría que si la expresión evaluada vale 12 se
ejecutarán las instrucciones anexas.

b) De intervalo: usando la palabra clave To. Por ejemplo, Case 12 To 14 indicaría que si la
expresión evaluada tiene un valor comprendido entre 12 y 14 (incluidos los extremos de los
intervalos), se ejecutarán las instrucciones anexas.

c) De comparación: usando la palabra clave Is. Por ejemplo, Case Is <= 14 indicaría que
si la expresión evaluada tiene un valor menor o igual a 14 se ejecutarán las instrucciones
anexas.

 Case Else: Es el valor opcional, lo utilizaremos cuando no hayamos conseguido ninguna


equivalencia con mi expresión y queramos ejecutar algún código.
 Function: Es una función que devuelve o dan como resultado un valor, donde estas
funciones se introducen como argumentos. En resumen, si deseas que el Excel VBA
realice una tarea que devuelva un resultado, puede usar una función.

 Sub: Es una función que No devuelve un valor, de manera que esta función puede
ser llamada por un procedimiento u otra función y las funciones tienen tipo
(“Integer, String, Doublé, Long, etc.”) ya que devuelve un valor. Por lo tanto,
cuando queremos que el Excel VBA realice algunas acciones, puede usar un sub.

 SET: Se utiliza para asignar valores a una variable tipo objeto, su sintaxis es:
Set NombreVaraible = NombreObjeto
Set Celda = Worksheets("Hoja1").Range("A1")

 While
 For each
 Vlookup
CÓDIGOS MÁS COMUNES

 Trasladarse a una Celda


Range("A1").Select
 Escribir en una Celda
Activecell.FormulaR1C1="Paty Acosta"
 Letra Negrita
Selection.Font.Bold = True
 Letra Cursiva
Selection.Font.Italic = True
 Letra Subrayada
Selection.Font.Underline = xlUnderlineStyleSingle
 Centrar Texto
With Selection.HorizontalAlignment = xlCenter
End With
 Alinear a la izquierda
With Selection.HorizontalAlignment = xlLeft
End With
 Alinear a la Derecha
With Selection.HorizontalAlignment = xlRight
End With
 Tipo de Letra (Fuente)
With Selection. Font. Name = "AGaramond"
End With
 Tamaño de Letra(Tamaño de Fuente)
With Selection. Font. Size = 15
End With
 Copiar
Selection.Copy
 Pegar
ActiveSheet.Paste
 Cortar
Selection.Cut

 Ordenar Ascendente
Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
 Orden Descendent
Selection.Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlGuess, _
OrderCustom: =1, MatchCase: =False, Orientation: =xlTopToBottom
 Buscar
Cells. Find(What: ="CRISTIAN CASTRO", After:=ActiveCell, LookIn:=xlFormulas,
LookAt _:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=
_False).Activate
 Insertar Fila
Selection.EntireRow. Insert
 Eliminar Fila
Selection.EntireRow. Delete
 Insertar Columna
Selection.EntireColumn. Insert
 Eliminar Columna
Selection.EntireColumn. Delete
 Abrir un Libro
Workbooks.Open Filename: ="C:\Mis documentos\miarchivo.xls"
 Grabar un Libro
ActiveWorkbook.SaveAs Filename:="C:\Mis documentos\tauro.xls", FileFormat
_:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:= _False,
CreateBackup:=False

Datos importantes
 Se utiliza un TextBox (caja de texto) para el uso de ingreso y validación de datos.
 El CommandButton (Botón de comando), este botón me permite encapsular
procedimientos para que sean utilizados por el usuario con solo hacer clic sobre él
REPASO
CONTROLES DE FORMULARIOS
 Barra de desplazamiento. Al hacer clic en las flechas se va desplazando la barra dentro de un
intervalo predefinido.
 Botón. El botón nos permite ejecutar una macro al momento de hacer clic sobre él.
 Botón de opción. Nos permite una única selección dentro de un conjunto de opciones.
 Casilla de verificación. Permite la selección o no selección de una opción.
 Control de número. Nos ayuda a aumentar o disminuir un valor numérico.
 Cuadro combinado. Es una combinación de un cuadro de texto con un cuadro de lista.
 Cuadro de grupo. Agrupa varios controles dentro de un rectángulo.
 Cuadro de lista. Muestra una lista de valores de los cuales podemos elegir una sola opción o
múltiples opciones de acuerdo a la configuración del control.
 Etiqueta. Permite especificar un texto o breves instrucciones en el formulario.

También podría gustarte