0% encontró este documento útil (0 votos)
77 vistas5 páginas

Sesiones

El documento proporciona información sobre macros en VBA, incluyendo cómo ejecutar macros, operadores matemáticos y lógicos, estructuras de control, partes del editor de VBA, y cómo interactuar con objetos de formulario como TextBox y ComboBox.
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)
77 vistas5 páginas

Sesiones

El documento proporciona información sobre macros en VBA, incluyendo cómo ejecutar macros, operadores matemáticos y lógicos, estructuras de control, partes del editor de VBA, y cómo interactuar con objetos de formulario como TextBox y ComboBox.
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

Macros

Principal beneficio: Automatizar las tareas que realizamos día a día, por ende, se es más eficiente

¿Cómo ejecutar una macro?


1 Botón Macros Seleccionamos la macro y ejecutar
2 Combinación de teclas Ctrl + " " Con la que fue creada la macro
3 F5/botón Ejecutar desde VBA Colocar el cursor en la macro
4 F8 (Paso a paso) Colocar el cursor en la macro

Operadores matemáticos
Entero división \ Devuelve la parte entera de la división de dos números 8\3 = 2
Módulo Mod Devuelve el resto de la división de dos número 7 mod 2 = 1

*OJO: el valor Empty, VBA lo trata como valor 0 y se maneja de esa forma en cualquier operación aritmética

Operadores lógicos
Conjunción and OperadorAnd = arg1 and arg2
Disyunción or OperadorOr = arg1 or arg2
Disyución exclusiva xor OperadorXor = arg1 xor arg2 Es verdadero si una de las expresiones es verdadera
Negación not OperadorNot = not arg1 Invierte la expresión

Call Permite ejecutar una macro desde otra macro. En caso se requieran argumentos, estarán encerrados en paréntesis
*OJO: Se puede llamar una macro (que no tenga o tenga 1 parámetro) desde otra solo colocando el nombre de dicha macro
Call Proc1 Proc1
Call Proc2("Hola mundo") Proc2 "Hola mundo"

Funciones De Cadena, Matemáticas, Fecha y Hora, Información, Conversión, Archivo


Para usar funciones de Excel en VBA se puede emplear el objeto WorksheetFunction
[Link]

Partes del editor de VB


1 Menú del editor Archivo, Edición, Ayuda, Depuración, etc
2 Barra de herramientas Íconos: Insertar, Ejecutar, Interrumpir, Modo diseño, etc
3 Ventana de proyecto Tiene 3 botones: Ver código, Ver objeto, Alternar carpetas. CTRL + R
4 Ventana de propiedades Características del objeto. F4
5 Área de trabajo Aquí se escriben los comandos

Libro de macros personal Es una opción de guardado de macros que se emplea para que las macros guardadas estén
Formulario en Excel "Userforms". Sirve para operaciones como el registro, actualización, eliminación o procesamiento de datos
Pueden ser usados desde cualquier hoja por medio de algún botón o macro

Estructuras de Control VBA Estructuras de programación


[Link]

With Ejecuta un conjunto de instrucciones sin tener que volver a hacer referencia al mismo objeto
With cells(1,1)
.value = "Hola mundo"
.[Link] = true
End with

Select case Permite tener un control de las instrucciones agrupándolas


numero = 8
Select Case numero
Case 1 to 5
MsgBox "El número está entre 1 y 5"
Case 6, 7, 8
MsgBox "El número está entre 6, 7 y 8"
Case Else
MsgBox "El número no está entre 1 y 8"
End Select

If Then Else Para tomar decisiones


a = 12
If a = 8 Then
MsgBox "1"
Elseif a =12 Then
MsgBox"2"
Else
MsgBox "3"
End If

For Next Realizar una repetición de un conjunto de instrucciones un número determinado de veces
For x = 2 to 10 step 2
Msgbox x
Next

Do While También conocida como Do Loop, sirve para repetir un conjunto de instrucciones
numero = 9
Do Until numero = 10 Do While sum < 1000
If numero <= 0 Then Exit Do sum = sum + 50
numero = numero - 1 Loop
contador = contador + 1
Loop

*OJO: La diferencia entre For y Do While es que For conoce de forma precisa el número de veces que se ejecutará un conjunto de instru
Do While no se conoce el número de veces que se ejecutará la instrucción a repetir, sino que será hasta que se cumpla alguna condición
# Código Interpretación
1 Sheets("Hoja2").Select Selección de Hoja2
2 Rows("2:2").Select Selección de fila 2
3 Columns("B:B").Select Selección de columna B
4 [Link] Selección de todas las celdas
5 Range("B10").Select Selección de celda B10
6 [Link] Elimina el contenido seleccionado
7 Msgbox Range("B3") Muestra el contenido de la celda B3
8 Msgbox Cells(3,4) Muestra el contenido de la fila 3 y columna D (4)
9 Function misuma(arg1,arg2)
Creación de la función misuma con dos argumentos
End Function
10 edad=Worksheets("Hoja2").Range("A1").Va
La variable edad toma el valor de la celda A1 de la Hoja2
lue
11 Range("A1").Select Programación de la grabadora de macro
ActiveCell.FormulaR1C1="Local" La celda A1 tiene el valor "Local"
12 [Link](xlToRight).Select Simula Ctrl + -> (Programación de la grabadora macro)
13 Worksheets("Mercaderia").Range("A1:C3"). Elimina todo (contenido y formato) del rango A1:C3 de la hoja
Clear Mercaderia
14 [Link]
Añade una hoja y le coloca el nombre "NuevaHoja"
[Link]="NuevaHoja"
15 Range("A1:A10").Value="Hola" Le da el valor "Hola" al rango A1:A10
Workbooks(1).Worksheets("Ventas").Visibl
16 En el libro activo, la hoja "Ventas" se ocultará
e=False
17 [Link]
Ambas opciones cierran el libro activo
Workbooks(1).Close
18 TypeName(midato) Devuelve el tipo de dato de la variable "midato"
Muestra la cadena "Respuesta: " seguida del valor de la variable
19 Msgbox "Respuesta: " & midato
"midato"
20 Dim variable1 as Integer Declara la "variable1" como entero
Declara la "variable2" como texto y puede ser usada en cualquier
21 Public variable2 As string
módulo
Una ventana emergente solicita la edad, la cual se guarda en la
22 edad=Inputbox("¿Cuál es tu edad?","edad")
variable "edad"
23 [Link] = "Arial" La selección tiene fuente "Arial"
24 [Link] = 12 La selección tiene tamaño 12
25 [Link] = xlSingle La selección tiene subrayado
With [Link]
.Name = "Arial"
26 .Size = 12 Le da formato a la selección
.ColorIndex = 5
End With
27 Rnd() Genera un número aleatorio entre 0 y 1
28 [Link](0,110) Genera un número aleatorio entre los valores de 0 y 110
El mensaje de la ventana emergente es "Mensaje Principal", el
Msgbox "Mensaje Principal", vbYesNo, nombre de esta es "Título" y vbYesNo dará las opciones "Sí" y "No".
29
"Título" Es última expresión puede ser cambiada por vbOKOnly,
vbYesNoCancel, vbAbortRetryIgnore, vbOKCancel.
30 [Link] Muestra el formulario UserForm1
31 [Link] Esconde el formulario UserForm1
32 Unload UserForm1 Reinicia el formulario UserForm1
Private Sub Workbook_Open()
33 Dentro de esta macro se colocan las condiciones al abrir el libro
End Sub
Private Sub UserForm_Activate() Dentro de esta macro se colocan las condiciones iniciales del
34
End Sub formulario
35 [Link] ("Documental") Se agrega el item "Documental" en el combobox1
36 [Link](Cells(2,3)) Se agrega el contenido de la celda C2 en el combobox1
37 Cells([Link],2).End(xlUp).Row Ubica el número de la última fila llena de la columna 2
38 [Link] = [Link] Textbox1 se llena con el valor de ComboBox1
39 [Link] = [Link] Textbox2 se llena con la selección de OptionButton1
40 [Link] = [Link] Textbox3 se llena con el valor de ListBox1
41 [Link] = [Link] Textbox4 se llena con la selección de CheckBox1
42 Len(DNI) = 8 La longitud de la variable DNI es 8
43 IsNumeric(DNI) Valida que la variable DNI sea un número
44 TRIM(DNI) Elimina los espacios en blanco de un texto

También podría gustarte