You are on page 1of 8

INCAP INSTITUTO COLOMBIANO DE APRENDIZAJE

TALLER LOGRO 3
TEMA: Macros Visual Basic Application
OBJETIVOS: Aprender y disear macros VBA para automatizar procesos

TALLER MACROS VBA EXCEL 2010


El formador dice y hace
VBA significa Visual Basic for Application. Es un lenguaje de programacin
que surge de Visual Basic (VB). VBA de Excel est adaptado a Excel, para
trabajar con celdas, hojas, autofiltro etc. (es decir, los objetos de la aplicacin
Excel).

El Editor de Visual Basic (VBE)


El lenguaje de programacin que utiliza Excel para trabajar con macros es el
VBA (Visual Basic Application) que como podemos deducir est basado en
Visual Basic

El formador dice y el estudiante hace


PRACTICA 1
Ahora vamos a abrir un archivo de Excel nuevo y crearemos una macro VBA aplicada
a una hoja de clculo donde insertaremos varios registros de empleados DANE con
sus datos bsicos y aplicando un formulario de VBA, siga los pasos indicados a
continuacin:
1. Trascribe la tabla (ver imagen) coloca los campos en el mismo sitio donde
aparecen.

2. Ve al men programador y da clic en


Editor de Visual Basic

donde luego le aparecer la ventana del

INCAP INSTITUTO COLOMBIANO DE APRENDIZAJE


TALLER LOGRO 3
TEMA: Macros Visual Basic Application
OBJETIVOS: Aprender y disear macros VBA para automatizar procesos
3. Ahora graba la macro grabada dando clic en el Botn de Office, colcale el nombre
de MACROS2_FORMULARIOS VBA , luego en tipo de archivo, escoge la opcin LIBRO
DE EXCEL HABILITADO PARA MACROS , fjate que te colocar el nombre del archivo
asignado con la extensin . XLSM
4. Luego da clic en el men Insertar - Userform y luego trascribe la siguiente macro:
5. En la ventana de Cuadro de Herramientas, inserta los siguientes controles :
5 = Etiquetas (Label)
3 = Cuadros de Textos (Textbox)
3 = Marco de Controles (Frame)
1= Cuadro combinado (Combobox)
1= Barra de desplazamiento(ScrollBar)
1=Control de Nmero(SpinButton)
5=Botn de opcin (Option button)
2=Casilla de verificacin (CheckBox)
3 = Botn de Comando (Command Button)

6. El aspecto del formulario debe ser el siguiente:

INCAP INSTITUTO COLOMBIANO DE APRENDIZAJE


TALLER LOGRO 3
TEMA: Macros Visual Basic Application
OBJETIVOS: Aprender y disear macros VBA para automatizar procesos
En las propiedades del Formulario (UserForm1) en el parmetro Caption: coloca
CAPTURA DE EMPLEADOS DANE

COLOCACION DE TITULOS EN LOS CONTROLES INSERTADOS EN


FORMULARIO
Para nombrar los controles procederemos as:
Dar clic sencillo en cada control y colocar el nombre correspondiente
O En las propiedades de cada control en el parmetro Caption : coloca los
nombres correspondientes (NOMBRES
Y APELLIDOS,CIUDAD DE
NACIMIENTO,ETC)
En la propiedades de los Marcos de controles (Frame) en el parmetro Caption:
coloca los nombres correspondientes (SEXO, ESTADO CIVIL
Y TIPO DE
CONTRATO)
En la propiedades del Botn de comando (CommandButton) en el parmetro
Caption: coloca los nombres correspondientes (ACEPTAR, CANCELAR Y
CERRAR)

CODIGO VISUAL BASIC PARA LOS CONTROLES DE FORMULARIO


Escriba en el entorno VBA los siguientes cdigos de programacin de acuerdo a
indicaciones del formador
CODIGO PARA EL BOTN ACEPTAR
Private Sub CommandButton1_Click()
NOM = TextBox1.Text
CIU = ComboBox1.Value
EDA = SpinButton1.Value
SUE = Val(ScrollBar1.Value)
If OptionButton1 = True Then SEX = " HOMBRE"
If OptionButton2 = True Then SEX = " MUJER"
If OptionButton3 = True Then EC = " SOLTERO(A)"
If OptionButton4 = True Then EC = " CASADO(A)"

INCAP INSTITUTO COLOMBIANO DE APRENDIZAJE


TALLER LOGRO 3
TEMA: Macros Visual Basic Application
OBJETIVOS: Aprender y disear macros VBA para automatizar procesos
If OptionButton5 = True Then EC = " VIUDO(A)"
If CheckBox1 = True Then
EST = " SI"
Else
EST = "NO"
End If
If CheckBox2 = True Then
TIPO = " SI "
Else
TIPO = " NO"
End If
Sheets("HOJA1").Select
Range("A3").Select
While ActiveCell.Value <> ""
ActiveCell.Offset(1, 0).Select
Wend
ActiveCell.Offset(0, 0).Range("A1").Select
ActiveCell.Value = NOM
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Value = CIU
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Value = EDA
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Value = SUE

INCAP INSTITUTO COLOMBIANO DE APRENDIZAJE


TALLER LOGRO 3
TEMA: Macros Visual Basic Application
OBJETIVOS: Aprender y disear macros VBA para automatizar procesos
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Value = SEX
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Value = EC
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Value = EST
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Value = TIPO
TextBox1 = Empty
TextBox2 = Empty
TextBox3 = Empty
ComboBox1 = Empty
OptionButton1 = Empty
OptionButton2 = Empty
OptionButton3 = Empty
OptionButton4 = Empty
OptionButton5 = Empty
CheckBox1 = Empty
CheckBox2 = Empty
End Sub
CODIGO PARA EL BOTN CANCELAR
Private Sub CommandButton2_Click()
End
Sheets("HOJA1").Select

INCAP INSTITUTO COLOMBIANO DE APRENDIZAJE


TALLER LOGRO 3
TEMA: Macros Visual Basic Application
OBJETIVOS: Aprender y disear macros VBA para automatizar procesos
End Sub
CODIGO PARA EL BOTN CERRAR
Private Sub CommandButton3_Click()
End
End Sub
CODIGO PARA EL CONTROL DESPLAZAMIENTO - SCROLL BAR1 (SUELDO)
Private Sub ScrollBar1_Change()
TextBox3.Text = ScrollBar1.Value
End Sub
Ahora da clic sobre el control de desplazamiento y en la ventana propiedades coloca
los siguientes parmetros en: LargeChange, Max, Min, SmallChange

CODIGO PARA EL CONTROL DE NUMERO SPINBUTTON1 (EDAD)


Private Sub SpinButton1_Change()

INCAP INSTITUTO COLOMBIANO DE APRENDIZAJE


TALLER LOGRO 3
TEMA: Macros Visual Basic Application
OBJETIVOS: Aprender y disear macros VBA para automatizar procesos
TextBox2.Text = SpinButton1.Value
End Sub
CODIGO PARA EL CONTROL CUADRO COMBINADO (CIUDAD) COMBOBOX1 AL
MOMENTO DE CARGAR EL FORMULARIO
Private Sub UserForm_Initialize()
Sheets("HOJA1").Select
Range("A3:H3").Interior.ColorIndex = 4
For I = 3 To 9
Cells(I, 11).Select
ComboBox1.AddItem ActiveCell.Value
Next I
End Sub
7. Luego vamos a insertar un control de Botn de comando en la hoja de clculo de
Excel, para ello da clic en el men Programador de Excel y luego selecciona Insertar y
da clic en la seccin de Controles Active X y escoge Botn de comando (Command
Button)

8. A continuacin dele clic derecho seleccione Objeto de Comando y seleccione


Modifica y escriba EJECUTAR FORMULARIO
9. Ahora dele doble clic para abrir el Editor de Visual Basic (VBE), y aparecer el ttulo:
Private Sub CommandButton1_Click(), ahora escriba el siguiente cdigo:
Private Sub CommandButton1_Click()
UserForm1.Show
End Sub

INCAP INSTITUTO COLOMBIANO DE APRENDIZAJE


TALLER LOGRO 3
TEMA: Macros Visual Basic Application
OBJETIVOS: Aprender y disear macros VBA para automatizar procesos
10. Para ejecutar la macro finalmente vaya al men Programador y dele clic en el
icono Modo de diseo
macro sin ningn problema

para salir de ese modo y ahora si podr aplicar la

You might also like