vip genial fantastico-macros para excel-explicado y totalmente practico

Upload: xavazque2

Post on 09-Oct-2015

257 views

Category:

Documents


1 download

TRANSCRIPT

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    1/236

    VBA Excel 2007

    Programar en Excel: Macros y Lenguaje VBAMichel AMELOT

    Ediciones ENI

    Diciembre 2007

    http://www.ediciones-eni.com

    CONTENIDO

    1. INTRODUCCION A LAS MACROS .......................................................... 61.1 El Lenguaje VBA ........................................................................................................................... 6

    1.1.1 Objetivos del lenguaje VBA ............................................................................................ 6

    1.1.2 Algunas definiciones ....................................................................................................... 7

    1.1.3 Escritura de cdigo VBA ................................................................................................. 7

    1.2 Las macros de Excel ..................................................................................................................... 7

    1.2.1 Mostrar la ficha Programador en la cinta de opciones .................................................. 7

    1.2.2 Descripcin de la ficha Programador ............................................................................. 8

    1.2.3 Grabacin de macros ...................................................................................................... 9

    1.2.4 Las macros y la seguridad ............................................................................................ 13

    1.2.5 Modificar el cdigo de una macro ................................................................................ 15

    1.3 Asignacin de macros ................................................................................................................ 17

    1.3.1 Asociar una macro a un botn de comando ................................................................ 17

    1.3.2 Asignar una macro a una imagen ................................................................................. 17

    1.3.3 Asociar una macro a una zona de un objeto grfico .................................................... 17

    1.3.4 Asociar una macro a una imagen Control ActiveX ....................................................... 18

    1.3.5 Asociar una macro a un icono de la barra de herramienta de acceso rpido ............ 191.4 El entorno de desarrollo VBE ..................................................................................................... 21

    1.4.1 Acceso al entorno VBE .................................................................................................. 21

    1.4.2 Cerrar el entorno VBE ................................................................................................... 21

    1.4.3 Volver a Excel ............................................................................................................... 21

    1.4.4 Descripcin del entorno VBE ........................................................................................ 22

    1.5 Configuracin del Editor VBA .................................................................................................... 24

    1.2.6 Configuracin de la tipografa ...................................................................................... 24

    1.2.7 Configuracin de la introduccin de cdigo ................................................................. 25

    1.2.8 Gestin de errores ........................................................................................................ 26

    1.2.9 Acople de una ventana ................................................................................................. 27

    1.2.10 Elegir las ventanas que hay que mostrar ..................................................................... 281.6 Novedades de la versin 2007 ................................................................................................... 28

    1.6.1 Novedades de Excel 2007 ............................................................................................. 28

    1.6.2 Las novedades de VBA Excel 2007 ................................................................................ 28

    2. EL LENGUAJE VBA ................................................................................302.1 Mdulos ..................................................................................................................................... 30

    2.1.1 El Explorador de Proyectos ........................................................................................... 30

    2.1.2 Acceso a los mdulos ................................................................................................... 31

    http://www.ediciones-eni.com/http://www.ediciones-eni.com/
  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    2/236

    2.1.3 Importar y exportar cdigo VBA ................................................................................... 32

    2.2 Procedimientos .......................................................................................................................... 32

    2.2.1 Definiciones .................................................................................................................. 32

    2.2.2 Acceso a los procedimientos ........................................................................................ 33

    2.2.3 Procedimientos Sub ...................................................................................................... 33

    2.2.4 Procedimientos Function .............................................................................................. 34

    2.2.5 Declaracin de procedimientos .................................................................................... 35

    2.2.6 Alcance de los procedimientos .................................................................................... 36

    2.2.7 Argumentos de los procedimientos ............................................................................ 36

    2.2.8 Argumentos con nombre .............................................................................................. 37

    2.2.9 Llamar a un procedimiento .......................................................................................... 38

    2.2.10 Llamar a una funcin VBA en una frmula Excel .......................................................... 39

    2.2.11 Ejemplos de procedimientos y funciones ..................................................................... 41

    2.3 Variables .................................................................................................................................... 42

    2.3.1 Tipos de variables ......................................................................................................... 42

    2.3.2 Declaracin de variables ............................................................................................... 47

    2.3.3 Declaracin de los tipos de variables ........................................................................... 49

    2.3.4 Arreglos (Arrays) ........................................................................................................... 512.3.5 Constantes ................................................................................................................... 54

    2.4 Operadores ................................................................................................................................ 57

    2.4.1 Operadores aritmticos ................................................................................................ 57

    2.4.2 Operadores de comparacin ........................................................................................ 57

    2.4.3 Operadores lgicos ....................................................................................................... 58

    2.4.4 Operador de concatenacin ......................................................................................... 59

    2.4.5 Prioridad de los operadores ......................................................................................... 59

    2.5 Estructuras de decisin .............................................................................................................. 60

    2.5.1 Instruccin IF ................................................................................................................ 60

    2.5.2 Instruccin Select Case ................................................................................................. 63

    2.6 Estructuras en ciclo .................................................................................................................... 642.6.1 Instruccin Do...Loop .................................................................................................... 64

    2.6.2 Instruccin While...Wend ............................................................................................ 66

    2.6.3 Instruccin For...Next .................................................................................................. 66

    2.6.4 Instruccin For Each...N ext .......................................................................................... 68

    2.6.5 Salir de las estructuras de control ................................................................................ 68

    2.7 Sentencia With... End With ........................................................................................................ 69

    2.8 Reglas de escritura del cdigo ................................................................................................... 70

    2.8.1 Comentarios ................................................................................................................. 70

    2.8.2 Carcter de continuacin de lnea ................................................................................ 70

    2.8.3 Sangras......................................................................................................................... 70

    2.8.4 Nombres de procedimientos, variables y constantes ................................................. 71

    3. LA PROGRAMACIN DE OBJETOS EN EXCEL .........................................723.1 Presentacin .............................................................................................................................. 72

    3.2 El modelo de objetos de Excel ................................................................................................... 72

    3.2.1 Objetos y colecciones ................................................................................................... 74

    3.3 Principios de uso de los objetos y las colecciones ...................................................................... 75

    3.3.1 Propiedades .................................................................................................................. 75

    3.3.2 Propiedades que representan objetos ......................................................................... 76

    3.3.3 Mtodos ....................................................................................................................... 77

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    3/236

    3.3.4 Eventos ......................................................................................................................... 78

    3.3.5 Colecciones .................................................................................................................. 79

    3.3.6 Redaccin automtica de instrucciones ....................................................................... 80

    3.4 Instrucciones usadas con los objetos ......................................................................................... 82

    3.4.1 La instruccin With ....................................................................................................... 82

    3.4.2 La instruccin For Each...Next ...................................................................................... 83

    3.4.3 La instruccin If TypeOf ................................................................................................ 84

    3.4.4 La instruccin Set .......................................................................................................... 84

    3.5 El Examinador de objetos .......................................................................................................... 85

    3.5.1 Presentacin ................................................................................................................. 85

    3.5.2 Bsqueda en el Examinador de objetos ...................................................................... 87

    4. OBJETOS DE EXCEL ...............................................................................884.1 El objeto Application .................................................................................................................. 88

    4.1.1 Propiedades que representan las opciones de Excel .................................................. 88

    4.1.2 Propiedades relativas a la presentacin de la aplicacin ............................................. 99

    4.1.3 Propiedades diversas .................................................................................................. 100

    4.1.4 Mtodos del objeto Application ................................................................................. 102

    4.1.5 Ejemplos de cdigos que usan el objeto Application ................................................. 104

    4.2 Objeto Workbook .................................................................................................................... 106

    4.2.1 Objetos y colecciones ................................................................................................. 107

    4.2.2 Propiedades ................................................................................................................ 108

    4.2.3 Lista de mtodos ........................................................................................................ 111

    4.2.4 Ejemplos de cdigos que usan el objeto Workbook .................................................. 113

    4.3 El objeto Worksheet ................................................................................................................ 116

    4.3.1 Objetos y colecciones ................................................................................................. 117

    4.3.2 Propiedades ................................................................................................................ 118

    4.3.3 Mtodos ..................................................................................................................... 119

    4.3.4 Ejemplos de cdigos que usan el objeto Worksheet ................................................. 120

    4.4 El objeto Range ........................................................................................................................ 1224.4.1 Propiedades y mtodos que devuelven un objeto Range .......................................... 122

    4.4.2 Sintaxis de las propiedades que devuelven un objeto Range .................................... 123

    4.4.3 Lista de objetos y colecciones .................................................................................... 126

    4.4.4 Propiedades ................................................................................................................ 127

    4.4.5 Mtodos ..................................................................................................................... 129

    4.5 Ejemplos de uso de los objetos ................................................................................................ 132

    4.5.1 Clculo del importe de un premio .............................................................................. 132

    4.5.2 Asignacin de comentarios a las celdas ..................................................................... 134

    5. CUADROS DE DILOGO ...................................................................... 1365.1 Presentacin ............................................................................................................................ 136

    5.2 Cuadros de dilogo integrados ................................................................................................ 1365.2.1 El objeto Dialog ........................................................................................................... 136

    5.2.2 Los mtodos GetOpenFileName y GetSaveAsFileName ............................................ 142

    5.3 Cuadros de dilogo predefinidos ............................................................................................ 144

    5.3.1 La funcin InputBox .................................................................................................... 144

    5.3.2 El mtodo InputBox .................................................................................................... 144

    5.3.3 La funcin MsgBox ...................................................................................................... 145

    5.3.4 Constantes usadas en los cuadros de dilogo ............................................................ 148

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    4/236

    6. FORMULARIOS .................................................................................. 1506.1 Presentacin ............................................................................................................................ 150

    6.2 Crear un formulario ................................................................................................................. 150

    6.3 Lista de controles ..................................................................................................................... 151

    6.3.1 Crear un control .......................................................................................................... 152

    6.3.2 Propiedades de los controles ..................................................................................... 1526.4 Personalizar un formulario ...................................................................................................... 156

    6.4.1 Escribir procedimientos .............................................................................................. 156

    6.4.2 Lista de eventos .......................................................................................................... 157

    6.4.3 Resumen de eventos por objeto ................................................................................ 158

    6.4.4 Cancelar un evento ..................................................................................................... 159

    6.4.5 Ejecucin y cierre de un formulario ........................................................................... 160

    6.4.6 Eventos invocados ...................................................................................................... 161

    6.5 Ejemplo de formulario personalizado ...................................................................................... 161

    6.5.1 Presentacin ............................................................................................................... 161

    6.5.2 Cdigo asociado al botn macro de la ficha Empleados ............................................ 163

    6.5.3 Cdigo VBA asociado al formulario ............................................................................ 164

    7. BARRAS DE COMANDOS Y MENS ..................................................... 1687.1 Presentacin ............................................................................................................................ 168

    7.2 Ejemplos de barras de comandos ............................................................................................ 169

    7.2.1 Barras de herramientas personalizadas ..................................................................... 169

    7.2.2 Grupo "Comandos de mens" en formato Office 2007 ............................................. 169

    7.2.3 Agregar un comando a la barra de herramientas de acceso rpido .......................... 169

    7.3 Barras de comandos ................................................................................................................ 170

    7.3.1 Terminologa ............................................................................................................... 170

    7.3.2 Crear una barra de comandos .................................................................................... 170

    7.3.3 Eliminar una barra de comandos ................................................................................ 171

    7.3.4 Mostrar una barra de comandos ................................................................................ 172

    7.4 Controles de las barras de comandos ...................................................................................... 173

    7.4.1 Agregar un control ...................................................................................................... 173

    7.4.2 Especificar el ttulo de un control ............................................................................... 173

    7.4.3 Eliminar un control ..................................................................................................... 174

    7.4.4 Asociar un procedimiento a un control ...................................................................... 174

    7.4.5 Otras propiedades ...................................................................................................... 174

    7.4.6 Lista de imgenes asociadas a los botones de comando ........................................... 175

    7.5 Ejemplos de mens personalizados ......................................................................................... 177

    7.5.1 Presentacin ............................................................................................................... 177

    7.5.2 Cdigo de los ejemplos ............................................................................................... 179

    7.5.3 Cdigo del mdulo de clase ThisWorkbook ............................................................... 179

    7.5.4 Cdigo de la hoja "Nota de Gastos" .......................................................................... 1807.5.5 Cdigo del mdulo ProcMenus .................................................................................. 180

    7.5.6 Cdigo del mdulo ProcAction ................................................................................... 184

    8. ADMINISTRACIN DE EVENTOS ......................................................... 1878.1 Presentacin ............................................................................................................................ 187

    8.2 Escritura de eventos ................................................................................................................ 187

    8.2.1 Eventos de libro, de hoja o de formulario ................................................................. 187

    8.2.2 Eventos del objeto Application................................................................................... 189

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    5/236

    8.2.3 Evento asociado a un grfico incrustado .................................................................... 191

    8.3 Eventos del objeto Application ................................................................................................ 194

    8.4 Eventos del objeto Workbook .................................................................................................. 195

    8.5 Eventos del objeto Worksheet ................................................................................................. 196

    8.6 Eventos del objeto Chart ......................................................................................................... 197

    9. DEPURACIN Y ADMINISTRACIN DE ERRORES ................................. 1989.1 Diferentes tipos de error .......................................................................................................... 198

    9.1.1 Errores de sintaxis ...................................................................................................... 198

    9.1.2 Errores de compilacin ............................................................................................... 199

    9.1.3 Errores de ejecucin ................................................................................................... 200

    9.1.4 Errores de lgica ......................................................................................................... 201

    9.2 Depuracin .............................................................................................................................. 201

    9.2.1 Presentacin ............................................................................................................... 201

    9.2.2 La barra de herramientas Depuracin ........................................................................ 201

    9.2.3 El objeto Debug .......................................................................................................... 202

    9.3 Administracin de errores en VBA ........................................................................................... 203

    9.3.1 On Error (Instruccin) ................................................................................................. 203

    9.3.2 Error (Funcin) ............................................................................................................ 205

    9.3.3 Error (Instruccin)....................................................................................................... 205

    9.3.4 Err (Objeto) ................................................................................................................. 205

    10. CODIGO DE UNA MINIAPLICACIN .................................................... 20810.1 Presentacin general ............................................................................................................... 208

    10.2 Descripcin de la aplicacin GestPresupuesto ........................................................................ 209

    10.3 Mdulo ThisWorbook .............................................................................................................. 210

    10.3.1 Presentacin ............................................................................................................... 210

    10.3.2 Cdigo VBA ................................................................................................................. 211

    10.4 Formulario NuevoPresupuesto ................................................................................................ 213

    10.4.1 Presentacin ............................................................................................................... 213

    10.4.2 Lista de controles ........................................................................................................ 213

    10.4.3 Lista de celdas con nombre del modelo Presupuesto.xltx ......................................... 213

    10.4.4 Cdigo VBA ................................................................................................................. 214

    10.5 Formulario BuscarPresupues to ............................................................................................... 216

    10.5.1 Presentacin ............................................................................................................... 216

    10.5.2 Lista de controles ........................................................................................................ 217

    10.5.3 Cdigo VBA ................................................................................................................. 217

    10.6 Mdulos Pro cA ctions y ProcGene .......................................................................................... 220

    10.6.1 Cdigo VBA del mdulo Pro cAct ions ........................................................................ 220

    10.6.2 Cdigo VBA del mdulo ProcG ene ............................................................................ 222

    11. ANEXOS ............................................................................................. 225

    11.1 Lista de instrucciones............................................................................................................... 225

    11.2 Lista de funciones .................................................................................................................... 227

    11.3 Constantes VBA ....................................................................................................................... 234

    11.3.1 Constantes de color .................................................................................................... 234

    11.3.2 Constantes de fecha ................................................................................................... 234

    11.3.3 Constantes de teclas correspondientes a letras y nmeros ....................................... 235

    11.3.4 Constantes de teclas de funcin ................................................................................. 235

    11.3.5 Constantes de teclas diversas..................................................................................... 235

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    6/236

    10 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    111... IIINNNTTTRRROOODDDUUUCCCCCCIIIOOONNNAAALLLAAASSSMMMAAACCCRRROOOSSS

    1.1

    E L VBA

    Vial Baic aa Alicacione (VBA B A) e el lengaje deogamacin comn a oda la alicacione del aee Micoof Office 2007 (Wod, Acce,Ecel, Olook PoePoin).

    1.1.1 O VBA

    Tabajando en Ecel, el o del lengaje VBA le emie:

    A : VBA emie efeca en na nica oeacin nacanidad imoane de comando de Ecel.

    I E: el conenido la eenacin de odo loelemeno conenido en n libo (hoja, celda, gfico, ec.) eden modificae aa de cdigo VBA.

    C : lo fomlaio on lo cado de dilogo

    comeo o conole AcieX (cado de eo, lia delegable, ec.) a lo ee le ede aocia cdigo VBA. Lo fomlaio emien cea ineface amigableaa la enada o la alida de infomacin.

    P E: ed ede agega a la inefa de Ecel neo

    men comando. El cdigo VBA ede aociae a modo abeiado de eclado,icono, ec.

    M E: a cada ocin de Ecel le coeonde na oiedad

    de n objeo VBA. Po ejemlo, ede modifica el io de fene o defeco a ai dela oiedade StandardFont(fene) StandardFontsize(amao de fene)del objeo Application.

    E:

    Application.StandardFont = "Arial"

    Application.StandardFontSize = "10"

    C E M O: VBA emie inecambia

    infomacin ene la alicacione Office ando objeo eecfico oio de cadano. Po ejemlo, ede inea na abla o n gfico Ecel en n achio de Wod,cea menaje Olook con n achio Ecel adjno, ec.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    7/236

    11 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    1.1.2 A

    P: Cada libo abieo en Ecel iene aociado n oeco e coniene odo lomdlo de cdigo VBA agado en caegoa.

    M: Lo mdlo conienen la maco gabada oio ocedimieno fncione

    ecio en VBA. Lo mdlo eden eoae como achio indeendiene aa lego eimoado en oo libo.

    P: Lo ocedimieno on bogama ecio en VBA. Cada maco gabadagenea n ocedimieno con el mimo nombe de la maco. De la mima manea, ed edecea ocedimieno ando la inccinSub.

    F: La fncione on ocedimieno e deelen n alo. Paa cea na fncin edebe ilia la inccinFunction.

    1.1.3

    E VBAHa do manea de cea n ocedimieno VBA:

    Genea aomicamene el cdigo a ai de la gabacin de maco,

    Ecibi diecamene el cdigo del ocedimieno en el Edio de Vial Baic (o enonoVBE).

    La imea olcin e m encilla eo mcho m limiada e la egnda. Loocedimieno geneado aomicamene lo emien aomaia accione eeiiaealiada con Ecel (fomao de celda, odena dao, ec.).

    Si deea efeca oeacione eecfica: algoimo de clclo, inecambio de menaje deinfomacin con el aio, conola la coheencia de dao en n libo o calie oaoeacin e haga o de eca eeiia o condicionale, ed debe cea oioocedimieno en el edio de VBA.

    1.2

    L E

    1.2.1

    M P

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    8/236

    12 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    Paa ecibi maco, ejeca maco gabada o cea alicacione Ecel, debe moa la fichaPde la igiene manea:

    a. Haga clic en el bon , lego en el bon(bicado bajo el cado de dilogo).

    b.

    Seleccione la caegoa en el men de la iieda.c. Acie la ocin bicada en

    .d. Haga clic en el bon: la ficha e aadi a la cina de ocione de

    Ecel, a la deecha de la ficha .

    1.2.2 D P

    1.2.2.1 G CN D

    Vial Baic Abe el enono de deaollo. El modo abeiado de eclado e [Al] [F11].

    Maco Mea la lia de maco. El modo abeiado de eclado e [Al] [F8].

    Gaba maco Comiena la gabacin de na maco.

    Ua efeencia elaia Pemie a efeencia elaia a la imea celda eleccionada.

    Segidad de maco Peonalia la configacin de egidad de la maco.

    1.2.2.2 G CN D

    Inea Pemie inea conole (fomlaio o AcieX) en Ecel.

    Modo DieoAcia o deacia el modo Dieo. En el modo Dieo lo conole AcieXeden eleccionae modificae eo no eden ejecae.

    Poiedade Mea la oiedade del objeo Ecel eleccionado (hoja o conol).

    Ve cdigo Pemie accede diecamene al cdigo aociado al conol eleccionado.

    Ejeca cado dedilogo

    Ejeca n cado de dilogo eonaliado.

    El go XML emie adminia aignacione XML.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    9/236

    13 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    1.2.3 G

    1.2.3.1 G

    Paa cea na maco con el gabado:

    a. Haga clic en el bon de la ficha o en el bon de la baa deeado.

    b. En el cado de dilogo e aaece, eciba el nombe de la maco, decicin , ilo deea, el modo abeiado de ecla aociado.

    c.

    Haga clic en el bonaa inicia la gabacin.d. Realice en Ecel la oeacione e deee gaba. Po ejemlo, eleccione el ango de

    celda A1:B8", alie n elleno n bode a ea celda.

    e. Haga clic en el bon de la ficha o en el bon dela baa de eado aa deene la gabacin de la maco.

    1.2.3.2 E

    Paa ejeca na maco dede Ecel:

    a. Haga clic en el bon de la ficha o le el modo abeiado deecla [Al] [F8].

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    10/236

    14 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    b. Haga doble clic en el nombe de la maco o imeo eleccinela lego haga clic en elbon .

    Paa ialia la infomacin elaia a na maco (modo abeiado de eclado

    decicin), eleccione la maco en la lia haga clic en el bon .

    Paa deene la ejeccin de na maco, le [Ecae] o [Cl][Paa].

    1.2.3.3 G

    Si gaba na maco en el modo (modo o defeco), lo ango de celdaefeenciado en la oeacione de eleccin, delaamieno en fijo. Po ejemlo:Range("A2")deigna la celda A2.

    Si gaba na maco en el modo , lo ango de celda en eeado enelacin a la oicin de la imea celda acia. Po ejemlo: ActiveCell.Range("A2")deigna la celda bicada bajo la celda acia, ActiveCell.Range("B1")deigna la celdabicada a la deecha de la celda acia.

    ActiveCell.Range("A1") ieme hace efeencia a la imea celda acia. A1

    ede conideae la efeencia elaia a la imea celda acia.

    Paa gaba na maco con efeencia elaia:

    a.

    Haga clic en el bon de la ficha : el bon eda acio (e e decolo naanja).

    b. Si ele a hace clic en el bon , e eda deaciado la maco e gabancon efeencia abola.

    E:

    La mima ecencia de oeacione e ha egiado en do maco: la imea(RefRelativa) e gab con la ocin efeencia elaia, la egnda (RefAbsoluta), conla ocin efeencia abola.

    La ecencia de oeacione e la igiene:

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    11/236

    15 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    eleccin de n ango de celda,

    delaa el ango do fila hacia abajo na colmna a la deecha.

    SubRefAbsoluta()

    'Referencias absolutas

    Range("B2:C8").Select

    Selection.Cut Destination:=Range("C4:D10")

    Range("C4:D10").SelectEnd Sub

    SubRefRelativa()

    'Referencias relativas

    ActiveCell.Range("A1:B7").Select

    Selection.Cut Destination:=ActiveCell.Offset(2, 1).Range("A1:B7")

    ActiveCell.Offset(2, 1).Range("A1:B7").Select

    End Sub

    1.2.3.4 D

    Paa defini el lga de almacenamieno de na nea maco:

    a. Haga clic en el bon de la ficha o le el modo abeiado[Al] [F8].

    b. Aba la lia eleccione el libo en el e deee cea la maco.

    Si elige , la maco e gaba en el libo eonal.lb; la maco

    e acceible dede odo lo libo Ecel.

    1.2.3.5 E

    Paa elimina na maco:

    a. Haga clic en el bon de la ficha o le el modo abeiado[Al] [F8].

    b. Seleccione la maco e deea elimina haga clic en el bon . Haga clic en elbon aa confima la eliminacin.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    12/236

    16 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    1.2.3.6 G

    Paa gaba n libo con maco:

    a.

    Haga clic en el bon de la ficha o le el modo abeiado[Al] [F8].

    b. Haga doble clic en el nombe de la maco o le la combinacin de ecla aociada a lamaco.

    Paa ialia la infomacin elaia a na maco (modo abeiado de eclado

    decicin), eleccione la maco de la lia haga clic en el bon ....

    Si gada o imea e n libo con maco, aaece el menaje igiene:

    a. Haga clic en el bon aa anla la gabacin del libo in la maco.b. En el cado de dilogo , aba la lia eleccione

    (*.).

    Lo libo e conienen maco ienen la eenin (en e de ) icono e

    diinge o n igno de eclamacin.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    13/236

    17 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    Paa gaba n neo libo con maco, ambin ede ealia la igiene oeacione:

    a. Haga clic en el bon .b. Aae el neo del an haa la ocin .c. Haga clic en .

    1.2.4

    L

    La configacin de egidad de la maco emie conola lo e oce al abi n liboe coniene maco.

    La modificacione de la configacin de egidad de maco igen olamene en Ecel

    no afecan a la oa alicacione de Micoof Office.

    1.2.4.1 M

    a. Haga clic en el bon de la ficha .b. Seleccione la ocin deeada.c. Haga clic enaa alida eleccin.

    Si e cambia la configacin de egidad, la nea ocione e alican a odo lolibo, eceo a lo libo a abieo en Ecel. Paa alicala a eo libo, debe

    cealo abilo neamene.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    14/236

    18 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    1.2.4.2 D

    D : Toda la maco oda la adeenciade egidad en dehabiliada.

    D : Ocin o defeco. La maco en

    dehabiliada eo aaece la igiene adeencia de egidad (bajo la cina deocione) aa lo libo e conienen maco:

    Tambin e oible habilia la maco, olamene aa ee libo, de la igienemanea:

    Haga clic en el bon bicado a la deecha de la adeencia de

    egidad aneio. Seleccione la ocin haga clic en el bon : la

    maco en habiliada deaaece la adeencia de egidad.

    D : Si la maco de nlibo ienen fima digial de n oigen aobado, la maco odn ejecae. Si eloigen no e aoiado, aaece na noificacin: en ee cao e oible habiliala maco fimada o aoba el oigen. La maco in fima digial no odnhabiliae.

    H ( ;

    ): Si e elecciona ea ocin, oda la maco en habiliada. Seecomienda no a ea ocin de foma emanene.

    Caliea e ea la ocin elegida, i e inala n ogama anii comaible con

    Micoof Office Sem 2007, lo libo e conengan maco en analiado ane

    de abie.

    1.2.4.3 F

    Paa fima digialmene n oeco maco, debe:

    a. Obene n ceificado digial de ae de na aoidad de ceificacin comecial,como (.eiign.com), e inalalo,

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    15/236

    19 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    b. Fima digialmene oeco. Paa ello, ae al enono VBE (acceible dede el

    comando de la ficha ) eleccione la ocin del men. Haga clic en el bon aa elecciona ceificado.

    Paa oba oeco maco, en odenado, ede cea oio ceificado de

    aofima con la ada de .(ogama diibido con Micoof Office 2007).

    1.2.5 M

    Paa accede al cdigo de na maco:

    a. Haga clic en el bon de la ficha o le el modo abeiado[Al] [F8].

    b. Seleccione la maco e deea modifica haga clic en el bon .

    El cdigo de la maco aaece en na enana del enono Micoof Vial Baic (e Elenono de deaollo VBE ma adelane).

    Una maco coeonde a n ocedimieno en lengaje VBA. Un ocedimieno VBA e

    na ecencia de inccione agada en n bloe de cdigo e comiena con

    Sub emina con End Sub.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    16/236

    20 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    Pede modifica o comlea el cdigo deno de ee ocedimieno.

    E:

    Inee el igiene cdigo al final del ocedimieno moado e la figa aneio:

    ...MsgBox "El formato de celdas " & Selection.Address & _

    vbCr & "se ha modificado correctamente"End Sub

    Paa oba ocedimieno, haga clic en el icono de la baa de heamiena o e la

    ecla [F5]. Aaece el igiene menaje:

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    17/236

    21 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    1.3

    A

    Se ede aocia na maco a diino conole (boone de comando, imgene, ec.) o a la baa de

    heamiena de acceo ido aa da al aio n acceo amigable ido aa ejeca maco.

    1.3.1

    A

    a. Haga clic en el bon de la ficha .

    b. Dibje el bon con la ada de la heamiena (ae eio iieda de la baa

    de Conole de fomlaio).

    Al ola el bon del an, aaece el cado de dilogo .

    c. Seleccione el en la lia haga clic en.

    1.3.2

    A

    a. Inee na imagen con n clic en el bon de la ficha .

    b. Haga clic con el bon ecndaio del an eleccione la ocin .

    c. Seleccione el en la lia haga clic en el bon.

    1.3.3

    A

    1. Inee n objeo gfico (imagen, imagen edieada, foma o SmaA, acceible

    dede el go de la ficha ).

    2. Paa defini en el objeo na ona e emia ejeca na maco, haga clic en

    (en la ficha ), eleccione la foma deeada dibje la foma deno

    del objeo e acaba de cea.

    3. Haga clic con el bon deecho del an eleccione la ocin .

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    18/236

    22 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    4. Seleccione el en la lia alide con n clic en el bon.

    5. Seleccione la foma ineada. Aaece la eccin haga clic

    en la ficha .

    6. En el go de la ficha , haga clic en la lia

    lego en .

    7. En el mimo go de la ficha , haga clic en la lia

    , lego en .

    8. Ahoa, al hace clic en la foma, e ejeca la maco.

    1.3.4

    A C AX

    a. Acie el modo Dieo (i e e no e a acio) con n clic en el bon de la

    ficha .

    b. Haga clic en el bon de la ficha .

    c. Dibje na imagen con la ada de la heamiena (deno de lo conole AcieX)

    ele el bon del an.

    d. Ahoa ede moa modifica la oiedade de la imagen (en aicla, aocia

    na imagen o medio de la oiedad ) con n clic en el bon .

    e. Haga clic con el bon deecho del an eleccione la ocin .

    f. Deno del ocedimieno VBA aociado a la imagen, eciba la inccin Callegida

    del nombe de la maco e deea ejeca.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    19/236

    23 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    g. Deacie el modo Dieo con n clic en el bon de la ficha .

    h. Haga clic en la imagen: la maco Teste ejeca.

    1.3.5

    A

    Tambin e oible inea en la baa de heamiena de acceo ido n comando e

    emia ejeca na maco. Paa ello:

    a. Haga clic en el bon , lego en el bon (abajo

    a la deecha del cado de dilogo).

    b. Seleccione la caegoa en el men de la iieda.

    c. En la lia delegable de caegoa, aiba a la iieda, eleccione :

    aaecen la maco dionible en la colmna de la iieda.

    d. Seleccione na maco haga clic en el bon: la maco aa a la colmna de la

    deecha.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    20/236

    24 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    e. Haga clic en el bon aa elecciona n neo icono aa la maco.

    f. Pede modifica el oden de lo comando o medio de la do flecha iada a la

    deecha.

    g. En la lia delegable iada aiba a la deecha, ede elecciona libo: en ee

    cao la modificacione efecada olamene e alican a ee libo.

    h. Haga clic en el bonaa alida.

    Ahoa hab n neo comando en la baa de heamiena de acceo ido aa ejeca la

    maco.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    21/236

    25 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    1.4

    E VBE

    VBE ( B E) e el enono en el e ede inodci, modifica oba cdigo

    VBA. Ee enono e llama ambin IDE (I D E) o edio de VBA.

    El enono VBE one a dioicin nmeoa heamiena aa facilia la ogamacin laea a no de cdigo VBA: heamiena de deacin, inodccin aiida,

    eloado de objeo, ec.

    1.4.1

    A VBE

    Paa accede al enono VBE dede Ecel, haga clic en el bon de la ficha

    o le la combinacin [Al] [F11].

    Si el enono VBE a e abieo, ede accede a ello dede la baa de aea Windo:

    1.4.2 C VBE

    Paa cea el enono VBE ole a Ecel, haga clic en el bon Cea de la enana (X oja

    bicada aiba a la deecha de la enana incial del enono VBE).

    1.4.3 V E

    Paa ole a Ecel in cea el enono VBE, e caliea de ea e oibilidade:

    a. Haga clic en el icono de la baa de heamiena ,

    b. O le el modo abeiado [Al] [F11].

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    22/236

    26 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    1.4.4 D VBE

    Toda la enana del enono VBE eden ialiae dede el men .

    (1) L E

    Lo boone de la baa de heamiena e lian a coninacin de iieda

    deecha:

    1 Ve Micoof Ecel 11 Inemi maco2 Inea na hoja 12 Deene maco

    3 Gada libo 13 Modo de dieo

    4 Coa 14 Eloado de oeco

    5 Coia 15 Venana de Poiedade

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    23/236

    27 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    6 Pega 16 Eaminado de objeo

    7 Bca 17 Cado de heamiena

    8 Dehace 18 Ada de Micoof Vial Baic

    9 Reei 19 Poicin acal en la enana de cdigo

    10 Ejeca maco

    (2)

    E

    Cada libo abieo en Ecel iene aociado n oeco. El eloado de oeco emie

    e odo lo oeco odo lo mdlo de cada oeco egn na eca en

    bol. Lo mdlo e agan en cao caegoa:

    mdlo aociado a objeo Ecel (libo hoja),

    mdlo aociado a fomlaio,

    mdlo endae,

    mdlo de clae.

    Cada mdlo ede conene mcho ocedimieno.

    (3)L P

    Pemie moa la oiedade elaia al libo, a la hoja de clclo, a la hoja gfica

    a lo fomlaio.

    (4)L C

    En ea enana e encenan do ona con lia delegable:

    la ona objeo (10)mea la lia de lo objeo de mdlo,

    la ona ocedimieno (11) mea lo ocedimieno o lo eeno del objeo

    eleccionado en la ona objeo. Lo eeno a ado aaecen en negia.

    (5) I

    Una lia delegable aaece aomicamene cando e ecibe el nombe de n objeo

    egido de n no. La lia mea lo modo, oiedade conane dionibleaa ee objeo.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    24/236

    28 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    Si la lia no e acia, eleccione en el men mae la cailla

    de la ficha .

    (6) V I

    Pemie moa lo aloe de la aiable, modificala, ejeca la inccione.

    (7)V L

    Coniene odo lo aloe de la aiable del ocedimieno en co.

    (8)V I

    Coniene odo lo aloe de la aiable e eiamene haan ido definida como

    eeione de ineccin.

    La enana , e e an incialmene aa la deacinde alicacione (e calo D ).

    (9)E E

    Pemie ialia, aa cada objeo, oiedade, modo conane.

    1.5

    C E VBA

    1.2.6 C

    La alaba clae, la fncione la inccione VBA aaecen en al; lo objeo, modo

    oiedade, en nego, lo comenaio, en ede. La inccione e conienen eoe

    e deacan en ojo.

    Paa modifica el eilo (colo, io de lea, amao) de lo difeene io de cdigo,

    eleccione en el men haga clic en la ficha .

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    25/236

    29 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    1.2.7 C

    Eien difeene heamiena e facilian la inodccin la acaliacin del cdigo VBA:

    o ejemlo, la comobacin aomica de la inai, la declaacin obligaoia de la

    aiable, la inccione e e comlean aomicamene, ec.

    Paa acia ea ocione, eleccione en el men haga clic en la ficha

    .

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    26/236

    30 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    1.2.8 G

    La ocione de ineceacin de eoe emien eablece i la ejeccin del cdigo e

    inemi al oci n eo de ejeccin.

    Paa acia ea ocin, eleccione en el men haga clic en la ficha

    .

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    27/236

    31 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    Si cdigo VBA incle na gein de eoe, eleccione la ocin

    o la inccione de gein de eoe no en enida en cena.

    Cieo ejemlo de ea memoia inclen na gein de eoe; e imoane e acie

    ea ocin aa e fncionen coecamene.

    La gein de eoe e elica en el calo D .

    1.2.9

    A

    Una enana acolada e coloca aomicamene cando la mee. Una enana no e

    acolada i ede bicae en calie lga de la analla emanece ah.

    Paa defini la enana e deea acola, eleccione en el men

    haga clic en la ficha.

    Acie la enana e deea acola deacie la oa. Lego haga clic en.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    28/236

    32 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    1.2.10 E

    N

    MB

    T

    Poiedade Ve Venana Poiedade [F4]

    Poeco Ve Eloado de oeco [Cl] [R]

    Inmediao Ve Venana Inmediao [Cl] [G]

    Ineccin Ve Venana Ineccin

    Venana Locale Ve Venana Locale

    Eloado de objeo Ve Eaminado de objeo [F2]

    Mdlo Ve Cdigo [F7]

    1.6

    N 2007

    1.6.1 N E 2007

    Ecel 2007 foma ae del aee M O 2007 (ambin llamado Office 12) e

    beneficia, en conecencia, de la mao ae de la mejoa de ea ein: nea inefa de

    aio (cina de ocione ficha e agan lo comando eemlaan lo men baa

    de heamiena), comae la heamiena gfica (ene Ecel, Wod PoePoin), ema

    de Office, gabacin de achio en fomao df , ec.

    Oa noedade e incle Ecel 2007: caacidad geneal amenada (amena la canidad de

    fila colmna), mao facilidad en la edaccin de fmla, mejoa en el fomao

    condicional, abla Ecel, filo odenamieno, ec.

    1.6.2

    L VBA E 2007

    Al conaio de lo e oce con la inefa de Ecel, el enono de deaollo conea

    men baa de heamiena.

    De oda foma, la docmenacin en lnea e ha mejoado conideablemene: el aeco de

    Vial Sdio, ejemlo de cdigo de aea modelo de objeo eniecido (infomacin

    obe lo cambio en elacin a la eione aneioe).

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    29/236

    33 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    De la mima foma, la mejoa en Ecel inodcen n eniecimieno en el modelo de

    objeo de Ecel, como o ejemlo:

    Neo objeo aociado a lo fomao condicionale: Databar(baa aa fomao

    condicional de na baa de dao), IconCriterion (eeena el cieio con n

    icono indiidal deno de n jego de icono), ec.

    Neo modo del objeo Workbook: ApplyTheme (emie alica n ema a n

    libo), ExportAsFixedFormat(emie blica n libo en fomao PDF o XPS), ec.

    Nea oiedade aociada al objeo Application: ShowDevTools(indica i la

    ficha e iible en la cina de ocione),ShowMenuFloaties(indica i

    la minibaa de heamiena deben aaece cando el aio hace clic con el bon

    deecho del an), ec.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    30/236

    34 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    222... EEELLLLLLEEENNNGGGUUUAAAJJJEEEVVVBBBAAA

    2.1

    M

    2.1.1

    E E P

    El cdigo VBA aociado a n libo e agado en n oeco e coniene aia caea:

    a. La caea

    Coniene n mdlo de clae aociado al libo del oeco (llamado o defecoThisWorkbook) n mdlo de clae o cada na de la hoja de clclo hoja degfico del libo. En aicla, en eo mdlo de clae e encenan loocedimieno de eeno aociado al libo a la hoja.

    b. La caea

    Coniene lo fomlaio (UserForm) del oeco el cdigo VBA aociado.

    c. La caea

    Aga lo difeene mdlo endae (comeo o no o m ocedimieno)e eden e llamado dede calie ocedimieno del oeco.

    d. La caea

    Coniene lo mdlo de clae ado aa la ceacin de nea clae de objeo. Lomdlo de clae on iliado eecialmene aa la ecia de lo ocedimienode eeno aociado a lo objeo Application Chart (e calo

    A ).

    La lia de odo lo mdlo aaece en foma jeica en el Eloado de oeco delenono VBE.

    Si el eloado de oeco no e a la ia, elija la ocin

    del men o le el modo abeiado [Cl] [R].

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    31/236

    35 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    Paa e el cdigo aociado a n mdlo, haga doble clic obe el nombe del mdlo.

    Lo elemeno del lengaje VBA decio en ee calo eden ae en lo difeenemdlo.

    2.1.2

    A

    Paa inea n neo mdlo en el enono VBE, e la ocin del men , o

    haga clic en el icono de la baa de heamiena lego en .

    Si la enana e maimiada, el nombe del mdlo aaece obe la baa de

    lo de .

    a. Paa aa de n mdlo a oo, en la enana , haga doble clic en el nombedel mdlo e deea acia.

    b. Paa elimina n mdlo, en la enana , haga n clic deecho en el nombe delmdlo e deea elimina, elija la ocin e indie i deea eoa elmdlo o no.

    c.

    Paa da nombe a n mdlo, acie el mdlo. Si e neceaio, aba la enana de cambie la oiedadName.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    32/236

    36 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.1.3 I VBA

    Lo mdlo fomlaio eden eoae a n achio aa lego imoalo a oooeco Ecel.

    a. Paa eoa n achio, haga clic obe el nombe del achio en el eloado de

    oeco, lego eleccione la ocin del men (o del menconeal) o le la combinacin de ecla [Cl] [E].

    b. Paa imoa n achio, haga clic obe el nombe del achio en el eloado deoeco, lego eleccione la ocin del men (o del menconeal) o le la combinacin de ecla [Cl] [M].

    La eenin del achio ceado deende del io de achio eoado:

    Lo mdlo de clae (mdlo aociado al libo a la hoja mdlo de claeindeendiene) ienen la eenin .cl,

    Lo fomlaio ienen la eenin .fm,

    Lo mdlo endae ienen la eenin .ba.

    2.2

    P

    2.2.1

    D

    Lo ocedimieno on e emien decomone na aea de ogamacin

    comleja en n conjno de aea m bee imle. Pemien ogania el cdigo denode mdlo aa obene n cdigo de manenimieno m imle fcilmene eiliable.

    En VBA Ecel, e diingen e io de ocedimieno:

    Lo ocedimieno S(o bina) e llaman bogama o ocedimieno Sb

    Lo ocedimieno Fe llaman fncione,

    Lo ocedimieno Pe llaman ocedimieno de oiedad.

    En ee calo, olamene no ineean lo do imeo, e on lo m iliado.

    Pno comne ene ocedimieno Sb fncione:

    Ambo conienen inccione /o modo VBA,

    Ambo acean agmeno,

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    33/236

    37 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    Ambo eden e llamado dede oa fncione oo ocedimieno Sb.

    Caaceica eecfica de la fncione: deelen aloe.

    2.2.2 A

    Paa accede a n ocedimieno dede la enana de cdigo de n mdlo, aba la

    egnda lia de la enana del mdlo, haga clic obe el nombe del ocedimieno ale deea accede o ecoa lo ocedimieno con [Cl] [Flecha aiba] [Cl] [Flechaabajo].

    Paa elecciona na alaba en el cdigo, haga doble clic obe la alaba. Paa elecciona na lnea, bie el neo del an a la iieda de la lnea haga

    clic cando el neo e coniee en na flecha. Paa elecciona n go de caacee, e la cnica de aae ola o haga

    [Ma] clic.

    Paa elecciona n ocedimieno comleo, bie el neo del an a la iiedade caliea lnea del ocedimieno. Cando el neo e coniee en na flecha,haga doble clic.

    Paa ejeca n ocedimieno, haga clic en el ocedimieno e deea ejeca

    le [F5] o . Paa elimina n ocedimieno, eleccione odo el ocedimieno, le [S].

    2.2.3

    P S

    Ha do io de ocedimieno Sb:

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    34/236

    38 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    Lo ocedimieno Sb geneale Lo ocedimieno Sb aociado a eeno.

    Un e n ocedimieno declaado en n mdlo (genealmene nmdlo enda). El llamado a ee io de ocedimieno e define elciamene en elcdigo.

    Un e n ocedimieno e e ejeca aomicameneane cieo eeno de n objeo. S nombe e foma con el nombe del objeo, egido delgin bajo "_" del nombe del eeno (ejemlo: Workbook_Open). El llamado a eoocedimieno e imlcio, e deci, el ocedimieno e ejeca aomicamene cando eodce el eeno aociado.

    E:

    El igiene ide al aio e confime deeo de abandona laalicacin, ale de Ecel i el aio eonde e S. Ee cdigo ede ejecae con n

    bon de comando o na ocin de men e emia abandona la alicacin.

    Private SubTerminar()IfMsgBox("Desea salir del programa?",

    vbQuestion + vbYesNo) = vbYes ThenApplication.Quit

    End IfEnd Sub

    El igiene abe aomicamene el libo .cando e abe el libo .. Ee ocedimieno e aociado al eeno Open delobjeoWorkbook e encena en el mdlo ThisWorkbookdel libo ..

    Private Sub Workbook_Open()'Abre el libro Ventas.xlsxWorkbooks.Open Filename:="C:\VENTAS\VENTAS.xlsx"'Activa el libro ResumenWindows("RESUMEN.xlsx").Activate

    End Sub

    2.2.4 P F

    Lo ocedimieno F, llamado comnmene fncione, deelen n alo e ela

    de n clclo. El alo e deele a a del nombe de la fncin.

    El lengaje Vial Baic incle nmeoa fncione inegada, ale como la ada enclclo con fecha (da, eek, ea, foma, ec.). Adem de ea fncione inegada, edede cea oia fncione eonaliada.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    35/236

    39 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    E:

    La igiene fncin ide al aio e confime deeo de abandona la alicacin deele Truei el aio eonde e S, Falseen cao conaio.

    Function Terminar() As BooleanIfMsgBox("Desea salir del programa?", _

    vbQuestion + vbYesNo) = vbYes ThenTerminar = True

    ElseTerminar = False

    End IfEnd Function

    2.2.5

    D S S:

    [Private| Public] [Static] SubNomProc([argumentos])

    End Sub

    S F:

    [Private| Public] [Static] FunctionNomProc ([argumentos]) [As]

    End Function

    Paa cea n ocedimieno So F, e deben eea lo igiene ao:

    a. deemine el del ocedimieno: iado o blico,b. declae el ocedimieno egn io con la alaba clae Sub o Function,

    egida del nombe del ocedimieno,c. defina lo e e deban aa como ameo al ocedimieno e

    indelo ene anei de del nombe del ocedimieno,d. en el cao de na fncin, i e neceaio, indie el io del alo deelo de

    de la alaba claeAs,

    e.

    edace el cdigo e emia efeca la oeacin deeada. Si e neceaio, eExit Sub o Exit Function aa ali del ocedimieno. En el cao de na

    fncin, aigne el elado al nombe de la fncin,f. finalice el ocedimieno con End Subo End Function.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    36/236

    40 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.2.6 A

    El alcance de n ocedimieno deemina la eenin de o.

    Un ocedimieno Publicede e llamado dede de odo lo oeco

    Ecel.

    Un ocedimieno Privateolamene ede e llamado dede n ocedimieno deno delmimo mdlo.

    La alaba clae Static indica e la aiable locale del ocedimieno on manenida

    ene n llamado oo, e deci, e conean lo aloe de la aiable.

    Si no e indica Publico Private, lo ocedimieno on o defeco.

    2.2.7 A

    Lo agmeno e an aa anfei a lo ocedimieno ameo en foma de dao. Lacanidad de agmeno ede aia de 0 a aio.

    Paa declaa n agmeno, baa eecifica nombe. Sin embago, la inai comleaaa declaa n agmeno e la igiene:

    [Optional] [ByVal| ByRef] [ParamArray] [Astipo]

    La ocin Optional: indica e el agmeno e ocional ede omiie. Lo

    agmeno ocionale deben bicae al final de la lia de agmeno, e de ioVariant.

    La ocin ByVal: indica e el agmeno e aa o alo. El ocedimieno accede a na

    coia de la aiable; alo inicial no e modifica o el ocedimieno al e e lo aa. La ocin ByRef(ocin o defeco): indica e el agmeno e aa o efeencia. En

    ee cao, el ocedimieno ede accede a la aiable oiamene dicha; de ea manea, alo eal ede e modificado o el ocedimieno al e lo aa.

    La alaba clae ParamArray: e a nicamene como limo agmeno de la lia aaindica e e aa de na mai ocional de elemeno de ioVariant. No edeae con la alaba clae ByVal, ByRef Optional.

    : eecifica el nombe del agmeno. Paa la aiable de mai, no eecifica

    dimenin. : eecifica el io de dao del agmeno aado al ocedimieno (Byte, Boolean,

    Integer, Long, ec.).

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    37/236

    41 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.2.8 A

    El aaje de agmeno a n ocedimieno egn oden de aaicin e a ece difcil deealia, eecialmene cando ha ameo ocionale. De la mima foma, la legibilidad delo llamado a ocedimieno con mcho ameo no ieme e fcil.

    Lo agmeno con nombe facilian el aaje de agmeno gacia a la igiene enaja:

    El oden de lo agmeno con nombe no e imoane. Lo agmeno ocionale eden omiie.

    La inai de lo agmeno con nombe e:

    NomArg := valor

    E:

    E BA:

    If MsgBox("Desea salir de la aplicacin?", _vbYesNo + vbQuestion, "Gestin de ventas") = vbYes ThenApplication.Quit

    End If

    :

    If MsgBox(Prompt:= "Desea salir de la aplicacin?", _Buttons:=vbYesNo + vbQuestion, _Title:="Gestin de ventas") = vbYes Then

    Application.QuitEnd If

    :

    If MsgBox(Prompt:= "Desea salir de la aplicacin?", _Title:="Gestin de ventas", _Buttons:=vbYesNo + vbQuestion) = vbYes ThenApplication.Quit

    End If

    El nombe de lo agmeno aaece aomicamene en el enono VBE a medida e

    e ecibe la inccin. Lo agmeno ocionale aaecen ene cochee.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    38/236

    42 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.2.9

    L

    S:

    [Call] NomProc [lista de argumentos]

    Si e indica la alaba clae Call, debe coloca la lia de agmeno ene anei.

    Recede e en la inai, lo cochee ignifican ocionalidad.

    Paa almacena el elado de na fncin en na aiable, e la igiene inai:

    = NomProc ([lista de argumentos])

    Paa llama a n ocedimieno de oo mdlo, e la igiene inai:

    NombreMdulo.NombreProcedimiento

    E: ThisWorkbook.Salir_Aplicacion

    Paa llama a n ocedimieno de oo libo, e la igiene inai:

    Application.Run"NombreLibro!NombreMdulo.NombreProcedimiento"

    E: Application.Run "Ventas.xls!ThisWorkbook.Salir_Aplicacion"

    Paa ejeca el comando aneio, el libo .debe ea abieo.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    39/236

    43 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.2.10 L VBA E

    La fncione VBA eden ae en la fmla Ecel. Toda la fncione declaada como

    Publicen dionible en el aiene aa fncione de Ecel (en la caegoa ).

    E:

    E BA

    .

    Function CalcEdad(fechaNac As Date)DimzFecha As Date'Calcula la edad en funcin de la fecha de nacimientoCalcEdad = Abs(DateDiff("YYYY", fechaNac, Date))

    zFecha = DateAdd("YYYY", CalcEdad, fechaNac)IfzFecha > Date ThenCalcEdad = CalcEdad - 1

    End Function

    Paa a ea fncin en Ecel:

    a. Seleccione la ocin de la ficha .b. En el cado de dilogo , en la lia , elija

    ; la fncinCalcEdadea ahoa acceible:

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    40/236

    44 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    c. Seleccione la fncin haga clic en ; el cado de dilogo le edi loagmeno de la fncin como e e a:

    Ee ejemlo mea la imoancia del nombe de lo agmeno de la fncione:

    cano m elcio ean o, m fcil e a la fncin en Ecel.

    Ahoa ede modifica la fmla aa incli el eo "ao" eende la fmla a oda lalia.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    41/236

    45 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    El elado en Ecel e el igiene:

    2.2.11 E

    C E .

    Sub Mostrar_Tabla()Dim TabValAs VariantDim CeldaAs RangeDim iAs Integer'Muestra el contenido de la tabla en la hoja de clculo activaTabVal = Array("Buen Da", 1.244, "=A1+12", "=A2+12")For i = 0To 3

    Set Celda = Range("A" & i + 1)If MCell(Celda, TabVal(i))Then

    MsgBox "La celda se actualiz con xito"Else

    MsgBox "La celda no se pudo actualizar"End If

    Next iEnd Sub

    El cdigo de eo ejemlo debe ecibie en n mdlo enda o en el mdlo

    ThisWorkbook.

    La fncin MCell infoma obe el alo aignado a na celda. Deele True i la celda e

    acali coecamene, Falseen cao conaio.

    Private Function MCell(CeldaAs Range, ValorAs Variant) As Boolean'Actualizacin de una celda a partir de un valorMCell = False

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    42/236

    46 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    If Not IsEmpty(Celda)Then Exit FunctionCelda.Value = ValorIf Celda.Text "#VALOR!"Then

    MCell = TrueEnd If

    End Function

    Si eba ee ejemlo, obend el igiene elado:

    La ecea celda no e do acalia.

    2.3

    V

    La aiable emien almacena aloe inemedio dane la ejeccin del cdigo VBA aa

    alo lego en clclo, comaacione, eba, ec.

    La aiable e idenifican o n nombe e emie hace efeencia al alo e conienen

    n io e deemina la naalea de lo dao e eden almacena.

    Paa declaa na aiable ede ae la inccin Dim:

    DimNomVariableAsTipo

    2.3.1

    T

    2.3.1.1

    NT R

    T

    Byte 0 a 255 1

    Integer(eneo) 32 768 a 32767 2

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    43/236

    47 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    Long(eneo lago) 2 147 483 648 a 2 147 483 647 4

    Single (eal imle

    de coma floane)

    3.402823E38 a 1.401298E45 (aloe negaio)

    1.401298E45 a 3.402823E38 (aloe oiio)4

    Double(eal doble

    de coma floane)

    1.79769313486231E308 a 4.94065645841247E324 (aloe

    negaio)

    4.94065645841247E324 a 1.79769313486231E308 (aloe

    oiio)

    8

    Currency(moneda

    de no fijo)922 337 203 685 477.5808 a 922 337 203 685 477.5807 8

    Decimal

    +/79 228 162 514 264 337 593 543950 335 in eaado

    decimal;

    +/7.9228162514264337593543950335 con 28 cifa a la

    deecha del eaado decimal; el meno nmeo diino de

    ceo e +/0.0000000000000000000000000001

    12

    El alo o defeco de lo io de dao nmico e ceo.

    2.3.1.2

    C El io e String. Eien do io de cadena:

    La cadena de longid aiable eden conene aoimadamene do mil millone de

    caacee.

    La cadena de longid fija eden conene de 1 a aoimadamene 64 Kb de

    caacee.

    El alo o defeco de lo io de dao Stringe "" (Sing nlo).

    E:

    'Cadena de longitud variableDimDomicilio As String'Cadena de longitud fija (20 caracteres)DimNombre As String* 20

    2.3.1.3 B El io e Boolean. La aiable ede oma lo aloe True(Vedadeo) o False(Falo).

    Oca 2 be.

    El alo o defeco de lo io de dao lgico e False.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    44/236

    48 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.3.1.4 FEl io e Date. La aiable ede oma lo aloe de fecha de hoa del imeo de eneo

    del ao 100 al 31 de diciembe de 9999. Oca 8 be.

    El alo o defeco de lo io de dao Datee 18991230 12:00:00 AM

    2.3.1.5

    VLa aiable de io Variant eden conene dao de odo io, adem de lo aloe

    eeciale Empty, Error Null.

    Ua el io de dao Variantofece m fleibilidad en el aamieno de dao. Po ejemlo,

    i na aiable de io Variantconiene cifa, e ede a alo eal o eeenacin

    en foma de cadena, egn el coneo.

    De oda foma, la aiable de io Varianteieen 16 be de memoia aa nmeo

    22 be + la longid de la cadena aa lo caacee; eo ede e ejdicial en el cao deocedimieno lago o en mdlo comlejo.

    El alo o defeco de lo io de dao Variante Empty.

    E:

    SubVariable_Variant()'Declaracin de la variable "Valx" como VariantDimValx As Variant'Asignacin de una sucesin de valores a la variable'y mostrar el tipo del resultado: 10 da Integer

    Valx = 10MsgBox Valx & " es de tipo " & TypeName(Valx)'Ejemplo da StringValx = "Ejemplo"MsgBox Valx & " es de tipo " & TypeName(Valx)'Esta multiplicacin da DoubleValx = 12500.32 * 1E+21MsgBox Valx & " es de tipo " & TypeName(Valx)'#1/1/99# da DateValx = #1/1/99#MsgBox Valx & " es de tipo " & TypeName(Valx)'True da BooleanValx = TrueMsgBox Valx & " es de tipo " & TypeName(Valx)

    End Sub

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    45/236

    49 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.3.1.6 OEl io e Object. Paa cea na aiable e conenga n objeo, comience o declaa la

    aiable como io Objeo lego agnele n objeo.

    El alo o defeco de lo io de dao Objeo e Nothing.

    Paa declaa na aiable Objeo:

    a. Si el io de objeo no e conoce, e la inai:

    DimNomVariableAs Object

    b. Si e conoce el io de objeo, e la inai:

    DimNomVariableAsTipoObjeto

    E:

    SubVariables_Objeto()'Test se declara como objeto'NomCli se declara como hoja de clculo'AImprimir se declara como grficoDimTest As ObjectDimNomCli AsWorksheetDimAImprimir AsChart

    End Sub

    Paa aignale n objeo a na aiable Objeo, e la inccinSet:

    SetNomVariable= ObjetoaAsignar

    E:

    D ZonaTest Range

    A6 B15 :

    Dim ZonaTestAs RangeSet ZonaTest = Range("A6:B15")

    Paa finalia la aociacin ene na aiable n objeo deeminado, e la igieneinai:

    SetNomVariable=Nothing

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    46/236

    50 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.3.1.7 T ( TDU)Lo io de dao eonaliado e cean con la inccinTypeada a niel de mdlo.

    S:

    TypeNomTipoPersonalizado

    NomElemento1AsTipoDatos

    NomElemento2AsTipoDatos

    ...

    End Type

    La definicin del io eonaliado olamene ede hacee en la

    de n mdlo.

    E:

    D

    ProGene.

    B6

    B11 . E , .

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    47/236

    51 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.3.2

    D

    Paa cea na aiable, debe declaala, e deci, dale n nombe. Lego ede a ee

    nombe aa modifica el alo de la aiable, a ee alo, ec.

    La declaacin de aiable en VBA ede e o .

    2.3.2.1 D Se hacen diecamene al aigna n alo a n nombe de aiable. El io de dao e

    enonce el io o defeco, o ea, Variant.

    E:

    I = 12Importe = 12000

    Nombre = "Juan Carlos"

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    48/236

    52 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.3.2.2 D Reieen el o de na (Dim, Public, Private, Static). Si el

    io de la aiable no e indica, la aiable ela del io o defeco, o ea,Variant.

    Se ede imone la declaacin imlcia de aiable ando la inccin Option

    Explicit en la eccin de declaacin de cada mdlo. Paa inea ea inccin

    aomicamene en cada neo mdlo, acie la ocin del

    men ficha .

    E:

    DimIPrivateImporte As DoublePublicNombre As String

    Paa oimia la elocidad de ejeccin del cdigo VBA, e ecomienda declaa la

    aiable en foma elcia.

    2.3.2.3 S

    {Dim | Private | Public | Static} NomVariable[As]

    En la inai, la llae, , ignifican eleccin el ie, , ignifica eclin, e deci, en la

    inai aneio e debe ecibi na de la alaba clae: Dim, Piae, Pblic o Saic.

    . D

    La aiable declaada con la inccin Dim en dionible aa odo

    lo ocedimieno del mdlo. No on acceible dede ningn oo mdlo. La aiable

    declaada con la inccinDim olamene en dionible deno

    del ocedimieno.

    . P

    Solamene e ede a . La aiable Private olamene en

    dionible aa el mdlo en el e on declaada.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    49/236

    53 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    . P

    Solamene e ede a . La aiable declaada con la inccin

    Publicon acceible dede el conjno de mdlo de odo lo oeco Ecel abieo. Si

    la inccin Option Private Module e eecifica en la eccin de declaacin del

    mdlo, la aiable olamene on blica deno del oeco e la ecibe.

    . S

    Solamene e ede a . La aiable declaada con la inccin

    Staticconean alo dane oda la dacin de la ejeccin del cdigo.

    2.3.3

    D

    2.3.3.1 D El io de la aiable e eecifica en la declaacin, a la alaba claeAs.

    E:

    SubTotalAcum()

    DimTotal As IntegerStaticAcum As IntegerTotal = Total + 10Acum = Acum + 10'Devuelve 10 en cada ejecucin del procedimientoMsgBox Total

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    50/236

    54 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    'Devuelve 10 en la primera ejecucin, luego 20 la segunda vez,'30 la tercera, etc.'Las variables Static conservan el ultimo valor asignadoMsgBox Acum

    End Sub

    Ued ede declaa m de na aiable en na mima inccin eo, aencin, el io dedao olamene e enido en cena aa la lima aiable, el io Variante aigna a

    la oa. Si no deea ee comoamieno, eableca elciamene el io de dao a cada

    aiable.

    E:

    Identificador Variant

    Superficie Latitud .

    DimIdentificador, Superficie As Integer

    DimLatitud As Integer

    2.3.3.2 D El io de aiable e declaa o el o de n fijo en el momeno de iliacin o o la

    inccin DT.

    . E

    Ued debe agega no de lo igiene caacee al nombe de la aiable:

    S T

    % Inege& Long

    ! Single

    # Doble

    @ Cenc

    $ Sing

    E:

    'Declara la variable como tipo Cadena (String).

    DimNombre$'Declara la variable como tipo Moneda (Currency).DimDeuda@'Declara la variable como tipo Real de doble precisin (Double).DimIncremento#

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    51/236

    55 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    . I DT

    Ea inccione e emlean en la ona de declaacin del mdlo aa defini lo io de

    dao o defeco de la aiable co nombe comienan o lo caacee eecificado. La

    igiene abla mea el liado de la inccione DTaa coeondiene a cada io

    de dao:

    I T

    DefBool Boolean

    DefDbl Double

    DefInt Integer

    DefDate Date

    DefLng Long

    DefStr String

    DefCur Currency

    DefObj Object

    DefSng Single

    DefVar Variant

    DefByte Byte

    E:

    'Todas las variables cuyos nombres comienzan por una letra comprendida entre I'y K y por la letra N son variables de tipo entero (Integer).DefIntI-K, N'Las variables que comienzan por una letra comprendida entre A y H sern de'tipo cadena (String).DefStrA-H

    La inccione DT no ienen efeco i e eablece la inccin Option

    Explicit.

    2.3.4 A (A)

    Un aeglo e n conjno de elemeno conigo, odo del mimo io, e comaen n

    nombe comn, a lo e e ede accede o la oicin (ndice) e oca cada no de ello

    deno del aeglo. Un aeglo ede ene aia dimenione: A lo aeglo de na dimenin

    e le llama ecoe o lia, a lo de do dimenione abla o maice, a lo aeglo de 3dimenione en adelane e le llama aeglo mlidimenionale. El mimo nmeo de

    dimenione de n aeglo en VBA e 60.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    52/236

    56 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    Un aeglo de do dimenione e eeena con na aiable con do bndice: el ime

    bndice coeonde a la fila el egndo bndice coeonde a la colmna.

    En VBA ha do io de aeglo: e ienen ieme el mimo amao

    co amao cambia en iemo de ejeccin.

    2.3.4.1

    D

    Paa cea na aiable aeglo, e la igiene inai:

    {Dim|Private|Public|Static} variable([dimensiones]) [Astipo]

    : E n idenificado e nomba el aeglo

    : Define el io de la aiable. Pede e n io imle (Inege, Long, Single, Doble,

    Sing, ec), n io objeo (Objec, Wokbook, Range, ec) o n io definido o el

    aio.

    : e na lia de eeione nmica, eaada o coma e definenla dimenione del aeglo. Si e eecifica la dimenione, el aeglo e eico, i e

    omie, el aeglo e dinmico. ede e de la foma:

    [LimInferiorTo] LimSuperior[, [LimInferiorTo] LimSuperior]...

    donde LimInferiorcoeonde al ndice meno del aeglo en ea dimenin. Como

    e ocional, i e omie, alo e ceo. LimSuperiorcoeonde al ndice eio

    del aeglo en ea dimenin.

    Nee e lo anei on obligaoio en la declaacin de na aiable aeglo.

    Po defeco, el meno alo del ndice de n aeglo en na dimenin e 0. Paa modifica elmeno alo del ndice, e la inccin Option Base {0 | 1} en la eccin dedeclaacin del mdlo.

    Paa defini el conenido de n aeglo, e ede a la fncin Array(el aeglo debe edinmico) o deliege lo dao en na hoja o aigne na o na cada aiable del aegloando lo ndice.

    E:

    E , E,

    .

    ConstFacFRF = 6.55957ConstFacBEF = 40.3399ConstFacDEM = 1.95583

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    53/236

    57 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    ConstFacESP = 166.386ConstFacITL = 1936.27

    SubMuestra_Factor()DimPais As VariantDimFactor(5) As DoubleDimi As Integer'Lista de pases

    Pas = Array("Francia", "Blgica", "Alemania", "Espaa", "Italia")

    'Lista de los factores por pasFactor(0) = FacFRFFactor(1) = FacBEFFactor(2) = FacDEMFactor(3) = FacESPFactor(4) = FacITL

    'Muestra los pases y sus factores en la hoja de clculo EuroFori = 0 To4

    WithSheets ("Euro").Cells(i + 1, 1) = Pais(i).Cells(i + 1, 2) = Factor(i)

    End WithNexti

    End Sub

    E , . E BA

    :

    SubMuestra_Factor2'Matriz de dos ndicesDimTabFactor(5, 1) 'Pordefecto esta matriz es de tipo VariantDimi As Integer

    'Lista de pases y sus factoresTabFactor(0, 0) = "Francia"

    TabFactor(0, 1) = FacFRFTabFactor(1, 0) = "Blgica"TabFactor(1, 1) = FacBEFTabFactor(2, 0) = "Alemania"TabFactor(2, 1) = FacDEMTabFactor(3, 0) = "Espaa"TabFactor(3, 1) = FacESPTabFactor(4, 0) = "Italia"TabFactor(4, 1) = FacITL

    'Muestra los pases y sus factores en la hoja de clculo EuroFori = 0 To4

    WithSheets("Euro").Cells(i + 1, 1) = TabFactor(i, 0).Cells(i + 1, 2) = TabFactor(i, 1)

    End WithNexti

    End Sub

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    54/236

    58 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.3.5 C

    Una conane emie aigna n nombe elcio a n alo ee no e ede cambia.

    2.3.5.1 C La declaacin de na conane e hace con la inccin Consten la eccin de declaacin

    de n mdlo o n ocedimieno.

    ConstNomConstante[As] =

    D: Coeonde al io de dao de la conane. El io de dao no ede e n

    objeo (Object) ni n io eonaliado (Type). Si no e eecifica el io de dao,

    io e deemina de acedo al alo aignado.

    : Coeonde al alo de la conane. No ede e na fncin definida o

    el aio, ni na fncin inneca de Vial Baic eo i ede e na eein e

    inolce oeadoe, oa conane lieale.

    E: D .

    SubConstantes()'Ejemplos de constantes autorizadas:ConstVal1 = "Mega+" 'El tipo de datos es StringConstVal2 = 148 'El tipo de datos es IntegerConstVal3 = 125.45 'El tipo de datos es DoubleConstVal4 As Single= 125.45ConstVal5 As Double= Val2 * Val3ConstVal6 As String= Val1 & " cuesta " & Val2'Ejemplo de constante no autorizada por el uso de una funcin VB'por lo que la siguiente instruccin genera un error

    ConstVal6 = Sqr(Val4)End Sub

    Paa cea na conane acceible al conjno de lo libo, e la debe declaa en la eccin de

    declaacin de n mdlo bica la inccinPublicane de la inccinConst.

    2.3.5.2 C VBALa conane ada o lo objeo Micoof Ecel an ecedida o la lea "l"; la

    conane ada con oa inccione fncione Vial Baic an ecedida o la lea

    "b", la conane Micoof Office an ecedida o la lea "mo".

    Paa moa la lia de conane inegada, aba el eaminado de objeo con n clic en

    el icono o lando la ecla de fncin [F2]. Eciba la alaba C en la lia

    delegable T lego haga clic en el icono .

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    55/236

    59 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    Paa obene la lia de conane Vial Baic, oceda de la igiene manea:

    a. Aba la ada de Vial Baic o medio del icono de la baa de heamiena

    o de la ecla [F1],

    b.

    Eciba la alaba "Conane" en la ona de beda haga clic en el bon:

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    56/236

    60 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    c. La lia de conane claificada o io ea ahoa acceible:

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    57/236

    61 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.4

    O

    Lo oeadoe emien ealia oeacione aimica con aiable /o conane,

    comaa aiable ene ella, eala aia condicione, ec.

    Se diingen aio io de oeadoe:

    Oeadoe aimico,

    Oeadoe de comaacin,

    Oeadoe lgico,

    Oeado de concaenacin.

    El oeado de aignacin e el igno =. El alo de la eein iada a la deecha del

    igno igal e aignado a la aiable iada a la iieda del igno (ejemlo: IntA = 12).

    2.4.1 O

    Pemien efeca clclo aimico con aiable /o conane.

    O C

    + Adicin

    - Saccin /o Negacin

    / Diiin eal

    Mod Reido de la diiin

    \Diiin enea* Mlilicacin

    ^ Poenciacin

    2.4.2 O

    Comaan do aloe o do cadena de caacee.

    O C

    < Meno e

    Mao e

    >= Mao o igal e

    = Igal a

    Diino de

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    58/236

    62 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    La inccin Option Compare {Binary|Text|Database} iliada

    emie declaa el modo de comaacin o defeco e coniene a en la

    comaacin de cadena. Pede oma e aloe oible:

    Option Compare Binary(ocin o defeco) ealia la comaacin de cadena

    baada en el oden deiado de la eeenacin binaia inena de lo caacee: A < B

    < E < Z < a < b < e < < < < < < ...

    Option Compare Textealia la comaacin de cadena in diingi macla

    de mincla: (A=a) < (=) < (B=b) < (E=e) < (=) < (Z=) < (=)...

    Option Compare Databaseealia la comaacin de cadena baado en el oden

    deeminado o el idenificado de ameo egionale de la bae de dao en la e

    e ealia la comaacin de cadena.

    2.4.3

    O

    Pemien eala imlneamene do (o m) aloe booleano o eeione e deelen

    ee io de alo. Genealmene e an con la inccin If.

    O C

    And

    Si oda la eeione ienen el alo True, el

    elado e True. Si na de la eeione iene

    el alo False, el elado e False.

    OrSi o lo meno na de la eeione iene el

    alo True, el elado e True(o inclio).

    Xor Si na lo na de la eeione iene el aloTrue, el elado e True(o eclio).

    Not Deele el conaio de la eein.

    EqvDeele True i la do eeione ienen el

    mimo alo de edad.

    Imp

    Deele False cando la imea eein e

    True la egnda False, en cao conaio

    deele True.

    E:

    (A>=1) And (A== 10)deele Truei A e eicamene meno e 10,

    (A>0) Or (B>0) Or (C>0) deele Truei al meno no de lo aloe e oiio.

  • 5/20/2018 Vip Genial Fantastico-macros Para Excel-explicado y Totalmente Practico

    59/236

    63 Laboaoio de Siema Faclad de Mina Co Maco en Ecel 2007 Calo Alae C.

    2.4.4 O

    El oeado de concaenacin e el igno &. Combina do eeione de cadena.

    E:

    C .

    StrApeNom = Apellido & " " & Nombre

    2.4.5 P

    Cando ha aio oeadoe en na mima eein, cada no de ello e eala en n

    oden edeeminado, llamado ioidad de lo oeadoe.

    Lo oeadoe e ealan en el igiene oden: oeadoe aimico, oeado de

    concaenacin, oeadoe de comaacin, oeadoe lgico.

    Lo oeadoe de comaacin ienen la mima ioidad; e deci, on ealado o oden de

    aaicin, de iieda a deecha.

    Lo oeadoe aimico lgico e ealan en el igiene oden de ioidad:

    A L

    ^ Not

    -(Negacin) And

    *, / Or

    \ Xor

    Mod Eqv

    +, - Imp

    El o de anei emie modifica la ioidad aa e n elemeno de na eein ea

    ealado ane e lo oo. La oeacione enceada ene anei e ealan ieme

    ane e la oa.

    E:

    "3 + 4 * 5" 23: (4 * 5)

    ( + 3). "(3 + 4) * 5" 35. .

    Se aconeja a anei aa mej