Excel Profesional 2010

278
H . . IM - , . . . . a . %. - . . . q/l icrosoftA Excelxzolo lnpclarde MANUALDELPARTICIPANTE s offiêf M-- -'*-. j I PTrO AgC a radmprFl Y

description

SENATI - EXCEL PROFESIONAL

Transcript of Excel Profesional 2010

Page 1: Excel Profesional 2010

H

. . IM - , . . . . a . %. - . . .

q/l icrosoftA

Excelxzololnpclarde

MANUAL DEL PARTICIPANTE

soffiêf

M-- - - '*- . j IPTr OAgC ar admp rFl Y

Page 2: Excel Profesional 2010
Page 3: Excel Profesional 2010

Tabla de Contenidos

F2 () !1 h! ;.:' () r) EE 7* Ji E, 1. Ft .. .. .... ..... ... ..... .... ...... ... ..... ..... .... ..... .... ..... ..... ... ...... .... ..... ... ..... .. 1F2 () !1 h! ;.:' () () () h! (:1 7* Ft i' 1. ;k.. ..... ... ..... .... ...... ... ..... ..... .... ..... .... ..... ..... ... ...... .... ..... ... ..... .. ;!LJ ss f) (1 () 7' él t)1at (1 () (1 El t () Ck ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . :!LJ tllizr El r () s t11 () ss r ti r)1(i () !; jf c r 6, él r () s t11 () ss (1 f? ftl r rfl él ttl f1 (r t ét khI é$ . ..... .... ..... ..... .... ..... .... .... ..... . 1 :!h! () (lifit: at r 6h1 (li s (r q () (1 6j tl rt Et t éh LhI Et (1 () (1 él ttl s ... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . 1 zl(1 () 11 6; (:1 1. l r) ;.II I (i hl Ar Fp EE !2 EE FI EE 11 () I 3.IC :1 r) . .... ..... .... ...... .... .... ..... .... .... ...... ... ...... ... ..... .. ;! 11() () rl S; (liitl ët r (j 11 t () 69 (1 6, #) ()) zt s (1 f) tl rl rrli s rrl () Ii kh r () .. ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . :è ir() () rl S; (liitl ët r (j 11 t () 69 (1 6, #) ()) zt s (1 f) Ii k) r () ss (liflp r 6, rl t () sr ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . C$ zlF1 EE !1 F' Jk h! I EE hl 7* it 69 :h EE () Fk 7* () tp .. ... ..... ..... .... .... ..... .... ...... .... .... ..... .... .... .. .... ... ...... ... ..... .. :$ 117' (, ltt () () rl (2 ()1 LI rrl rl zt s . .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... ..... .... ..... .... . C! isï/ ztlitl El (Tifb rt (1 () :1 Elt () s .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... ..... .... ..... .... . J1 ()7k rl lili Sksr %r Sk ... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... .... ..... .... ..... . J1 :ë

F U N CIO N ES FIN ;CN CIE RAS ..................................................................................... 55(1 E N E RALID ;kD E S S () B R E EX C E L E N E L h! U N D () D E L () S N E (1 () CIO S............... 56U S () D E F U N CIO N E S FINAN CIE RAS:...................................................................... 58(lo n sid era c1d n d e1 in dice d e inflaciô n.......................................................................... 58Fhré starnchs de ba n co: F)7k(9 () ....................................................................................... 59ï/alor pre se nte d e in versiô n/pa g os futuro s. y//C ........................................................... 66ï/alor futuro d e 1n versid n: LJ F....................................................................................... 6 8hl û n1 ero d e period o s d e in versi: n: h1 F) E R.................................................................... 7 Ol'a s a d e interé s por perio d o d e présta rn o o in versib n. I'/d E;/k ...................................... 7 1l'a s a intern a d e1 retorn o d e 1n versib n para valores e n efe ctivo: T(R............................ 7 2DESARROLLO DE PROYECTOS CON FUNCIONES FINANCIERAS. ..................... 73(lo rn prar fre nte a u n Lea sin g ...................................................................................... 73(lalcular Ia ta s a intern a de d ev oIu ciô n para u n 5 u1o d e 11g uid ez n o p erl6dico .............. 7 5(lalcular ta sa s intern as de d evchlu ci: n rn ûItipIes.......................................................... 7 6

Ct r1 3t l.l t; ICC () EE 1) Ji 7* () 6; I II. .... .... ..... .... .... ...... .... ..... ... ..... ..... ..... ... ..... .... ...... .... .... ..... .... .. il 1F1 EE !1 F' Ji h! I EE 11 :' yt s; r) EE Ct 11 3t l.l t; ICC EE 19 :' Ct 1) i 19 1rI () (:4 ... ..... ..... ..... ... ..... .... ...... .... .... ..... .... .. il ;!

Page 4: Excel Profesional 2010

7' () rl (1 () rt (:i é$ li rl () é$1 (1 6, élj t! s t 6, r) (, rflr (: ttl Et tl t () rrl li tit: 11 rn (p rl tll ... .... ..... .... ..... ..... .... .... ..... .... ..... . il 217' () rt (1 () rl (j él () 6, () rn th t ri (: él (1 () ftl r rrt ë$ ël tl t () rn dt ti (: és . .. ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . il t$7' () rt (1 () rl (j él Ii r) 6) ëtl () gp () () rrt ti t ri c ët (1 (? f :) r rrl ël rrl ët r) tl ëtI. . .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . ir (;pk (p r 6, (; 11 r tl r) at I irl 6) ët ($ 6, t (p rt (i () rl (liél él Ll rt (; r ti fi () (). .. ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . il 6)F7 tl rl (84') rl F7 Fl (:1 p1 () 6; T't (2 () ... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . 6) :$F7 tl rl (8(b rl -r EE h1 E) EE hl () l7$ . ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . îl (;F7 tl rl (8(b rl (2 Fl EE () 1 h4 I EE rk -r (:1 .. .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . 6) isF7 tl rl (8(b rl EE 6) 7'I rzl 7k (2 I () )1 . L. 1 ,4 EE 7$ L.. .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... .... ..... .... ..... . 6) 6)Realizar anéllsis de regresitm (utilizar complemento Herramientas para anélisis) ...... 104() âIcu1o d e y//kFII/k hk M ................................................................................................ 1 06:) EE FlhlI()I(i h1 N' Ft EE 61 () L t; (21(b h1 () EE !' Ft() E$ L E' h! ;tCI () () hl 69() LII EE Fl ............................. 1 0 8(3 e n eralid a d e s so bre 6: () LLJ EE FI ................................................................................... 1 0 8Desplazamiento por soluclones de prueba en Solver.... ............. ..... ..... ............. .... ...... 1 1 1Modificacitm de forma de bflsqueda de soluclones en Soiver ......... ..... .................. ..... 1 1 8Guardar o cargar un modelo de problema .. ............. ..... .................. ...................... ...... 1 19Desarrollo de casos tipo utilizando SOLVER ........... ..... .................. ...................... ...... 1 19LA ESTADiSTICA DESCRIPTIVA PARA EL ANXLISIS DE DATOS EN EXCEL...... 122Control de rangos de datos de entrada y sallda ....... ..... .... .............. ......... ................... 123

F2 () !1 h! t; L. Ft F'I (:4 s$ ... .. ... .... .. .... ..... ... ..... .... ...... ... ..... ..... .... ..... .... ..... ..... ... ...... .... ..... ... ..... .. 1 ;! 61/t () 7* ILI Ji () I (j r1 1) EE L. ik !2 l () h1 Fk !3 Fp () () !1 yt hl ik r) () Fp . ... ...... .... .... ..... .... .... ...... ... ...... ... ..... .. 1 :$ ():) IIC EE ih () () EE !2 () FI hI t; k. Fk !1 I () 19 ... ... ..... ..... .... .... ..... .... ...... .... .... ..... .... .... .. .... ... ...... ... ..... .. 1 :$ ()Modificar el disero de la hqa mostrando y ocultando. .. ............. ..... ..... ............. .......... 131Uso de Controles de formulario (Ficha PROGRAMADOR) ........ ..... ..... ............. .......... 136DESARRO LLO DE EJ EM P LOS TI PO CON FO RM ULARIOS . . .. . . ... . .. .. . . .. . .. .. . . .. . .... . .. 1 45

h! ik () F' () t; .. .... ..... .... .... ...... ... ...... ... ..... ..... .... .... ..... .... ...... .... .... ..... .... .... .. .... ... ...... ... ..... .. 1 dl 61h! ik () F' () t; .... ..... .... .... ...... ... ...... ... ..... ..... .... .... ..... .... ...... .... .... ..... .... .... .. .... ... ...... ... ..... .. 1 ts ()1$ EE (1 tl FI I 1) Ft () r) EE h! ik () F' () 6; . ..... ... ..... .... ...... ... ..... ..... .... ..... .... ..... ..... ... ...... .... ..... ... ..... .. 1 ts 1() !1 yt E$ Ji F' tl hl ik 11 tl EE ï( Ft h! it () F' () . ..... .... ...... ... ..... ..... .... ..... .... ..... ..... ... ...... .... ..... ... ..... .. 1 ts E;EE r) IIC Ft Fp t; 11 Ji hI Ft () !1 () CJ 7* I 1. I 2: ik 11 () () l!I 19 tl yt k. E! 3t 69 l () ..... .... ..... ..... ... ...... .... ..... ... ..... .. 1 f$ ;!EE 1. I hl l r1 ik !p h! ik () F' (:1 s1 . .... .. .... ..... ... ..... .... ...... ... ..... ..... .... ..... .... ..... ..... ... ...... .... ..... ... ..... .. 1 f$ zltJ 69 () r) EE hl JCII !1 () 11 EE 11 !2 () F' hI tl k. Ji F4 I () $9 .... .... ..... ... ..... ..... ..... ... ..... .... ...... ..... ... ..... .... .. 1 f$ zl/k sli (j rl él r rrl él (: r rh 69 él kh cht () rt () s 6, f) f :h r rn L1I ël r1() i, ... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . 1 (; is

Page 5: Excel Profesional 2010

/k ssitl rl él r rrl él (: r (h 69 él Cht r () 6$ (:tl rl t r()I 6, S; () rl ftl rrn tlI é$ rit) s . .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . 1 (; isF' L;k,1 1'IL L.;k69 () () h1 F () Fl hl tl L;kFll() 69 b' h! ;tII !'() ï; ..................................................... 1 71() rtl ét r rhI ël rl tll él 61 r) () r s () n ztlizl ël (1 él il . .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... .... ..... .... ..... . 1 Jr :?LJ tilizhql r rhI ët rl tillll s r) () r 69 () rt atlizl ét (1 él s ... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... .... ..... .... ..... . 1 q' zlDESARROLLO DE PROYECTOS CON MACROS Y FORMULARI0S...................... 174

F' !1 () () !1 yt hI Ji () I (i r1 () () h1 ï( E$ /t . ..... ..... ... ..... .... ...... ... ..... ..... .... .... ..... ..... ..... ... ..... ..... ..... . 1 i' ElF' !1 () () !1 yt hI Ji () I (i r1 () () h1 ï(I 19 t; yt L. E! it t; I () .. .... ...... ... ..... ..... .... .... ..... ..... ..... ... ..... ..... ..... . 1 )' 61I rh t r (h (1 ty c (:i (') rl ëlI E3 /k C; I () . ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . 1 i5 ()F7 LI rl (1 él rrl () rl t () s (1 (p F) r () (; rat rrl é$ (Titb rl ï/ E! 7k . .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... ..... .... .... ..... . 1 is 1LAS TRES VENTANAS EN EL EDITOR DE VISUAL BASIC .................................... 184L. at Léfl f) t zt rl é$ (1 (qI (p (lit () r (b 6, y/i s; tl 1lI E5 é$ sriti .... ..... .... ..... .... ..... ..... .... .... ..... ..... .... ..... .... .... ..... . 1 is z;() rtl él (8(J rl 56 u s, (h ($ () F7 r () c 6) Cli rïl 1(, rt t () 69 ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... ..... .... .... ..... . 1 is i$() Lhj (rt () s$, r) r () rhi 6, (1 EI (1 (q S;, rrl ti t () (b () s bf 6, rélq rl t () s .. .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . 1 6) ()() () fl rl itTil) rt (j (, Lé ët riél LhI 6, 6;, ti r) () 69 (1 6, (1 11 t () S; b! c :h rl sl t ét rl t () 69 ..... .... ..... .... ..... ..... .... .... ..... .... ..... . 1 6) :?(2 () rl S;t r tl (: ($() rl 6, S; llfit t1 - EE rl (1 -hhrit t1 , F7 () r- EE él c t1 - hl () )(t, I f- 'r t1 fh rl , E; 6r1 () c t (2 ël ss 6, . ... .... ..... .... ..... . 1 6) 6)E! L1 (LI 6h 69 F7 f) r - hk () ltt, h?f t1 11 fh - E) :) , E) (h - LJ rl tiI .. .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... ..... .... .... ..... . :! () (57' r Et k) atJ 11 r () () rl r El rl (4 () sl .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... ..... .... ..... .... . :2 1 6)7' r Et k) atJ 11 r () () rl Ii k) r () ss hé t1 ()j éh s ... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . :2 :ë i$/k fi El (1 1 r rrl ('h (1 LII :h !; h/ E5 7k ... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . :2 :! 6)7' r Et k) atJ 11 r () () rl CJ !; () r F7 () r rn sp .. .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . :! :$ :?h1 t, ttl (1 () 6, () () t () r) () rl Fril (j r) il rrl (j, ($ (ht :) 11 Lé 6) 7$ 69 Fril 6, h1 11 rrl 6h .. ..... .... ..... .... ..... ..... .... .... ..... .... ..... . :! zl 15

FUNCIONES PERSONALIZADAS ............................................................................. 254CREACISN DE FUNCIONES PERSONALIZADAS CON VBA .................................. 255LJ 61 () (1 () rrl (') (i t1I (h S; rh 2t r Et f t! rl (Li () fl () s .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... .... ..... .... ..... . :2 1$ (5LJ 61 () (1 () El rti ty rrl (r fl t () s (h rl ()I tl 69 () (1 () f L1 rl (8() rt 6) C; .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . :2 1$ (5Eij () (L tl t at r tl rl 11 f tl rl (lI(b rl (1 () s (1 (r !zt t1 ()j zt (1 (r (: tiI (: tl1 () ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . :2 1$ J'I rrl r) () rt at r Jf EE )( rh () rt 11 r rrl (') (i u I :h C; ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... .... ..... .... ..... . :2 1$ J'tJ tr () r) EE () () 11 lr !k () 1. EE 19 Ji () 1rl îl EE )( .... .... ...... ... ..... ..... .... ..... .... ..... ..... ... ...... .... ..... ... ..... .. ;! ts 64E! () t ts rl (1 6, () () rrl él rl (1 () 78 () tiLé 6, )( ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... .... ..... .... ..... . :2 (; ()(2 11 liill E$ 69 (1 6, ï! () rifitT zt (:i (') r) 7k (Lti ï! fy )( .. ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... .... ..... .... ..... . :2 (; ()E5 tI(1 tl (yt zt 78 (Ttiï/ () )( ... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... ..... .... .... ..... . :2 (; ()() LI El (1 rtl :1 6h t () ltt () /k cti ï! (r )( .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . :! (; ()

Page 6: Excel Profesional 2010

E! () t ts rl (1 6, () r) fli ts rl /k (Ltiïl () )( .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... . :2 (; ()I rrl ét gj () rt 7k (ltiï/ () )( ..... .... ..... .... ..... .... ..... .... ..... .... ..... .... ..... ..... .... .... ..... ..... .... ..... .... .... ..... . :! (; 1

Page 7: Excel Profesional 2010

Capîtulo

. ;kE;LLlYj

F ato de laEn este capftulo aprenderemos c1:I

III @ Utilizar el formato como tabla.I1 @ Uso de Ia herramienta de consolidacitm y de referencia 3D.1 @ Utilizar ias Herramientas de datos.IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII

Page 8: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

FORMATO COMO TABLAMicrosoft Excel define a Ias tablas como un conjunto de datos organizados en filas(registros) y en columnas (campos). La primera fila contiene 1as cabeceras de Iascolumnas, es decir Ios nombres de 1os campos. Las tabias son también consideradascomo Iistas de base de datos por Io que cada fila es un registro de datos.

Uso de Tabla de datosLas tablas de datos permiten reaiizar operaciones como agregar y eliminar datos,ordenar datos. filtrar datos.

Page 9: Excel Profesional 2010

También puede realizarlo a través de Ia cinta de opciones como a continuaclôn sedetalla.

Page 10: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

Page 11: Excel Profesional 2010

<. .'! ''r . - I&Capëulo 1:

Page 12: Excel Profesional 2010
Page 13: Excel Profesional 2010

p.yilCapikulo 1:

Aparte de Ingresar datos, tamblên podré utilizar Ios botones Eliminar, Buscar anterior,Buscar sjguiente y establecer criterios para la bflsqueda de un dato en especial.

Page 14: Excel Profesional 2010
Page 15: Excel Profesional 2010

<. .'! ''r . - I&Capëulo 1:

Utilizar estilos râpidos y crear estilos de formato de tablaMicrosoft Excel puede aplicar estilos répidos y crear estilos de formato de tabia demanera sencilla, para esto sôlo bastaria selecclonar el érea y Iuego seleccionar Ia opcibnTabla deI menû Insertar, asi tamblén podré trabajar con 1os estilos de tablaseleccionando ei modelo que m*s convine para 1os datos.

M

Page 16: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

2. Ubique Ia celda activa sobre una celda de la tabla.3. Haga clic en Insertar.4. Haga clic en Tabla.

Page 17: Excel Profesional 2010
Page 18: Excel Profesional 2010

Una vez seleccionada Ia tabla, puede utilizar Ia Fjcha Diseöo, grupo Estilos de tablapuede elegir de ia Iista, un estilo.

%; 7 f. I I . I .

Page 19: Excel Profesional 2010
Page 20: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

Modificar el diseho de una tabla de datosUna forma de modificar el diseso de Ia tabla de datos es usando tablas dinâmicas yaplicanda segmentacidn de datos.

Page 21: Excel Profesional 2010
Page 22: Excel Profesional 2010

Insertar segmentaci6n de DatosLa segmentaciôn de datos es una utllidad de Ias tablas dinémicas que permiten crearfiltros en Ios datos que estas muestran. Ademés deI filtrado répido, la segmentaciôn dedatos tambi*n indica el estado actual de filtrado, Io cual facilita el entendimiento de Io quese muestra exactamente en un informe de tabla dinâmica filtrado.

Page 23: Excel Profesional 2010

<. .'! ''r . - I&Capëulo 1:

Page 24: Excel Profesional 2010

p.YrlMkrœofk Office Excel profesioncd

Por ejemplo si selecciona en el campo Agencia el vaior Lima se mostrara Ios nombres ysaldos de todos Ios tipos de cuenta que existan en Ia Agencia de Lima..< H '' ' = ex d Je 02 h.: : ' --'

ys :Z2 se -- - .. z-- uz- jzc: -) - u '.....I.a. . q r. . . c u u c . - . .

Page 25: Excel Profesional 2010

Quitar DuplicadosExlste Ia probabilidad que en algûn momento requiera eliminar registros que seencuentran duplicados en una tabia ya sea en algûn campo o en todos Ios campos enestos casos utilice Quitar Duplicado ya sea desde Ia Ficha Datos o Ia Ficha Disello deHerramientas de Tabla.

Page 26: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

. . %

Abra el archivo TablaFaenas.xlsx1 . Vaya a Ia ficha Disefio.2. En el Grupo Herramientas selecclone Quitar duplicados.3. Para eliminar 1os valores duplicados en Ias columnas Zona y Faena, selecciônelas yluego clic en el bottm ''Aceptar''.

Page 27: Excel Profesional 2010

p.yilCapëulo 1:

Convertir RangoCuando se desea convertir una tabla en un rango normal de datos utilice Ia JpclônConvertir Rango de Ia ficha Diseiso de Herramientas de Tabla.

N uxp<

Abra el archivo Venta de Plantas.xlsx.1 . Haga clic en la ficha Diseiio, grupo Herramientas y seleccione Convertir en rango.

Page 28: Excel Profesional 2010
Page 29: Excel Profesional 2010
Page 30: Excel Profesional 2010
Page 31: Excel Profesional 2010

Modiikur Ios optiones de estilo de ioblo

. +''' ' ' . 4 I . . . . . . #

'

. . . #

'

. .

1 . Abra el archivo donaciones.xlsx de Ia carpeta CaplObserve que en Ia ficha Disefio, Grupo Opciones de estilo de tabla Ios cambiosque se pueden realizar cuando se activen o desactiven Ias casillas de verificaciôn.

Page 32: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

Page 33: Excel Profesional 2010
Page 34: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

CONSOLIDACIO' N Y REFERENCIAS 3DCuando se tienen tablas o ilstas de datos con informaciôn semejante entre ellas, peroen diferentes hojas de un Iibro o en hojas de diferentes Iibros. Se activa desde Ia fichaDatos! grupo Herramientas de datos y seleccione Consolidar.Con esta opcitm se podré utilizar diversos tipos de célculo estadistico como suma,promedio, méximo, minimo, entre otros.

Consolidar datos de hojas de un mismo Iibro

Page 35: Excel Profesional 2010

<. .'! ''r . - I&Capëulo 1:

Page 36: Excel Profesional 2010
Page 37: Excel Profesional 2010
Page 38: Excel Profesional 2010

1 8. Cree una nueva hoja y cémbiele de nombre por Resumen1 9. Repita Ios pasos de1 1 al 16, luego active Ia casilla de verificacitin Crear vinculos conIos datos de origen y Iuego acepte.

Page 39: Excel Profesional 2010
Page 40: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

Consolidar datos de hojas de Iibros diferentes

Primero se deben abrir Ios archivos gue se van a consolidar, por ejemplo abra Iosarchivos' Gastos Ene deI 2010, Gastos Feb del 201 0 y Gastos Mar deI 201 0.Asimismo se debe tener un archivo nuevo para reaiizar Ia consolidacibn.TaI como se observa en el botôn de Ia barra de tareas deI sistema operativo 7, se tienen1os 3 archivos antes mencionados més un Iibro nuevo.g' .; I ' .i

En el Ilbro en blanco acceda a Ia caja de diélogo Consolidar.

Page 41: Excel Profesional 2010

Acerque el puntero a Ia barra de tareas y haga clic en la vista previa deI Gasto Ene deI201 0.

Page 42: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

Page 43: Excel Profesional 2010

SI se activa Ia casilla de verificaciôn Crear vinculos con Ios datos de origen semuestra de la siguiente forma.

Page 44: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

HERRAMIENTAS DE DATOSTexto en ColumnasLa posibilidad de obtener datos eniazados con caracteres deiimitadores es més frecuenteen vista a la portabilidad de Ios datos en dierentes slstemas, es por ello que MicrosoftOffice 2010 también incorpora Ias herramkentas para converllr Ios textos en coiumnas

Page 45: Excel Profesional 2010

Nh :9programu Nucienal de Informtiticcl

Page 46: Excel Profesional 2010

Validaciön de datosLa vaiidaciôn de datos se usa para controlar el tipo de datos o 1os vaiores que Iosusuarios pueden escrlbir en una celda. Por ejemplo, es posible que desee restringir Iaentrada de datos a un intervalo determinado de fechas, Iimltar Ias opciones con una iistao asegurarse de que sélo se escriben nûmeros enteros positivos.

a .!wu.-..y;;ï,

Page 47: Excel Profesional 2010
Page 48: Excel Profesional 2010

An ; lisis Y s iPrueba varios valores para Ias fbrmulas de Ia hoja de célculo usando para ello eladministrador de escenarios que le permite crear y guardar dlferentes grupos devalores y cambiar entre ellos. Asi tambiên Ia opcibn Buscar objetivo que buscaré Iaentrada correcta cuando sepa el resultado que desea y Ia Tabla de datos que Iepermitiré ver Ios resultados de Ias diferentes entradas posibles al mismo tiempo.

Administrador de EscenariosUn escenario es un conjunto de valores que Excel guarda y puede reemplazar de formaautomâtica en Ias celdas de una hoja de célculo. Puede crear y guardar diferentes gruposde valores en una hoja de célculo y, luego, cambiarlos a cualquiera de estos nuevosescenarios para ver Ios diferentes resultados

Page 49: Excel Profesional 2010
Page 50: Excel Profesional 2010
Page 51: Excel Profesional 2010

<. .'! ''r . - I&Capëulo 1:

Page 52: Excel Profesional 2010
Page 53: Excel Profesional 2010
Page 54: Excel Profesional 2010
Page 55: Excel Profesional 2010

Buscar ObjetivoLa opciôn Buscar objetivo buscaré Ia entrada correcta cuando sepa el resultado quedesea. Se requiere que tenga Ia fbrmuia en Ia celda de definiciôn

Page 56: Excel Profesional 2010
Page 57: Excel Profesional 2010
Page 58: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

Page 59: Excel Profesional 2010

1 . Si tienen una base de datos con ''n'' cantldad de registros duplicados, cômo Iosellminaria .

2. Si desea ingresar datos en un campo que sôlo permita un formato preestablecido,cJmo Io haria.

3. &Es necesario tener abierto Ios archivos para realizar Ia Consolidacltm de datosusando datos de otros archivos?

4. &CuéI es la utilidad deI administrador de escenarios?

5. &CuéI es la utilidad de buscar objetivo?

Page 60: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

54 programa Nacionol de Informdtica

Page 61: Excel Profesional 2010

détzd d- #

Funciona FinanderaK

Capîtulo

@ Utilizar funclones financieras.@ Calendario de pagos.@ Adminlstrar tasas de interés.

Page 62: Excel Profesional 2010

,.:5Kliiroso:L Clesce Excel profesionul

GENERALIDADES SOBRE EXCEL EN EL MUNDO DE LOSNEGOCIOSEn Ia actualidad 1os negocios sean pequeqos o grandes manejan grandes volûmenes dedatos, Ia versibn de Microsoft Excel 2010 puede usar recursos que permitan transformar1os datos en informacidn para Ia toma de decisiones y asi facilitar el trabajoadministrativo de todas Ias âreas funclonales de una empresa.En este capitulo se proporcionarâ al participante un conjunto de herramientas gue Iepermitirén mejorar Ia apreciacidn y entendimiento en 1as funciones financieras con quecuenta Excel 2010. Estos aspectos financieros Ie sirvan de guia para un mejorentendimiento de Ias finanzas perstmales.Ei mundo de Ias finanzas personales requiere conocer la manera como s@n Ichsmovimientos referidos a Ia banca, por elio es importante analizar Ia rentabilidad que seobtiene a través deI crédito financiero.La rentabilidad se basa en el interés que se aplica a 1os préstamos solicitados.Es importante saber cbmo se aplica el interés a un capital, veamos:

: + -:Interés SimpleImplica una ganancia sobre el capital en base a un porcentaje en un tiempodeterminado

E I e m e n t o s :

Capltal Inicial (Ci)Rendimiento z: Capital Iniclal * Tasa de Interés * TiempoR (R=C1*Ti*T)

Page 63: Excel Profesional 2010

p.yilCopikulo II:

D o n d e :

Tasa de interés (Porcentaje) Ti (Mensual, Anual)Tiempo (Periodo) TCapital Final z: Capital Inicial + RendimientoRendimiento (Ganancia) RCf = Ci + R

Capital Final (Cf)Capltal Final z: Capital Inicial + Capital lnicial * Tasa de Interés * Tiempo

Cf = Ci + Ci*TI*T

Ejemplo con interés sim ple:Caicular el capital final de un préstamo por 35D soles a una tasa deI 15% a pagar en unplazo de 1 mes

Ci 350T i 1 5%T 1 (m es)Cf z: 402 . 5

Interés Compuesto Un capital iniclal que aumenta periodo tras perlodo por la suma delinterés

Ii -1 1.Primer Periodo Segundo PeriodoCf1 = Ci, + R1 Cf2 = Cf1 + R2

Si la tasa de inlerés dada es anual y Ia capitajlzaciön es mensualLa tasa de interés anual se dsvide entre 12

Cf = Ci (1+ Tilnn! es el ntimero de periodos acordado con el préstamo

xNh s7programu Nucienal de Informtiticcl

= j

Page 64: Excel Profesional 2010

,.:5Mkrœoft Office Excel profesioncd

Ejemplo:Juan realiza un préstamo a un Banco de 1500 soles. acuerda una tasa anual deI 45% yel plazo es de 10 meses.

Calcular'E1 Capital final que Iogra el ianco y Ia ganancia que obtuvo el banco por el préstamo

Datos

C i z: 1 50 0Ti z: 45 t)?o (a n u aI)n z: 1 0 (mes es)Cf :: 2 1 68 (J 1 500( 1 +450$/1 2 ) A 1 0)R :: 66 8 (< Cf - C i )

Uso de funciones financierasConsideraciôn deI indice de inflacitmGeneralmente se entiende por inflacitin al aumento de precios en Ios bienes y serviclos.Este aumento se realiza en forma sostenida debido a diversas causas como por ejemploIa inflaclôn por demanda (cuando Ia demanda de 1os bienes se incrementa y no haysuficientes productos en el mercado), Ia inflaciôn de costos (cuando el valor de la materiaprima o mano de obra aumenta y Ios productores aumentan Ios precios de 1os productos)y Ia inflacibn autoconstruida (cuando Ios agentes econ6micos reguian Ios precios yajustan aumentos segûn una previsiôn futura)Exlste el fenbmeno inverso a Ia inflacl6n que es Ia deflacldn. esta ocurre cuando unagran cantidad de precios decrecen en forma simultânea, o sea, una disminuciôn de1 nivelgeneral de precios.

I'n d i ces de P recios

Page 65: Excel Profesional 2010

p.yilCupikulo II:

Préstamos de banco : PAGOLa funcibn Pago muestra cuél es Ia cuota que debemos pagar para un determinadopréstamo.

Sinta xisPAGO (tasa ' n per; va; vf ; ti po)

ArgumentosEs el tipo de interés deI préstamo.Es el ntelmero total de pagos deI préstamo. La Tasa y Nper deben expresarseen Ia misma unidad de tiempo (Ambas trimestrales, anuales, etc.)Es el valor adual o Io que vale ahora Ia cantidad total de una serie de pagosfuturos, también se conoce como el principal.Es el valor futuro o un saldo en efectivo que desea Iograr después deefectuar e! ûltimo pago. Si el argumento vf se omite, se asume que el valores O (es decir, el valor futuro de un préstamo es 0).Si utiliza el argumento opcional Vf sin considerar valor alguno en elargumento obligatorio Va, la funciôn PAGO obtiene Ia renta constante enfunciôn de ese valor futuro que nos permjle constltuir un fondo deamortizacidn cuyo monto es el impode de Vf.Si utlliza conjuntamente el argumento obligatorio Va y el argumento opcionalVf Ia funclôn PAGO trae al momento 0 el importe de Vf, Io resta deI importede Va y sobre este saldo Ie calcula Ia cuota constante venclda o anticipada.Es el nûmero 0 (cero) () 1 . Indica el vencimiento de Ios pagos0 : AI final deI periodo (Rentas vencidas)1 A1 inicio deI periodo (Rentas anticipadas)

Nota: Si queremos saber Ios pagos mensuales tendremos que dividir el interés entre 12

E *1 e m D I o :Se debe calcular el monto de Ia cuota mensual que se debe pagar por un préstamo deS/. 1500 nuevos soles.

Celda B7:JPAGO(B2/12; B3;B1 ;0;0)Observa que la fdrmula PAGO ofrece unresuitado en negativo (rojo). La funcibnABS() nos indica gue el nûmeroabsoiuto de otro nûmero, siempre serépositivo. La fôrmula en ese caso seria:JABSIPAGOIBZ/IZ; B3;B1 ;0;(,)).

Page 66: Excel Profesional 2010

! .E!;- rMkrœoft Office Excel profesioncd

Como ya hemos dicho, en este tipo de hojas podemos probar a cambiar cantidades deIas celdas B 1. 82 y 33 y comprobar Ios distintos resultados.

Composiciôn de Ia Cuota MensualLa cuota mensual que se paga por un préstamo es calculada con Ia funciôn: PAGO.Dicha cuota tiene Ia siguiente composiciôn

( t,k:.L3L,L ;:23:. ccùtRk k.rf.. Jï1:2pz7ktp;.rs? u.h ),lt'l&'k .1

Pri ncipal (Pagopri n) Intereses (pagoi nt)

PAGO : Monto de ia cuota mensual

PAGottasa:nper:va Evj.ltipol)PAGOINT: Monto de Ios interesesPAGolNTltasaiperiodoinperivailWl; Itipol)

PAGOPRIN : Monto de1 PrincipalPAGopRlhlttasalperiodo; nperiva; Ivtliltipol)

Célculo de los intereses pagados en la cuota mensualEn este ejemplo se utiliza una funciôn nueva:PAGOINT () que calcula el interés que pagamos de Ia cantidad mensual.

La funci6n z: PAGO () nos muestra Io que debemos pagar, pero no nos dice cuantopagamos de capital real y de intereses.

Page 67: Excel Profesional 2010

p.yilCopikulo II:

La funciôn IPAGOINT () realiza esto ûltimo.

Donde

. z La tasa de interés por periodo.EI periodo para el que se desea calcuiar e! interés; debe estar entre 1 y el

. . 4 4 . argumento ntelm per. Ejemplo'. para el primer periodo (mes, ao etc) seré 1para el segundo periodo seré 2 y asi sucesivamente.

. ' EI nûmero total de periodos de pago en una anualldad.'. EI valor actual o Ia suma total de una serie de futuros pagos.

EI valor futuro o un saldo en efectivo qtle se desea Iograr después deefectuar el ûltimo pago. Si el argumento W se omite, se supone que el valores 0 (por ejemplo, el valor futuro de un préstamo es 0)EI nûmero 0 6 1 ; indica cuéndo vencen Ios pagos. Si tipo se omite, se

# # considera que es 0.

En el caso anterior deI préstamo de 1 ,500 se tlene que pagar una cuota mensual de1 82.64.

I a s c 1 . Hacer clic en Ia celda 88 yaplicamos Ia fôrmuia:1 Va .'' . Capltal

2 T1 4'. Inlerés IFAGOI NT (B2/12 : 1 : B3: B1 : 0:0)3 n p e r l '. N u m e r o p e r i o d o sI r4 Vf . Valor futuro 2 Resulta que de Ios S/. 1 82.64I 5 Ti po u' Pago a I f I na I de I perlodo q ue es la cuota q ue pagamos6 por el préstamo, se Ie esté

pagando al banco %l. 56.25 por7 pago 5/..1:2.64 Cuota Mensual interesess . . . Monto deI Interés

Célculo deI pago deI principal pagado en la cuota mensualEn este ejemplo, se utillza u na fu ncitm nueva:PAGOPRIN () que calcula el principal que pagamos de Ia cantidad mensual.

Page 68: Excel Profesional 2010

! .E!;- rMkrœoft Office Excel profesioncd

La funcitm z: PAGO () nos muestra Io que debemos pagar, pero no nos dice cuantopagamos de capital real.

La funciôn IPAGOPRIN () realiza esto ûitimo.

Donde. ; La tasa de interés por periodo.

EI periodo para el que se desea calcular el interés; debe estar entre 1 y el. . 4 . 4 argumento nûm per. Ejemplo: para el primer periodo (mes, a5o etc) seré 1

para el segundo periodo seré 2 y asi sucesivamente.' : EI nûmero total de periodos de pago en una anualldad.; Ei valor actual o Ia suma total de una serie de futuros pagos.

EI valor futuro o un saldo en efectivo que se desea Ioqrar después deefectuar el ûltimo pago. Si el argumento vf se omite, se supone que el valores 0 (por ejemplo, el valor futuro de un préstamo es 0)EI nûmero 0 6 1 ; indica cuéndo vencen Ios pagos. Si tipo se omite, se

# # considera que es 0.

En el caso anterior deI préstamo de 1 ,500 se tlene que pagar una cuota mensua! de1 82.64.

1 . Hacer cdlc en Ia celda 89 y aplicamos la fôrmula

IPAGO PRIN (B2/12: 1 : B3; B1 :0: ())

Page 69: Excel Profesional 2010

TaI como se muestra a conti nuaciôn Ia deuda al primer mes es de S/. 1 373.61 :

Pdmee%Cdpital Ctlota Mellsual Principal lnterés Detlda al prilnler mes:/.1,:00.00 5/.186.64 :/.126.39 5/.56.25 S/.1,: 7 3.61

Sigamos analizando este préstamo de S/. 1500, veamos el calendario de Pagos quese debe aplicar.

C .. I e r'1 d . ri : d e Pn . g ' o ,7Pef= 10

Vf= 0VA= 15 00 Tasa= 10 a' , . 1. .) ...t ..). , 'i, ...!,' . Jy v1'1.

Pagol Pagoz Pago'/ P4(IO10Fago al final de1 ierlodo

Page 70: Excel Profesional 2010

,.:5Mkrœoft Office Excel profesioncd

2. Prepararemos el calendario de pagos y se detallaré 1as f6rmulas de Ias dos primerasfilas. A padir de Ia segunda fila. s6lo restaré copiar Ias f6rmulas hacia abajo.Comentamos Ia primera Iinea de fbrmulas:A1 9 Nûmero de mes que se pagaB19 Saldo Capital z: C17C19 Célculo de Ia cuota mensualz: ABS (PAGO(B$2/1 2;B$3;B$1;0;0))D19 Célculo de1 principal. lo que amorlizaABS(PAGOPRlN(B$2/12;A19;B$3; B$1 ;0;0))E19 Célculo de1 knterés, Io que gana el bancorABS(PAGOINT(B$2?12;A19;B$3;B$1;0;0))F19 La deuda pendiente, es decir, el capital inicial menos lo que se ha amortizadoen el prlmer pago IC1T-D19

Las celdas que cambian en el segundo mes stm:A20 Nûmero deI segundo mes que se pagaB20 Saldo Capital z: F19C20 Célculo de Ia cuota mensual z: ABS (PAGO(B$2/12; B$3;B$1 70;0))D20 Célculo deI principal, Io que amortiza

ABSIPAGOPRINIBSZ/IZ;AZO; B$3; B$1 ;0;0))E20 Câlcuio de1 interés, Io que gana el banco

z: ABSIPAGOINTIBSZ/I 2;A20;B$3:B$1 ;0;0))F20 La deuda pendiente deI mes anterior menos el capitai que pagamos el presentemes. z: F1 9-D20

Ahora seleccione toda Ia segunda fila y côpiela hacia abajo, hasta Ia fila 29, dondetenemos Ia fila deI ûltimo mes de pago.

Page 71: Excel Profesional 2010

<. .'! ''r . - I&Cupfkulo II:

La Iista completa deI Calendario de PagosA B C

1617 Mo-o Aeoem W. vM*.œI 1 E1 N 2 M e s E' a I d o C a !) i ta I C tl o t.'j M e

'

1) s tl a 1 P I i !) c i p a 1 I It t e r L s D e tl tl aI l 9 z s/.1.>.œ s/.zs2.wç s/.z ze.zs s/.s..zs s/.1,a 7 ;.: vI 2 0 2 9/.1,:7 ;.*: :/.182.51 s/.1 z 1.13 $/.:1.:1 :/.:,242.48I 21 a $/.1,242.48 5/.182.54 S/.1 36.05 5/.46.:9 9/.:,196.4:22 4 S/.1,[email protected] 5/.182.64 S/.141.1 5 5/.41.49 $/.965.282 9 5 5/.965.28 5/.182.64 S/.146.44 5/.36.20 &/.818.8 :24 6 5/.8 18.83 5/.182.64 S/.1 91.94 S/.10.F1 &/.666.902 5 7 s/.666.90 5/.182.64 S/.t5 7.63 :/.25.01 :/.509.262 G 8 s/.%@9.z: :/.182.64 :/.16 ;.î4 :/.19.10 51.54s.7 227 9 s/[email protected] s/.182.6* s/.169.oe s/.A2.9s 51.%1 5.04'j28 10 S/.1 /6.04 5/.182.64 S/.176.o4 51.@.%0 S/.0.oO23 lt*al s/.> . s/.*.sœ.œ s/.>.e

Comentariosv'e Monto total pagado: S/. 1826.42W' Monto de interés ganado por el banco: sl. 326.42v' AI final del décimo mes es natural que se tenga saldo 0.

Page 72: Excel Profesional 2010

W' Tener en cuenta que si se quiere ahorrar Ios intereses que se paga al bancoel plazo a pagar debe ser en el menor ntimero de cuotas

W' Si acuerda un mayor plazo, o sea, una mayor cantidad de cuotas, si bien escierto Ia cuota mensual es menor pero Ios intereses que Ie cobra el bancoser: n m ayores.

Valor presente de inversiôn/pagos futuros'. VAValor en el momento presente de una suma a percibir en el futuro, calculado mediante Iaaplicaciôn a ia misma de una tasa de descuento que refleje los tipos de interés y elelemento de rlesgo de Ia operaciôn

Page 73: Excel Profesional 2010

Es Ia tasa de lnterés por periodo. Por elemplo, si obtiene un préstamo parauna casa con una tasa de interés anual deI 60 por ciento y efedt'la pagos2 mensuales, Ia tasa de lnterés mensual seré deI 60%/12 () 5,004. En Iafôrmula escribiria 60%/12, 5,0% o 0,05 como tasa.Es el nûmero total de periodos de pago en una anualidad. Por ejemplo, siobtiene un préstamo a quince aiios para comprar una casa y efectûa pagos' ' mensuales, el préstamo tendrâ 15*12 ((') 180) periodos. La fbrmula tendré180 como argumento nper.Es el pago efectuado en cada periodo, que no puede variar durante Iaanualidad. Generalmente el argumento pago incluye el capital y el Interés,pero no incluye ningt'ln otro arancel o impuesto. Por ejemplo, Ios pagos' . . . mensuales sobre un préstamo de $ 20.000 a cuatro asos con una tasa deinterés deI 12 por ciento para Ia compra de un automivil, son de $ 526,66 .En Ia fôrmula escribiria -526,66 como el argumento pago. Si se omite elargumento pago, deberé inclufrse el argumento W.Es el valor futuro o un saldo en efectivo que desea Iograr después deefectuar el t'lltimo pago. Si el argumento vf se omite, se asume que el valores 0 (por ejemplo, el vaior futuro de un préstamo es 0). Si desea ahorrar1G.000 $ para pagar un proyecto especial en 9 asos 1 0.000 $ seria el valorfuturo. De esta forma, es posibie hacer una estlmaciôn conservadora acierta tasa de interés y determinar Ia cantidad que deberé ahorrar cadames. S1 se omite el argumento vf. deberé incluirse el argumento pago

. 4 Es el numero 0 () 1 e indica el venclmiento de los pagos

.u' .@ @ . . . .@

0 A1 fënal de1 periodo

1 AI lnpcio deI periodo

Nh 67programu Nucienal de Informtiticcl

Page 74: Excel Profesional 2010

! .E!;- rKliiroso:L Clesce Excel profesionul

. : %

Calcular el vajor actual de un capital de S/. 2000 anuales durante 5 aqos si la tasa deinterés es de 4% efectivo anual.

Datos:

Inversi:n (CajItaI): S/. 2000Duraclbn: 5 anosTasa de Interés: 4% Anual

1 . Abrir un nuevo ilbro y realice lo indicado en el siguiente cuadro para obtener el valoractual de Ia inverslôn.

A 8 c D E r

1 Inverslôn 2*0 I =vA(Ba;Bz;-B1;c;o) I2 Perlodos 53 Tasa 4a va wxa.-s/. I -$s$z I ' -$Bsa.E'z 11 Ba-c: ,s '''- v B4 j6 , , . . , . . . . ... . . . ' '7 : < . aaa.s4 sI.8 1 M6.1S S/. 1.643.&5 V. 7.259.D S/. '==xj =Epoog9 2 2000 290.39 S/. 1,76E7.61 S/. 5,550.18 sl.:0 3 2000 222.01 S/. 1,777.99 S/. 3,772.19 s1.11 4 2000 1C:3.89 S/. 1z849.1l %l. 1:923.08 S/.12 5 2fKX1 76.92 S/. 1.923.C:4 Sl. 0.03 S/.13

VaI or futuro de i nversi ôn : VFLa funciôn VF en Microsoft Excel devuelve el valor futuro de una inversitm basândose enpagos periôdicos constantes y una tasa de interés constante.

También puede utilizarse Ia funcibn VF para calcular el valor futuro de un pago ûnicosuma. Para ello, escriba el importe de1 pago suma como el valor actual (va) y escriba elimporte de1 pago como cero. Escrlbir un cero como el lmporte de pago indica a Excel queno hay ninguna secuencia constante de pagos.

Sintaxis:VF ( tasa, nper, pago, va, tipo )

Page 75: Excel Profesional 2010

p.yilCopikulo II:

D th n d e :Tasa de interés por periodo.

' ' Nûmero total de periodos de pago de una anualidad.

Pago efectuado cada periodo', no ptlede cambiar durante Ia vida de Ia anualidad.Si se omite este argumento, debe incluir el argumento va.

Valor actual o la suma total de una serie de pagos futuros. Si va se omite, se' supone que es () (cero) y debe incluir el argumento pago.Nûmero 0 (b 1 e indica cuando vencen los pagos. Si se omlte el tipo, se suponeque es 0.

F = ?

Una persona realizadepdsitos mensualesdurante un aëo en cierlobanco Iocal, de 500Nuevos soles. Se desea 1 aterés efeetlvo: '' ': 1. ' . i @ 'saber cuânto habréacum ulado al f inal deI aqosi Ia entidad bancaria lepaga una tasa de Interésanual deI 6 % .

A = S/. 500.00

Page 76: Excel Profesional 2010

p .,2111; 1:2Mkrœoft OHice Excel profesionul

1 . En un nuevo Iillro, aplique Io siguiente'.A C E1 EE

1 Interés 0.5% 'I =vF(cl;cz;-c3;n;m I2 Nger 12? Pag o 5504 Valor Futuro 5/. 6,16 7.78 ' 11I =scsa p5 ..r I j. =B8j N: pa o Interéses ' gçetimufjhzti

() () . n n -.. I =Da*$c.$z I8 EL 5x (j .vm .-

i 2 550 2.50 193 .50 j-=7 =D8TCF.B10 3 590 5.81 1507.5111 4 590 7.54 2015.0512 5 590 10.;8 2525.131 3 6 510 12.63 3Q3 7.7514 7 590 15.19 3552.9415 8 590 17.76 4079.70lo % 590 20.35 4591.0617 10 S@3 22.96 5114.0118 11 510 25.57 5639.5313 12 500 28.20 6157.7520

N Iimero de periodos de invers iôn : N PE RN p e r ( ta s a ; p a g o : v a ; V f '! t i p o )Devuelve el nûmero de periodos de una inversiôn, donde:. ; Es la tasa de interés por periodo,' ; . . Es el pago efectuado en cada periodo

; Es el valor actual () la suma total de una serie de futuros pagos,

Es el valor actual o el saldo en efectivo que se desea Iograr después deI t'lltimopago (si se omite se toma el valor 0)

' ' Indica con 0 o 1 el vencimiento del pago. 0 (por defecto) significa que los pagosse hacen al final deI periodo, 1 que se hacen al princtpio deI perlodo.

$ : Nper en funcitm deI valor presente puede calcularse conociendo el importe de Ia rentaconstante vencida, o de Ia renta constante anticipada, que amortiza el prtxstamo.

Page 77: Excel Profesional 2010

p.yilCupikulo II:

. . u---(;):.@:: ' . . < 1 ' ' ' *

'

p

'

' < ' . . @

'

Con cuéntas cuotas trimestrales vencidas, pueden cancelarse un préstamo de S/. 5,000el mismo que devenga una tasa efectiva trimestral deI 3% y se amortizaré con pagosuniformes de S/. 1500 cada 60 d ias.

Vp=5 000Nper=?

Tasa=3: n tasa=3'i tagamrs>i.. .3pago= -1 500 pago= -1 500 pago= -1500

1 . En un nuevo Iibro escriba el sjguiente contenido:

( rk B c (1I 1 Préstamo 54v'1 c ota constante 15œ2 ua Tasa a% I =NPER(B3,-B2,B1)45 .NPER :.5644$D2

Tasa de interés por periodo de préstamo o inversi6n: TASA

Tasatnper; pago; va; vf ; tipo; estimar)

Devuelve Ia tasa de interés por periodo de una anualidad.Tipo, indica el vencimiento de Ios pagos (0 ai inicio de1 periodo. 1 ai final) yEstimaci6n es la estimacldn de Ia tasa de interés.

Page 78: Excel Profesional 2010

! .E!;- rMkrœoft Office Excel profesioncd

Elempio, para calcular Ia tasa mensual de un préstamo de S/. 5000 a dos asos conpagos mensuales de S/. 300.

A B1 préstamo 5(02 Pago Mensual 3*3 pertodo (2 apos) 24 I =TA5A(B3,-B2,B1)as Npœ a.ls

Tasa interna deI retorno de inversiôn para valores en efectivo'. TIRLa funciôn TlR devuelve Ia tasa lnterna de retorno de una serie de flujos de caja.Sdntaxis:

TlRtvalores; estimar)

. ' ' Es una matriz o referencia a celdas que contengan Ios nûmeros para Ioscuales se desea calcular Ia tasa interna de retorno.El argumento valores debe contener al menos un valor positivo y uno negativopara calcular Ia tasa interna de retorno.TIR Interpreta el orden de Ios flujos de caja siguiendo el orden deI argumentovalores. Asegûrese de introducir Ios valores de Ios pagos e Sngresos en elorden correcto.S1 un argumento matricia! o de referencia contiene texto, valores Iôgicos oceldas vacias esos valores se ignoran.

; E1 un nûmero que el usuario estima que se aproximaré al resuitado de TIR.

Microsoft Excel utiliza una técnica iterativa para el célculo de TIR.Comenzando con el argumento estimar, T(R reitera ep célculo hasta que el resultadoobtenido tenga una exactitud de 0,00001 %. Si TIR no Ilega a un resultado después de 20intentos, devuelve el valor de error #INUM!En Ia mayoria de Ios casos no necesita proporcionar el argumento estimar para ei célculode TIR. Si se omite el argumento estimar, se supondré que es 0,1 (100/0).Si TLR devuelve el valor de error #tNUMI, o si el valor no se aproxima a su estimacibn,realice un nuevo intento con un valor diferente de estimar.

Page 79: Excel Profesional 2010

p.yilCopikulo II:

Debido a que Excel calcula Ia TIR mediante un proceso de iteraclones sucesivas,opcionalmente se puede indicar un vaior aproximado al cuai estimemos que seaproximaré Ia TIR, si no se especifica nlngûn valor, Excel utilizaré 1004.

1 1 1 1 1Ciedo empresario desea abrir una fébrica de confecciones. 1 8000

2 12000La inversitm a realizar es de S/. 120 K0, cuando esté operativa la fébrica,. 3 l 8000espera que el ingreso neto para 1os prlmeros cinco aqos seré. 4 ,,4..t,8000, 12000, 18900, 24000 y 30000.

5 30000TaI como se muestra en el cronograma de datos.1 . Calcular Ia tasa interna de fetorno de su inversiôn después de 2, 3, 4 y 5 asos.

Desarrollo de proyectos con funciones financieras.Comprar frente a un LeasingEi Ieasing es también conocido como un arrendamiento financlero es decir es unaalternativa de financiamiento de mediano plazo que permite a 1os clientes de unaempresa adquirir activos fijos como inmuebles (incluso proyectos en construccibn),embarcaciones maquinarias y equipos en general vehiculos muebles y enseres'optimizando el manejo financiero y tributario de1 negocio.

Page 80: Excel Profesional 2010

! .E!;- rMkrœoft Office Excel profesioncd

Mediante esta modalidad a solicitud deI cliente Ia empresa adquiere un determinado bienya sea nacional o importado para otorgarlo como arrendamiento a cambio de pago decuotas peribdicas a un plazo determinado. AI final deI plazo el cliente tiene Ia opciôn decompra a un valor previamente acordado entre Ias partes.Cuando una persona esté decidida a adquirir un blen, se formula una pregunta'.zoué me resulta mâs conveniente comprar el bien al contado! a plazos oalquilarlo mediante la figura deI arrendamiento financiero, conocida como leasing?Segûn Ios especlalistas en la materiaLa respuesta va a depender de una serie de factores como:1 . EI valor de1 bien, Ia depreciacitm que vaya a sufrir a lo largo de 1os aqos2. EI uso que vaya a d*rsele y3. La forma como el comprador paga sus impuestos cada a5o bien como empleado ocomo trabajador independiente, entre otros.

Existen diversas formas de concretar una operaciôn de Leasjng:* Los pagos pueden ser prepagables o pospagables* Los pagos pueden ser anuaies mensuales .... EI Valor Residual puede ser conocido (VR), o igual a una de ias cuotas (VR=a). EI Valor Residual se puede pagar justo en el momento en e! que vence la ûltimamensualidad, o un mes més tarde

. Podemos trabajar a tipo fijo o a tlpo variableEn este caso vamos a trabajar con un Leasing de 8 términos anuales pos pagables atipo fijo deI 10% anual. EI Principal es de S/.100.000, ei Valor Residual es conocido(VR=10.()00) y se abona de forma conjunta con Ia tiltlma anualidad.

Page 81: Excel Profesional 2010

p.xïl&copikulo II:

Calcular Ia tasa interna de devoluciôn para un flujo de liquidez no peri6dicoFunci ôn TI R. NO . PE R

Devuelve ia T1 R de un proyecto cuyos flujos de caja netos son de diferentes magnitudes,estén distribuidos en plazas diferentes, se puede considerar flujo positivo o negativo.Determinar la tasa Interna de retorno mediante flujos de efectlvo que se producen aintervalos irregulares.

SintaxisTlR.No.pERtvaloresifechasiestimar)

. ' ' . Es una serie de flujos de caja que corresponde a un calendario de pagosdeterminado por el argumento fechas. EI prlmer pago es opcfonal ycorresponde al costo o pago en que se incurre al principio de Ia inversiôn.S! el prlmer valor es un costo o un pago debe ser un valor negativo.Todos Ios pagos sucesivos se descuentan baséndose en un afio de 365 dias.La serle de valores debe incluir al menos un valor positlvo y un valor negativo.

' . Es un calendario de fechas de pago que corresponde a Ios pagos deI flujo decaja. La primera fecha de pago indica ei principio deI calendario de pagos. Elresto de Ias fechas deben ser posteriores a ésta pero pueden aparecer encualquier orden. Las fechas deben especificarse utilizando Ia funciôn FECHA ocomo resultado de otras férmulas o funciones. Por ejemplo, utiliceFECHA(20O8',5;23) para el 23 de mayo de 2008. Pueden producirse problemassi 1as fechas se escriben como texto.

; Es un nûmero que el usuario estima que se aproximaré al resultado deTI R.NO. PER.

Cada flujo de efectivo, especlficado como un valor, se produce en una fecha de pagoprogramada.

La TIR.NO.PER se calcula por medio de un procedimiento de bûsqueda repetitivo que seinicia con una estimacibn de la TIR, especificada como una estimaciôn, y que acontinuaciôn varla de forma repetida hasta que se obtiene una TIR.NO.PER correcta. EIargumento estlmacitm es opcitmal', Excel usa 10 por ciento como valor predeterminado.

S1 hay més de una respuesta aceptable, Ia funciôn TIR.NO.PER sôlo devueke Ia primeraque obtiene. Si no obtiene ninguna respuesta, devuelve un valor de error #NUMI. Siaparece un error o el resultado no es el esperado use un valor diferente para estimacitm.

Page 82: Excel Profesional 2010

! .E!;- rKliiroso:L Clesce Excel profesionul

%

1 . Un proyecto cuya inversitm inicial es de 240,000 inicla el 15 de enero deI 201 1 , puedegenerar flujos de caja que se proyectan en la tabla siguiente.

Calcular tasas internas de devolucibn mliltiplesDeterminar Ia tasa interna de inversitm modificada medlante flujos de efectivo que seproducen a lntervalos regulares por ejemplo mensual o anualmente y considerar tantoel costo de Ia inversitm como el interés que se recibe por Ia reinversiôn de1 efectivo.

Sintaxis:TlRMtvaloresitasa financiamientoitasa reinversi6n)

Page 83: Excel Profesional 2010

p.xïlcopikulo II:

. . ' Es una serie de pagos (valores negativos) e ingresos(valores positivos) que se realizan en periodos regulares.EI argumento valores debe contener por Io menos unvalor positivo y uno negativo para poder calcular la tasaintema de retorno modificada. De Io contrario, TIRMdevuelve el valor de error #iDIV/0!

. . . . ' . Es Ia tasa de interés que se paga por el dinero utilizadoen Ios flujos de caja.

. . ' ' 4 Es Ia tasa de interés obtenida por Ios flujos de caja amedida que se reinvieden.

Cada flujo de efectivo, especificado como un vaior, se produce al final de un periodo,excepto el primer flujo de efectivo, que especifica un vator ai comienzo deI periodo.EI tlpo de interés que se paga por el dinero utilizado en Ios fiujos de efectivo se especificaen taaa financiaclôn.EI tipo de interés que se recibe por 1os tlujos de efectivo al reinvertirlos se especifica enlasa reinversiçbn.

Page 84: Excel Profesional 2010

! .E!;- rKliiroso:L Clesce Excel profesionul

. ' -<'.z . . . . i

'

. . . -

Un proyecto cuya inversibn inicial es de 240 0X y se tiene flujos de 78000, 60009.42000, 74000. 92000 cada aso, la tasa de interés deI préstamo es de 804, y Ia tasa deinterés anual de 1os beneficios reinvertidos es de 12%

Calcular TIRMA

Page 85: Excel Profesional 2010

/ * i ICupikulo II:

eo

1 . Grafique la diferencia entre el interés simple y el interès compuesto.

2. &liasta qué punto es necesario conocer Ia evoluciôn de1 indice de precios alconsumidor'?, &cbmo afecta de manera personai el poder de adquisiciôn?

3. Gréficamente indique Ias diferencias entre valor actual y valor futuro de un bien.

4. &liasta qué punto debe conocer un inversionista ios beneficios de Ia funcitm TIR?

5. &por qué es imporlante que un cliente conozca al detalle el calendario de Pagos deun préstamo que realiza?

6. &por qué a Ias instituciones financieras y bancarias Ies conviene que el cliente secomprometa a pagar un bien a mayor cantidad de cuotas mensuales?

7. Si usted compra un bien le conviene pagar en Ia menor cantidad de cuotas o ia mayorcantidad de cuotas

8. &por qué a veces resulta no comprar al contado un bien sina hacerlo meddante lafigura de1 Ieasing?

9. Calcular el valor actual de un capital de S/. 100000 anuales durante 10 aqos si iatasa de interés es de 5.2% efectlvo anual.

1 0. M111 es una entusiasta compradora, pero analiza muy bien su capacidad de crédito.Desea comprar una refrigeradora moderna a un precio de 3500 nuevos soles.Acuerda una tasa preferencial de 48% anual. Si ella no desea pagar una cuotamensual superior a 50O nuevos soles en cuantas cuotas debe comprar el bien.

1 1. Kiara tiene actualmente 10 0X nuevos soies y desea saber si dentro de 1 aqo podrécomprar una moto que por estimaciones tendré un precio de 9000 nuevos soles. Latasa de interés promedio es de 4.5% mensual.

12. Ciedo empresario desea formar una empresa de metalmecénica. Tiene en cartera500 00O nuevos soles para invertir. De acuerdo a Ios estudios de mercado que harealizado y sus proyecciones empresariaies espera que el Ingreso neto para 1osprimeros seis afios serén Ios slguientes: 10009, 14000, 21009. 28000 y 40000. Seplde calcular Ia TIR después de 2, 3, 4, 5 y 6 aqos.

Page 86: Excel Profesional 2010

p X;rKlicroso:k Clesce Excel profesionul

80 programa Nacionol de Informdtica

Page 87: Excel Profesional 2010

it21/ ' t ..bAnélisis de Datœ III

Capîtulo

@ Anélisis estadistico.* Uso de cuadros de histogramas.@ Uso de Solver.1 Anélisis de datos con estadistica descriptiva.

Page 88: Excel Profesional 2010

,.:51Mkrœofk Office Excel profesionul

HERRAMIENTAS DE ANALISIS ESTADISTICO''La Estadistica estudia métodos cientificos para recoger, organizar, resumir y analfzardatos, asi como para sacar conclusiones vélidas y tomar decisiones razonables basadasen taI anéllsis-

Murray R. Spiegel

Estudio estadistico

1 . Se realizan observaciones aleatorias de un fenômeno que no se puede predecircon anterioridad.

2. Se realiza un muestreo (se selecciona una muestra representativa de lapoblaciôn).

3. Se recolectan datos de cada elemento muestreado (por qemplo a través de uncuestionario).

4. EI objetivo final es inferir estadisticamente algo sobre Ia poblaclôn, deseamosconciuir aigo sobre aiguna caracteristica de la poblaciôn en la que se realiza elestudio.

Poblacién vs Muestra

* Poblaci6n: es el conlunto de todas Ias mediciones de interés al experimentador.Su tamaso se denota con la Ietra N.

* Muestra: es un subconjunto de la poblaciôn. Generalmente esta seleccithn sehace aleatoriamente, cada individuo en Ia muestra tuvo Ia mlsma posibilidad dehaber sido seleccionado. Su tamaso se denota con Ia Ietra n.

Dispersién

Es importante para conocer si los valores en general estén cerca o alejados de estosvalores centrales.Segùn se aprecia en el gr*fico hay una serie de valores que se encuentran en la paltecentral pero otros se aiejan se 'Dispersan' y entonces es importante medir que tantoestén separados unos de otros.

LaS Princlpales medidas de O œd ispersién SOn : K'@ Rango . . *

'

@ Desviacibn Media .I .* Varianza *@ Desviacibn Esténdar@ Coeficiente de Variaclôn * .

Page 89: Excel Profesional 2010

p.yilQzpikulo IIIC

RangoEs Ia diferencia que existe entre el valor més grande y el mâs pequeso.

ranm = tnax - nlin

Desviaci6n Media

Es el promedio de Ias distancias absoiutas de Ios datos a su media aritmética.NC '-V 12

2 = 1=1CN

y '. Media aritmétlcaEn Excel. se tiene Ia funciôn DESVPROM

Desviaci6n Esténdar

@ Mide la variacitm de 1os datos en términos absolutos.* Se interpreta como la distancla promedio de Ios datos a su media aritmética.* Se expresa en Ias mismas unidades que Ias empleadas en ios datos.@ Se calcula tomando ia raiz cuadrada positiva de ia varianza.

Page 90: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Desviacidn Esténdar Poblacional :

2J= TJ

En Excel: funcibn DESVESTP

Desviacidn Estândar Muestral:S = 52

* En Excel: funcibn DESVEST

Coeficiente de Variaci6n

* Mide Ia variacitm relativa de Ia variable con respecto a su promedio.* Cuando deseamos comparar Ia dispersiôn de dos distribuciones, necesitamosmedir ia magnitud de Ia desviacibn esténdar en relaciôn con Ia magnitud de Iamedia

@ Expresa a Ia variacitm de Ios datos como porcentaje de su promedio.SCV =X

Tendencia Iineal de ajuste perfecto automâticamente.En una serie lineal, el lncremento, o diferencia entre el primer valor de Ia serie y elsiguiente. se agrega al valor inicial y. a continuaci6n, a cada uno de 1os vaioressiguientes.

Selecciôn inicial Serie Iineal extendida

1, 2 3, 4, 5

1 r 4 8, 1 2, 1 6

50! 45 40, 35

Page 91: Excel Profesional 2010

p.yilQzpikulo IIIC

Para rellenar una serie para una tendencia lineal de ajuste perfecto, haga Io siguiente:. Seleccione al menos dos celdas que contengan Ios valores de inicio de Iatendencia.

. Si desea aumentar Ia precisidn de Ias series de tendencia. seleccione mésvalores de Iniclo.

. Arrastre el controlador de relleno en ia direccitm que desea rellenar con vaiorescreclentes o decrecientes.

Por ejemplo, si Ios valores de iniclo seleccionados de Ias celdas C1 :E1 son 2, 6 y 10.arrastre el controlador de relleno hacia la derecha para rellenar con valores de tendenciacrecientes, o arréstrelo hacia Ia izquierda para rellenar con valores decrecientes.

C D I E I

1 .1

B c E) I E2 w.s...o 10

=1+ -

Tendencia geométrica de forma automâtica.En una serle geométrica, el valor inicial se multlplica por el incremento para obtener elsiguiente valor en Ia serie. EI resultado y Ios siguientes resultados se multiplican acontinuaciôn por el incremento.

Selecciôn inilial Serie go rrtétdca extendida

4, 8, 16, 32

9, 27, 8 1 , 243

125, 625. 3125

Para rellenar una serie para una tendencia geométrica haga Io siguiente:

1 . Seleccione al menos dos celdas que contengan Ios valores de inicio de Ia tendencia.

Si desea aumentar Ia precisi6n de Ias series de tendencia, seleccione més valores dein icio.

Page 92: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

2. Mantenga presionado el botôn derecho deI mouae' arrastre el controlador de rellenoen la direcci6n que desea rellenar con valores crecientes o decrecientes, Iibere elbottm y, a continuacibn, haga clic en Tendencla geométrica en el menû contextual

Por ejemplo, si Ios valores de inicio seleccionados de Ias celdas F1 '.H 1 son 2, 4 y 8,arrastre el controlador de relieno hacia Ia derecha para rellenar con valores detendencia crecientes, o arréstrelo hacia la izquierda para rellenar con valoresdecrecientes.

Tendencia Iineal o geométrica de forma manual.AI hacer clic en el comando Serles puede controlar manualmente c6mo se crea unatendencia lineal o una tendencia geométrica y usar el teclado para insertar 1os valores.En una serie Iineal, Ios valores iniciales se aplican al algoritmo de tendencia lineal:y z: mx + b para generar ia serle.En una serie geométrica, Ios valores iniciales se aplican al algoritmo de curvaexponencial: yrb*mAx para generar Ia serie.En ambos casos se omite el incremento. La serie creada es equivalente a Ios valoresdevueltos por Ias funciones TENDENCIA o CRECIMIENTO.Para rellenar valores manualmente haga Io siguiente:Seleccione Ia celda donde desea comenzar Ia serie. La celda debe contener ei prlmervalor de Ia serie.AI hacer clic en el comando Serie, Ia serie resultante reemplaza Ios vaioresseleccionados originalmente. S1 desea guardar ios valores originales, côpielos en una filao columna diferentes y a continuaciôn selecclone Ios valores copiados para crear Iaserie.En el grupo Modificar de Ia ficha Inicio. haga clic en Rellenar y, a continuaci6n, enSerles.Siga uno de Ios procedimientos siguientes:* Para rellenar Ia serie a Io Iargo de Ia hoja de célculo, haga clic en Columnas.* Para rellenar Ia serie a Io ancho de la hoja de célculo, haga clic en Filas.

Page 93: Excel Profesional 2010

p.yilQzpikulo 111:

En el cuadro lncremento escriba el valor en que desea incrementar Ia serie.. 4 4 > o . Resultado deI incremento

' J El incremento se agrega al primer valor de inicio y. acontinuacidn se agrega a cada uno de Ios valores siguientes.

' 4 ' . El valor inicial se multiplica por el incremento. EI resultado y Iossiguientes resultados se multiplican a continuaciôn por elùncremento.

En Tipo, haga clic en Lineal o Geométrica.En el cuadro Limkte escriba el valor en que desea detener Ia serie.

Page 94: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Los datos finales son Ios siguientes

J K t I M N I O .2 6 10 14 18

Page 95: Excel Profesional 2010

p.yilcupikulo IIIC

Agregar una linea de tendencia a un grâfico.Cuando dispone de una serie de datos para 1os desea prever una tendencia puede crear.! 'una Iinea de tendencia ' en un gréfico. Por ejemplo, si tiene un gr*fico de Excel quemuestra 1os datos de ventas de ios ûltimos meses deI a5o puede agregar una Iinea detendencia al gréfico que muestre Ia tendencla general de Ias ventas (creciente,decreciente o uniforme) o que muestre Ia tendencia prevista para Ias meses venideros.Realice 10 siguiente. F1

l23 (E iudad octubre Noviembre Diciembre

1 . En un nuevo Iibro, 4 Tumbes 80 69 14t)escriba Ios siguientes 5 Plura l50 120 190datos:6 Llma 210 180 2207 1ca 120 IX 140

2. Prepare el siguiente gréfico de columnas

250

Page 96: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

4. Haga clic en Ia serie de datos de color verde. Diciembre. para aplicar Ia Iinea detendencia o Ia media mtlvil 2

Page 97: Excel Profesional 2010

x r'lw.mlQzpikulo IIIC

Se muestra Ia Iinea de tendencia Iineal.

Page 98: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

7. Seleccione ias opciones de Iinea de tendencia, ;as Iineas y 1os efectos que desee.* S1 se selecciona Polinimica escriba en el cuadro Orden el valor potencialmés aito de la variable independiente.

@ S1 selecciona Media m6vil escriba en el cuadro Periodo el nûmero deperiodos que se van a utillzar para calcular Ia media môvil.

La empresa 'E1 Bebé Feliz'' Ie soliclta realizar una proyeccibn de ventas de1 primersemestre deI prôximo a5o Ie da Ia siguiente informaclôn de Ias ventas deI ûltimose m estre.

A B js Enero1 11 pe brero

a EI Bebé Fel-lz 12 Mar'o1 3 Abri I3 ' . d . d 14 Mayo4 Jullo 12(m 1 5 Junlo5 Agos'to 1320ô septiembre 1450 v tas deIe n7 Odubre 1520 ultimo semestre Meses de8 N ovi embre 1610 Ventas aî) Diciembre 1930 tarproyec

Page 99: Excel Profesional 2010

p.xïl&Qzpikulo IIIC

Se muestra 1as cantidades de Ia tendencia de Ias ventas para el priximo prlmersemestre.Se han dejado de Iados Ios declmales por cuanto Ias unidades de ventas son enteras.Proyectar Valores

Funciones'. PRONOSTICO, TENDENCIA, CRECIMIENTO,ESTIMACION.LINEAL

Funcién PRONOSTICOPronôstico (forescasting) esconsiderado como un método o técnica .para estimar vaiores futuros encualquier campo de Ia ciencla. Lainterpolaciôn nos permite calcular el *vajor de una funcidn de formaaproximada entre dos puntosconocidos IX e Y1. EI éxito de !as 'grandes medianas o pequefiasempresas depende de prever IosProbables panoramas futuros. -' -'-'...'' S '-- =' ' .A

x .-.ZCalcula o pronostica un valor futuro através de Ios valores existentes. Lapredicciôn deI valor es un valor y tenlendo en cuenta un valor ''X''. Los valores conocidosson valores ''X'' y vaiores ''Y'' existentes, y el nuevo valor se pronostica utilizandoregreslbn Iineal. Esta funciôn se puede utilizar para reaiizar previsiones de ventas,estabiecer requisitos de inventario o tendencias de Ios consumidores.

La sintaxis es:PRONOSTICO(x;conocldo yiconocido x),Donde:X es el punto de datos cuyo valor desea predecir.Conocido y es la matriz f) rango de datos dependientes.Conocido x es la matrlz o rango de datos independientes.

4 28 l4a)En nuestro qemplo tenemos una tabla 5 26 2% .' COnOCId0 Vqu e nnu estra cantid ades vendid as a cad a 6 24 4490nivel d e precios: ; 22 5100

8 20 5*30: 18 619010 16 s<e

Conoodo x *- Nprogrannu Nucienal de Inharn iticu 93

Page 100: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Los valores de ''preclos'' corresponden al argumento Conocido X', 1os valores de''cantidad'' corresponden a Conocido y. -Para calcular Ia cantidad prevista si el precio fuera 14, aplicamos Ia siguiente f6rmula:IPRONOSTICOIAI 1rB4:B1 0,A4:A1 0)Jj z . p . . I . I4 28 14905 26 26506 24 44907 22 5 1@0S 20 5690 =P R O N O STIC O(A1l;B4:Bl0;A4:A10)9 18 619010 16 649011 14 7BZ9121214

Para elcaso d e u n precio d e 1415(Valorx)16

También podemos usar ia técnica sugerida, averiguando la ecuaci:n de Ia Iinea detendencia (trendline) en el grâfico, y Iuego aplicândola como fôrmula en Ia hoja decélculo.

Para ver Ia ecuacibn de Ia linea de tendencla, creamos el gréfico a parlir de Ia tabia.

Cantidad70006000 '5000

40003000 '

Page 101: Excel Profesional 2010

p.yilQzpikulo IIIC

Luego abrimos el menû ''agregar Iinea de tendencia'', apretando el botôn derecho deImouse sobre Ia curva deI gréfico.

sene fantldad '' d* ' X' '

50(r

40(X)30CEl

20œ10(r

CC

Page 102: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Finalmente insedamos Ia funciôn de Ia Iinea de tendencia como fôrmula en una celda deIa hqa de célculo.

Cantidad80007000

60J05000

$*

Voz:tpoX atwcantidad

Lineal (Cantidad)

y = -414.2x + 13629 '.ê:

En nuestro ejem pIo anotamos: 151-414.29*81 1+13629, en Ia celda ,6B17, donde Ia celda B 16 contieneel vaior para el cual queremos 17pronosticar el resultado.

Funcidn TENDENCIASe emplea para proyectar valores que se ajustan a una linea de tendencia rectaEsta funcitm puede extrapolar valores futuros de ''Y'' que extiendan una Iinea recta quedescriba mejor Ios datos existentes.Pueden devolver también sôlo valores de ''Y'' a partir de Ios valores de ''X'' conocidospara la Iinea.Para trazar una Iinea que describa Ios datos existentes, utilice Ios valores existentes de''X'' e ''Y'' devueltos por la funcibn TENDENCIA.

SintaxisTENDENclAtconocido yiconocido xinueva matriz xiconstante)

14=-414.29,816+13629

Page 103: Excel Profesional 2010

p.yilCupikulo 111:

conocido y ES 61 Onjunto de Valores de ''Y'' que se conocen en la relacién- y = mx4.bEs un conjunto opcional de valores ''X'' que se conocen en laC o no ci do x- relaciôn y = mx+b

Nueva matriz x son Ios nuevos valores de ''X'' para 1os cuales desea queTENDUNCIA d-evuelva Ios vaiores de y correspondlentes.Constante. Es un valor lbgico que especifica si se ha de hacer que Ia constante ''b'', seaigual a 0 .

A B c !1 .' a i .' . I I c) jou ' Fi 1 e r'. .'1 e r h c i étVeamos, tenemos Ios datos referenciales . . . . ' .

de un periodo de demanda de un produdo: 2 ' . I . . ' lSe desea determlnar Ia tendencia para el 3 JZIIt7 1 45periodo. Enero a Junio .1 AgoGto 2 45

5 septlembre 3 509 Enero 76 Odubre 4 M1C rebrero 8 7 Novlembre 5 55

11 K4ar2o 9 8 Dlclembre 6 7212 Abrll 1013 Mayo 11i3 J u n I o 12

Page 104: Excel Profesional 2010

Funcidn CRECIMIENTOLa funcitm de crecimiento (conocido-y, conocido x, nueva matriz x, constante) se utliizapara realizar un anélisjs de regresiôn donde se i-esea ajuiiar una-curva exponencial. Seutiliza un criterio de minimos cuadrados y crecimiento intenta encontrar el mejor ajuste enese criterio.Conocido.y representan datos de Ia variablendependiente'' y representan datosconocido x en uno o més ''variables Independientes''.

SintaxisCRECIMIENTO(conocldo yiconocido x; nueva matriz xiconstante)

Es ei conjunto de valores de y que se conocen en Ia relaciônConocido y- y = mx+b

Es un conjunto opcional de valores ''X'' que se conocen en laConocido x- relaclbn y = mx+b

Son los nuevos valores de ''X'' para Ios cuales desea queNueva matrlz x- - CRECIMIENTO devuelva 1os valores de y correspondientes.

Es un valor Ibgico que especifica si se ha de hacer que IaConstantectmstante b sea igual a 0.

Page 105: Excel Profesional 2010

Funcién ESTIMACION.LIN EALCalcula Ias estadisticas de una Iinea utilizando el método de ''minimos de cuadradosn3para calcular Ia Iinea recta que mejor se ajuste a los datos y devuelve una matriz quedescrlbe la Iinea. Debido a que esta funcibn devuelve una matriz de valores, debe serintroducida como una fbrmula de matrices.La ecuaciôn para Ia linea es:

y = mx + b thy = mlxl + m2x2 +... + b (s1 hay varios rangos de valores'' X')

Donde el valor ''Y'' dependiente es funcitm de Ios vajores ''X' independientes. Los valores''m'' son coeficientes que corresponden a cada valor ''X'' y ''b' es un valor constante.Observe que ''Y'' '' X'' y ''m'' pueden ser vectores.

Page 106: Excel Profesional 2010

,.:51Mkrœofk Office Excel profesioncd

La matriz que devuelve ESTIMACION.LINEAL es (mn, mn-l ,....m 1, W.ESTIMACION.LINEAL también puede devolver estadisticas de regresiôn adicitmales.

Sdntaxis:ESTIMACION.LINEALICOnOCiCIO ylconocido xpconstante,estadistica)

Es el conjunto de valores de Y que se conocen en Ia reiacitmConocido y- y = mx+b

Conocide x Es un conjunto opclonal de valores X en Ia relaciôn y = mx+b.Constante Es un valor Iôgico que especifica si se ha de forzar a Ia constante b a

ser igual a 0.

Estadistica Es un valor lôgico que especitlca si se deberén devoiver estadisticasde regresitm adicionales.

Page 107: Excel Profesional 2010

Ahora, debemos calcuiar el valor de b:Para ello, seleccione Ias dos celdas: D5:E5, pulse la tecla (F21 y iuego, en forma conjunta1as teclas: IctrlllshiftllEnterl.

Page 108: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

Asi, Ia ecuaciôn: y= mx 'FbSeré y= 489

Page 109: Excel Profesional 2010
Page 110: Excel Profesional 2010

!2t- 11MiirœO 0:5ce Excel pnfesionul

2000y = 299.8x + 348.0<*1500

*10CO %;

500

00.0 1.0 2.0 3.0 4.0 5.0

* Costos fqos Lin eallcostos fijos)

Realizar anâlisis de regresitm (utilizar complemento Herramientas paraanâlisis)Para realtzar un anélisis de regresiôn completo tenemos que seleccionar elmodelo adecuado y ajustarlo. Las herramientas para ayudarnos a seleccionar elmodelo son:1 ) Representaciôn gràfica de Ios datos (en regresi6n simple) y de Iosresiduos

2) Ia estimaciôn curvilinea para determinar Ia forma de Ia relaciôn.

E1 objeto de un anélisis de regresibn es investigar Ia relacibn estadistlca que existe entreuna variable dependlente ( Y) y una o més variables independtentes (XJ, Xs Xa . . .) Parapoder realizar esta investigacitin, se debe postular una relacibn funcional entre Iasvariables. Debido a su simpiicidad analitica, Ia forma funcional que més se utiliza en Iapréctica es la relaciôn Iineal. Cuando solo existe una variable independiente, esto sereduce a una Iinea recta:y= mx d'bf = bv I % .Y'Donde Ios coeficientes b y m son parémetros que definen Ia posiciôn e inclinacibn de Iarecta .EI parémetro b, conocido como Ia ''ordenada en el origen,'' nos indica cuénto es Ycuando X = 0. EI parémetro m, conocido como la 'pendiente,'' nos indica cuénto aumentaY por cada aumento de una unidad en X. Nuestro problema consiste en obtenerestimaciones de estos coeficlentes a partlr de una muestra de observaciones sobre Iasvariables Y y X. En el anélisls de regresitm, estas estlmaciones se obtienen por medio deImétodo de minlmos cuadrados

Page 111: Excel Profesional 2010

p.yilQzpikulo 111:

Como ejemplo, consideremos Ias clfras deI Cuadro 1

Muestra datos mensuaies de producciôn y costos de operaclbn de cierta empresa a detransporte de pasajeros por carretera durante Ios aqos 1991.2010 (Ia producciôn se mideen términos de miles de millas-vehicuio recorridas por mes, y Ios costos se miden entbrminos de miles de dblares por mes).Para poder visualizar el grado de relacibn que existe entre Ias variables, como primerpaso en el anélisis es conveniente elaborar un dlagrama de J/apera/ön que es unarepresentaciôn en un sistema de coordenadas cartesianas de Ios datos numéricosobservados.En el diagrama resultante, en el eje X se miden Ias millas.vehiculo recorridas, y en el ejeY se mide el costo de operaciôn mensual. Cada punto en el diagrama muestra Ia parejade datos (millas-vehiculo y costos de operaclbn) que corresponde a un mesdeterminado. Como era de esperarse, existe una relaclnn positlva entre estas variables:una mayor cantidad de millas-vehlculo recorridas corresponde un mayor nivel de costosde operaciôn.

Page 112: Excel Profesional 2010

1lZ- ZIMkrœofk Office Excel profesionul

D 1 a g ra m a d e D -1 s p e r s 1 o' n

42x

40(x)

..'#<.X as6b

avt7p

'ztkl tli . r:t

.

.';%

z? filj '; .i

. .

g.

:

tq.

%

,

.

gy

.0 '

2C17

%L

.4jp

vï .j;

Ebx,N

Por otro lado. también se aprecla por qué este grâfico se denomina un diagrama de''dispersiônn: no existe una relaciôn mateméticamente exacta entre Ias variables, ya queno toda Ia variacitm en el costo de operacitin puede ser explicada por Ia varkaciôn en 1asmillas-vehicujo.Sl entre estas variables existiera una relacibn Iineal perfecta, entonces todos ios puntoscaerian a Io Iargo de Ia recla c/e regresl6n que también ha sido trazada y que muestra larelaciôn ''promedio' que existe entre Ias dos variables.En Ia préctica, se observa que Ia mayoria de Ios puntos no caen diredamente sobre Iarecta, sino que estén ''dispersos'' en torno a ella. Esta dispersiôn representa Ia variaciônen F que no puede atrlbuirse a Ia variacibn en X.

Cilculo de VARIANZA.La varianza es Ia media aritmética deI cuadrado de las desviaciones respecto a lamedia de una distribuciôn estadistica.Un elemplo senciilo (verfôrmulas pàglna 2 1)Calcular IR urianza de la distribuctbn:

9, 3 . 8 . 8, 9. 8. 9. 1 8

Page 113: Excel Profesional 2010

<. .'! ''r . - I&Cupikulo 111:

+ 3 ( ) L. + 3 . + .'l%- = = .3J

xi ii xi ' ii ,.1 ' fi110, 20) 15 l 15 225120, 30) 25 8 200 5 000(30,40) 35 10 350 12 250E40, 50) 45 9 405 lB 225I5e, 60 55 8 440 24 200(60,70) 65 4 260 16 900170, 1IB) 75 2 150 l l 250

42 1 820 88 050

Page 114: Excel Profesional 2010

!2t- 11hlicrosofL Clesce Excel profesionul

E'percicio'.En nuevo Ilbro, escriba 1os datos dados en Ia tabla de Ia hoja anterior y aplicando Iafunciôn varianza, realice el célculo respectivo.Compérelos con 1os valores hallados manualmente.

Definicibn y resoluci6n de problemas con SOLVERGeneralidades sobre SOLVERCuando en Ias empresas Ios recursos son escasos se tlene que emplear 1asherramientas de software que ayude a encontrar Ia mejor manera de asignar Iosrecursos escasos. Estos recursos escasos pueden ser

* Materias primas,* EI tiempo deI personal.* EI dinero,* Los productos a vender o

Cualquier otra cosa en cantidades Iimltadas.La ''mejor'' o Ia solucitm Jptima pueden significar:

*' La maximizaciôn de beneficios,* Minlmizar Ios costes, o* La consecuci6n de Ia mejor calidad posible.Una infinlta variedad de problemas que pueden ser abordados de esta manera,pero aqui hay aigunos ejemplos tipicos:

Finanzas e Inversi6n

. Gestlôn de capital de trabajo consiste en la asignaciôn de dinero para diferentespropôsitos (cuentas por cobrar, inventarios, etc.) a través de varios periodos detiempo para maximizar Ios ingresos por intereses.

* Presupuesto de capital impiica la asignacbn de fondos a Ios proyectos queiniclalmente se desembolsa efectivo, pero més tarde generan o devuelven elefectivo para maximizar Ios recursos de Ia empresa y pueda devolver el capitalinicial.

*. Optimizaci6n de Ia cartera . la creaciôn de ''carteras eficientes'' - conslste en laasignaciôn de fondos para acciones o bonos para maxlmizar Ia rentabilidad paraun nivel dado de riesgo, o para reducir al minimo Ios riesgos para Iograr elobjetivo de una tasa de retorno.

Page 115: Excel Profesional 2010

p.yilQzpikulo IIIC

Manufactura

* La mezcla (de productos derivados de1 petrôleo, minerales, alimentos paraanimales, etc.) implica la aslgnaciôn y la combinaciôn de materias primas dediferentes tipos y grados, para satisfacer la demanda y minimizar Ios costos.Ejemplo, en el caso de la crianza de pollos, cual es Ia mejor mezcla de maiz,alimento balanceado, vitaminas, hormonas con el fin de minimizar costos yoptimlzar el crecimiento de Ios pollos en el menor tiempo posible y con un gradode aceptaci6n de parte deI pûblico.

* Acciones de corte (para madera. papel, etc.) imppica la asignacibn de espacio enhcjas de gran tamaso o Ias maderas que se cortan en trozos més pequesos parasatisfacer Ia demanda y reducir al minimo Ios residuos. Ejemplo, se tiene unaplancha de trkplay y se desea hacer piecitas para un adorno, entonces, se debede obtener el méximo de piecjtas con Ia menor cantidad de desperdicio.

. Programacl6n de todo desde ios trabajadores a 1os vehicuios y salas dereunlones implica Ia asignaciôn de capacidad de Ias distintas tareas con el fin desatisfacer Ia demanda y reducir al minimo Ios costes globales. Ejemplo, en el casode rutas de servicio de transporte interprovlncial, se debe asignar tiempos a cadactmductor con el fIn de minimizar el cansancio de ellos y optimizar Ia mayorcantidad de rutas por atender.

Para empezar a utlllzar un programa de optimizaciôn, debe construir un modelo en Iaque se especifique:

. Los recursos que se utilizan, utilizando Ias varlables de decisi6nVariables independientes, generalmente se representan mediante Xs

*. Los Iimites en el uso de recursos, Ilamado restricciones , y*' La medida para optimizar, Iiamada la funciôn objetivo.

Variables de Decisiôn

Comience con 1as vardables de decislôn. Por Io general, medir Ia cantidad de recursos.como el dinero que se asignaré a algûn propôsito o el nivel de alguna actividad, como elntlmero de productos a fabricar, el nimero de piezas a obtener de una plancha, elnûmero de kilos o Iitros de un producto quimico que se mezcla, etc.

Ejemplo'. S1 una empresa va a enviar 1os adiculos procedentes de por ejemplo tresdiferentes fébricas a 5 diferentes almacenes, hay 3 x 5 = 15 rutas diferentes por 1as que1os productos podrian ser enviados. Por io tanto, es posible que se tengan 15 varlables,cada una de Ias cuales mlde el nûmero de productos enviados a lo Iargo de esa rutaOtro caso, tamblén puede ser cuando se tiene cuatro tipos de productos diferentes, y esposible que desee un plan de envios para cada uno en Ios prôximos 6 meses durantecada semana. Asi que esto podria dar Iugar a 4 x 4 x 6 = 64 variables. Esto ilustra c6moun modelo puede llegar a ser grande con bastante rapidez. Parte de Ia técnica deImodelado es decidir qué nivel de detaile es el que reaimente se neceslta.

Page 116: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Funciin objetivo

Una vez que hemos definido Ias variables de decisiôn. el siguiente paso es definir elobjetivo. que normalmente es una funcibn que depende de Ias variables. Por ejemplo,supongamos que estaban planeando el nûmero de unidades de fabricacién de tresproductos: MP4, MP3 y MP5. Su objetivo podrla ser la de maximizar la ganancia, por Ioque suponemos que cada MP4 produce una ganancia de $ 25 cada MP3 $15, y cadaMP5 de 35 dtilares. Entonces, la funciôn objetivo podria ser:

MP3 * 15 + MP4 * 25 + MP5 * 35

En una hoja de célculo dispondremos el registro de Ia cantidad de MP3, MP4 y MP5 enIas celdas B1 , C1 y D 1 respectivamente, Ia fbrmula seria:

=15* B1 + 25 * C1 + 35 * D1

Con esto se daria por termknado el asunto, esto es, si el modelo no requiere nlngunarestriccibn. Pero sl se solicitô un programa de solucibn para minimizar esta funciônobjetivo. se deben indicar ias restricciones de1 modelo.En Ia mayoria de 1os modelos, sin embargo, Ias Iimitaciones desempesan un papelimportante para determinar qué valores pueden ser asumldos por Ias variables dedecisiôn, y qué tipo de valor objetivo se puede alcanzar.

Definir restricciones

Las restricciones reflejan Ios Iimites deI mundo real sobre Ia capacidad de producciôn, Iademanda dei mercado, Ios fondos disponibles, y asi sucesivamente. Para deflnir unarestricciôn, primero debe calcular un valor basado en Ias variables de decisibn. Luego secoloca un Iimite (<= = th > =) en este valor calculado.Restricciones generales. Por ejemplo, si el rango D6:D10 contiene el porcentaje defondos para ser invertldos en cada una de 5 acciones se podria usar para calcular (:)5 =SUMA (D6: D10), y Iuego definir una restriccidn (:25 = 1 a decir que Ios porcentajesasignados deben sumar el 100%.

Lîmites en Ias variables. Por supuesto, tamblên puede ponef un Iimite directamente enuna variable de decislôn, taies como F4 <= 30. Los limites Superior e inferior de Iasvariables son manejados de manera efùciente por Soiver y son muy ûtiles en muchosproblemas.

Page 117: Excel Profesional 2010

p.yilQzpikulo IIIC

Interpretaciôn de Ias soluclones

Una solucitm (conjunto de valores que toman Ias variables de decisibn) para que todaslas restricciones en e! modelo de Solver se cumplan se llama una soluci6n factible.Tratar de encontrar una soluci6n viable, y mejorarla mediante Ia bflsgueda de otrasoluciôn viabie que aumenta el valor de Ia funciôn objetivo.

Una soluciôn ôptima es una soluciôn viable, donde Ia funci6n objetivo alcanza un valorméximo valor minlmo.

Una solucidn ôptima a nivel global es una donde no hay otras soluciones factibles quemejoren Ios valores de Ia funcitm objetivo.Una soluci6n öptima a nivel Iocal es una donde no hay otras soluciones posibles ''en Iavecindad'' que mejoren Ios valores de Ia funciôn objetivo - se puede imaginar esto comoun punto en Ia parte superior de un ''plco'' o en Ia parte inferior de un ''vaIIe'', clue sepuede farmar por Ia funcitm objetivo y I o restricciones.EI Solver se ha dlsesado para encontrar soluciones ôptimas - idealmente el 6ptimo global- pero esto no siempre es posible. En muchos casos s1n embargo se puede quedarsatisfecho por encontrar una buena solucidn . una que es mejor que Ia solucibn que laque se esté utilizando ahora.

Desplazamiento por soluciones de prueba en Solver

Def i n i r un problema .La empresa ELECTRYNICA PERU fàbrica tres productos. MP3, MP4 y MP5. Cadaproducto es ensamblado con Ias piezas que se cuentan en el almacén. Hay cinco tiposde componentes'. cubiedas, botones, circuitos integrados, pantalla LCD y Puertos deentrada. Su objetivo es encontrar Ia combinaciôn de componentes que maximizan Iasutilidades, teniendo en cuenta el inventario de productos en el almacén.

A partir de esta descripcitm, podemos ver que la variables de decisi6n son el nûmerode productos que se van a fabricar, y Ia funcidn objetivo seré maximizar Ia utilidad.Suponga que usted puede vender MP3 con una ganancia bruta de $ 15 cada uno, MP4con una ganancia de $ 25 cada uno, y Ios MP5 de $ 35 cada uno.

Para ensamblar un MP3, funda una cublerta, un circuito integrado, una pantalla LCD, 3botones y 2 puertos de entrada. Para que un MP4, se necesita una cubierta, dos circuitosintegrados, una pantalla LCD, 4 botones y un puerto de entrada. Y para construir unMP5: una cubierta, una pantalla LCD, 4 botones, un circuito integrado y 3 puertos deentrada.

Page 118: Excel Profesional 2010

,.:51Mkrœofk Office Excel profesioncd

Resumiendo

Circuito Pantalla Puertos deProducto Cubierta Botonesinte rado LCD entradaM P3 1 1 1 3 2MP4 1 2 1 4 1M F75 1 1 1 4 3

Las piezas con que se cuentan son: 340 cubiedas. 1280 botones, 440 circuitosintegrados, 320 pantallas LCD y 680 puerlos de entrada. Esto define Ias limitaciones deeste problema: Raztm por Ia cual se pueden fabricar solamente un nùmero Iimitado deroductos con Ias arles ue se tienen en almacén.

Clrcuito Pantalla Puertos deComponente Cubierta Botonesinte rado LCD entradaDIs onibilidad 340 440 320 1 280 680

Escribir Ias férmulas

Realicemos una representaciôn de 1os componentes:

Simboio Componente

X1 M P3

Xa M P4

Xa M P5

La ut1 Ildad total seré :

Maximlzar Utilidad 15 X1 *' 25 Xa + 35 X3

Pero el ensamble de cada producto reguiere un cierto nûmero de piezas de cada tlpo.Por ejemplo, cada uno requiere una cubierta, una pantalla LCD y el resto. EI nûmero depiezas utilizadas depende de Ia combinaciôn de Ios componentes de Ios productos aensamblar (e1 Iado izquierdo de cada restricciôn), y tenemos un nûmero limitado depiezas de cada tipo en almacén (ia restricciôn correspondiente al Iado derechol:Estas serian :

1 X! + 1 X2 + 1 Xa <= 340 (cubiedas)3 X1 + 4 Xz + 4 Xa <= 1280 (Botones)1 X1 + 2 X2 + 1 Xa <= 440 (circultos integrados)1 Xj + 1 X2 + 1 Xa <= 320 (Pantallas LCD)2 X1 + 1 Xz + 3 Xa <= 680 (Puertos de entrada)La distribucibn en Ia hoja de célculo serja como la siguiente'.

' 112 programa Nacionol de Informdtica

Page 119: Excel Profesional 2010

Entrar al programa

1 . Clic en la ficha Archivo.2. Clic en el botbn opciones.3. Seleccione Iuego, complementos.4. Clic en el botôn ir a'5. Se muestra el siguiente cuadro dediélogo.

6. Clic en Solver.7. Luego, clic en el botôn de comandoIAceptaq.

Page 120: Excel Profesional 2010

Aplicando e, Solver:1 . En el cuadro de diélogo que aparezca'.* Como Celda objetivo seleccione D16.. En Para activa el botôn de opcibn Max.* En Cambiando las celdas, haz clic en el cuadro de texto y Iuego selecciona elrango de celdas 1:)6 : F6.

* En Sujetas a Ias sigulentes restricciones pulsa el bot6n Agregar.* En el siguiente cuadro de diélogo, en Referencia de Ia celda, selecciona el rangoC8:C 12, en Ia lista desplegable, selecciona el signo <r, en Restricciônselecciona el rango B8:B12, Iuego ciic en Aceptar.

Page 121: Excel Profesional 2010

p.yilQzpikulo IIIC

Soluciôn entera:Como Ios productos a producir deben ser unidades fisica enteras se buscaré unasoluciôn en cantidades enteras. La solucibn completa

Page 122: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

Page 123: Excel Profesional 2010

p.yilQzpikulo IIIC

Fijarse que al maximizar Ias utilidades solo Ios produdos MP4 y MP5 contribuirén a dichoobjetivo.

Desplazamlento por soluclones de prueba en Solver

1 . Haga clic en Ia celda D16.2. Ingrese a Solver, grupo anélisis de la ficha Datos.3. En el cuadro de diélogo Parimetros de Solver haga clic en Opciones.

- -s -M/todo öq resoiuoôn: I v rI Ozlones

Page 124: Excel Profesional 2010

Modificacibn de forma de blisqueda de soluciones en Solver1 . Haga clic en el bottm de comando Opciones deI cuadro de diâlogo Parémetrosde Solver.

2. En el cuadro de diélogo Opciones, tiene para elegir alguna de Ias siguienteso p c 1 o n e s :

Tiempo de soluciön e iteraciones

1 . Escriba Ia cantidad de segundos que desea configurar en el cuadro Tiempom*ximo .

2. Escrlba Ia cantidad méxima de Iteraclones o repeticiones a permitir. en el cuadroIteraciones.

Grado de precisiôn

. Debe escribir el grado de precisitm que desea configurar en el cuadro Precisiôn.La precisiôn seré mayor en cuanto menor sea el nûmero.

Tolerancia de enteros

. Si desea un porcentaje de error, escriba en el cuadro Tolerancia, la cantidadadecuada.

Grado de convergencia

. Clic en Ia Ficha GRG Nonlinear.

. Escriba la cantidad de cambio relativo que desea permitir en Ias ûltimas cincoiteraciones antes de que se detenga Solver en el cuadro Convergencia conuna soiuci6n. Cuanto menor sea el nûmero menor seré el cambio relativo que sepermite.

1 . Haga clic en Aceptar.

Page 125: Excel Profesional 2010

Desarrollo de casos tipo utilizando SOLVERCaso: Optimizar la capacidad operativaLa empresa Ebanista S.A. fébrica mobiliario de oficina de nivel ejecutivo. Cuenta con 3departamentos que producen y ensamblan Ios muebles.. En el primer departamento 'A'' se reciben Ias planchas de me Iamine y cedro enbruto y se coltan de acuerdo al iote de produccibn.

. En el segundo departamento ''B'' se producen 1os accesorios y materialessellantes.

. En el tercer departamento ''C'' se ensamblan y dan Ios acabados a 1os muebles.En Ios tiltlmos asos 1as utilidades de la empresa se han visto mermadas y Ia gerenciacolegiada se ha planteado como soiucitm fabricar otro tlpo de muebles, tales como decocina de fkno acabado.Se tlene un grupo de productos que por competencla internacional no esté rindiendo taIcomo se esperaba y por io tanto se ha presentado el caso que se tiene capacidadinstalada s1n un uso adecuado.Los produ ctos estrellas son dos:

. Primer producto, Mueble ejecutivo, confort y estilo A1

. Segundo producto, Estante aéreo, vista aerodinâmica

Se tiene Ia problem*tica de no contar a! 100% de Ia capacidad instalada, pues debido a1os disesos de 1os productos, estos deben ser terminados en el departamento 3.Lo cual disminuye la Iinea de producciôn en Ia cantidad a fabricar pues si cada productose fabricara como unidad de producci6n Ia linea de produccibn seria més ôptlmo.

xX 1I@programu Nucienal de Informtiticcl

Page 126: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

La utilidad deI primer producto es de $8.00 y Ia de1 segundo producto es de $12.00.La sigulente tabla muestra Ios datos de Ias capacidades operativas y Ios requerlmientosque requiere cada mueble.

Requerimientos decapacidad por Capacidadunidad/ roducida Operativa

AprovechableDe artamento

A 2 0 6B 0 4 1 8

EI departamento A, soio produce el producto uno. (Prodl )EI departamento B, solo produce el producto dos. (Prod2)Observamos que en el departamento C se requiere para producir el producto uno (Prodl )y el producto dos (Prod2).

Page 127: Excel Profesional 2010

p.xïl&Qzpikulo IIIC

Detalles:Nombre Ia celda C1 5 como Maxprod.Nombre Ia celda C1 1 como Prodl, Ia celda C1 2 como ProdzEn Ia celda C15, escriba Ia fbrmula' r8*Prod1+12*Prod2

Que seré la funciôn objetivo.En el caso de Ias restriccionestEn Ia celda C18 escriba Ia siguiente fôrmula: rrprodlEn Ia celda C19 escriba Ia siguiente fôrmula: r3*Prod2En Ia celda C20 escriba Ia siguiente fôrmula: r6*Prod1+4*Prod2

Page 128: Excel Profesional 2010

LA ESTADISTICA DESCRIPTIVA PARA EL ANA' LISIS DE DATOSEN EXCELMlcrosoft Excel ofrece un ccmjunto de herramientas para el anélisis de Ios datos(denominado Herramientas para anélisis) con e! que podré ahorrar pasos en el desarrollode anélisis estadistico o de ingenkerla. Cuando utilice una de estas herramientas, deberéproporcionar 1os datos y parémetros para cada anâlisis, Ia herramienta utilizaré iasfunciones macro estadisticas o de Ingenieria apropiadas y mostraré 1os resultados en unatabla de resultados. Algunas herramientas generan gréficos ademés de tablas deresultados.

Page 129: Excel Profesional 2010

<. .'! ''r . - I&Cupftulo 111:

Control de rangos de datos de entrada y salidaE! funcionamiento de Anélisis de datos es interactivo. Siempre debe relpenar el campo (0campos) indlcado como Rango de Entrada con (eI rango de) Ios datos que se van aanalizar. Los resultados se escriben por defecto en una hoja nueva. Si se deseaobtenerlos en Ia misma hoja debe selecclonar ia opciôn y el deI Rango de salida con Iacoordenada superior izquierda de la zona en donde desea que se muestren Iosresultados. E1 resto de Ios campos puede o no seleccionarse segûn el tipo de anélislsque desee efectuar.Veamos un ejemplo de cdmo debe procederse usando como guia el anâlisls ''Estadisticadescrlptiva''.

Page 130: Excel Profesional 2010
Page 131: Excel Profesional 2010
Page 132: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

EI aspecto de Ia salida, que empieza en Ia celda $D$1 , seré: La sallda quedaseleccionada por defecto con Io que se puede mejorar su aspecto de forma muy simpleindicanda que Ia columna ajuste su anchura al texto, lo que se harâ con Ia opciôn demen t) .

Page 133: Excel Profesional 2010

/ ...2:1C71C7 lll.::z I%?

Cupikulo 111:

* A> *

1 . &por qué es importante ctmocer ias herramientas de anâlisis estadlstico?

2. Indicar Ias diferencias entre tendencia Iineal y tendencia geométrica.

3. &por qué es importante conocer el an*lisis de dispersiôn?

4. &En qué ayuda el anélisis de optimizacibn en una empresa?

5. &En gué casos se emplea el anéllsis de optimizacién?

6. &por qué Ias restricciones y Ia forma en que se selecclonan afectan el objetivo de unmodelo de optimizaciôn?

7. La empresa ''EI Pollo Feliz'' Ie solicita reallzar una proyecciôn de ventas de1 primersemestre del prdximo aëo Ie da ia siguiente informacitm de 1as ventas deI ûltimosemestre.

Mes Cantidad800Julio1050A osto1280Setiembre1460Odubre1820Noviembre1950Diciembre

8. Con Ios datos de Ia tabla anterior, calcular Ia tendencla de Ias ventas y hallar Iaecuaclbn que la representa.

9. Tenemos Ios siguientes datos Julio 1 86Agosto 2 95

Se pide caicular: Septiembre 3 110*

'

La tendencia Octubre 4 115* EI Crecimiento Noviembre 5 13ODiciembre 6 142Enero 7 153Febrero 8 18OMarzo 9 186Abril 10 191Mayo 11 197Junb 12 212

Page 134: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

programa Nacionol de Informdtica

Page 135: Excel Profesional 2010

iqtd d- j

Fœmularios

Capîtulo

@ Gestiôn de controles comunes.@ Crear formuiarios.@ Gestiôn de datos répidos.

Cada dia mira al SOL..

Si te comparaa con é/ te daréa cuentaque siempre tlenes Iuz dentro de ti.Si te corpparcla con é/ te c/arâs cuentaQlze puedes aer câllda.Si te comparas con é/ te c/arés cuentaQ&e tu flzerza aumenta considerablemente en ellrayeclo del (Sa.Si te comparaa con é/ te c/al'és cuentaDe tu perfeccl6n.Si te comparas con ti/ te darâs cuentaQue tu cuerpo a/erppre bnïla.Si te comparas con é/ no t/erlea méa que hacereSO.SALIR CADA DlA CON UNA NUEVAOPORTUNIDADPARA BRINDAR LO MEUOR DE TI.Y de agradecer a D/OS por tantas llencf/c/cmes

Tere Brlngas

Page 136: Excel Profesional 2010

,.:51Mkrœofk Office Excel profesionul

ACTIVACIdN DE LA FICHA PROGRAMADOR

. ... . . < I . ' * . * .

Realice Io siguiente:

1 . Cpic en la ficha Archivo.2. Luego, clic en el botôn Opciones.3. En el cuadro de dlélogo Opciones de Excel, realice Io siguiente:

DISEN-O DE FORMULARIOSPuede crear formularios empleando Ms Excel 2010 para imprlmirlos o utiiizarlos enpantaiia. Los formularios en pantalla pueden incluir controlesl , como:1 . Un cuadro de texto,2. Una casilla de verificaciôn,3. Un botôn de opciôn,4. Una Iista desplegable,5. Una barra de desplazamiento o6. Un bottm de comando.

Que le permite al usuario controlar el programa.

1 Control: objeto de interraz gr*fica para el usuario

' 130 programa Nacionol de Informdtica

Page 137: Excel Profesional 2010

p.yilCapikulo 1$/:

Utilice Ios controles para mostrar datos y opclones, realizar una opcitm o facilitar IaIectura de Ia inteffaz.), como botones de opcién y Iistas desplegables.Puede proteger un formulario en pantalla de modo que sôlo estén disponibles ciedasceldas para Ia entrada de datos, y también puede vaiidar 1os datos para asegurarse deque 1os usuarios sôlo escriben Ios tipos de datos que requiere el formulario.Los formularios pueden facilitarse desde Excel, en péginas Web o desde programas deMicrosoft Visual Basic para Apllcaciones (VBA: versién deI lenguaje de macros-deMicrosoft Visual Basic gue se utiliza para programar aplicaciones Windows y que seincluye en varias aplicaclones Microsoft).

Page 138: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

' uc ai a v p I =' ' ;? 1 -'c . .. . ., ..1. r. . . 1. . ) x- / cu.orl . 1. . Pzrlt3lla CIOSRLIéS do :1..- x r # .$. x. 41 j.j m ja r Area de Trabajod' 'o ' J . ..z . p k '. !

= .

Page 139: Excel Profesional 2010

Modificar el diseiio de Ia hoja mostrando y ocultando:Lineas de divisiônRealice 117 siguiente.1 . Clic en la ficha Vista.2. En el grupo Mostrar, puede activar o desactlvar Ia casilla de verificaciôn:Lineas de Ia cuadricula.

Page 140: Excel Profesional 2010

3. En el submenû siguiente Clic enOcultar Hoja.

4. La hqa ya no estaré visible en el libro.

Page 141: Excel Profesional 2010

<. .'! ''r . - I&Capzulo ITC

I '@ ' '' 1 . Luego, se muestra el cuadro de diélogor.- . . ,p. Mostrar con Ia reiacitm de hojas

ocultas.2. Haga clic en Ia hoja que desea mostrar,en este caso Ia Hojal

3. Finalmente, clic en el botbn Aceptar.

I . ce p tar- ' -' , c an celar

Page 142: Excel Profesional 2010

Celda vincu lada

Un detalle importante a teneren cuenta es que cada uno de Vaior devualtc1os controles siempre devuelve Celda Vlnculadaun valor que puede ser unntlmero o una constante IôgicaEs buena idea que el conjuntode estas celdas vinculadas se c trolO nubiquen en zonas alejadas deIérea deI formulario que se AI hacer elic en el control se devuelve un valordisesa.

Page 143: Excel Profesional 2010

p.yilCapikulo 1$/:

Dibujar un controlEmplearemos Ios controles de formulario. deI grupo controles de Ia fichaProgramador

C o n tr o I e: d e f' o rm u I a rl ci-a -! I J XX ..1;j . ILA tSeleccione el control Barra de desplazamiento. .'M.a

' clio aqui ht u

GEn alguna celda, arrastre dlbujando un recténgulo.

13 'Se forma el control barra de desplazamiento, en mododiseho. I . ,

Apunte a una esquina para redimensionar. G !

Para salir deI modo diseso clic fuera deI control %dibujado. wG I H

Se ttene el modo de ejecucién.Se puede deslizar Ia barra de desplazamiento. llwUEstando en modo de ejecuci6n puede Volver al modo '' ' i ' 'disefio, haciendo clic derecho sobre el mismo ..r .np a'

Configurar el controlVeamos cbmo se configura el control para H h----; 'j4 !cambiarle de apariencia y establecer la celda ' -' F-..ft collarVlnculada . v. = . w-.; .

Clic aqui para1 Proceda como se indica en Ia imagen. Configurar el. control2. Se muestra el cuadro de diélogo Formato '.< z'deI control : '. . . - ég fa r Iui a p

të:y F .5'rn' a t ., d e c o (àt I ., I

Page 144: Excel Profesional 2010

4. Terminada Ia acciôn clic en el botôn de comando IAceptaq.Si desea obtener medddas exactas de su control, puede seleccionar Ia fichaTamaso y establecer Ias medidas que se requieran en el formulario que se estédiseqando. Para terminar con la configuraciôn, haga ciic sobre el bottm (Aceptarl.

X ai' 'e' ' proteqer proaedades Texto altematko ctmtroli !.T j'ramafie v glreAlttl e. .15 (ml

Page 145: Excel Profesional 2010

Ta1 como se muestra: celdas Vinculad% BARRAS DE DESPLAZAMIENTActûe sobre Ia barra dedesplazamlento, utlllce jI 18 FEI'. -.'. Irll --Ia =A9+ATios botones de tdesplazamiento izquierda * 'derecha 04701.20 1 1y .

()- ; tultlro (lombinldb.1 . En Ia hoja de trabajo, agregar el siguiente contenido:

A Ei C D E1 91 1 CUADRO COMBINAK12 LUNES13 MARTES14 MIARCOLES1f. JUEVES16 vlEiRrlE

'

s . - .! ; SABADO ' pdonlhnre cle1 8 E) () rkllrl ($ () T'LI r'L () ..'J C1 I Jt ';

Para dar nombre al rango:

. Seleccione Ias celdas: C12:C18.

. Clic en el cuadro de nombres.

. Escriba: dias.

. Pulse Ia tecla Enter.

2. Insertar el control cuadro combinado en Ia celda E12

Page 146: Excel Profesional 2010

4. Ahora, complete el proceso, realizando Io sigukente'

1 1 CUADRO COMBINAI)O DIA rNICIO12 LUtIES =INDICEtDIAS L 1 1 111 l l 'XRTES ' ''- -- - -1 4 1k1 IE RCOL E S -1 6 JUEVES1 6 ViERNES1 = SAë/AOID1 8 Dor'yllr 1 GO

5. Clic en el bot6n deI cuadro combinado y seleccione uno de Ios dias de Ia Iista.

Page 147: Excel Profesional 2010

2. Ahora, insede un cuadro de Iista y configure para que muestre 1os meses y elmes de inicio.

2 1 CUADI!O BE LI STA MES IIIICIO22 EZIERO =IrkDICEIr. lesvs ,.k..21 1JE! 3 FZERZRO ''E

'

rlE

'

p.o ,.24 MARZO u25 AEIRIL ZAFRZOABRIL2 (i %l/qY O MA fo2 ï JUNIO JU111O28 J ULI O2S AGOSTO3 0 SEPTI Er'k! BRE3 1 OCTUEIRE,)2 NOVIEMURE3 3 DICIE MB RE

Page 148: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

Page 149: Excel Profesional 2010

Puede incluir tantas casillas de verificaci6n como se requieran en el formularioque se disesa.

: : Jp-ol Nfm-

Para agregar un control de ntimero en Excel 20 1O, haga clic en la ficha Programador.haga clic en lnsertar y, a continuaciôn, haga clic en Bot6n de nlimero en Ia secciônControles de formulario.

1 . A continuaclôn, cree un control de nûmero que abarque Ias celdas 558:859.Asigne un tamaso a! control de nûmero para que tenga aproximadamente uncuarto de1 ancho de Ia columna.

2. Haga clic con el botdn derecho de! mouse en el control de nûmero y, acontlnuaciôn, haga clic en Formato de control. Configure segùn como se indicaa continuaciôn y haga clic en Aceptar.

Page 150: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

a. En el cuadro Valor actual, escriba 1 .Este valor inicializa el control de nûmero para que Ia fôrmula INDEX sesale alprimer elemento de la Iista.

b. En el cuadro Valor minimo escriba 1 .Este valor restringe ia parte superior deI control de nûmero al primer elementode Ia Iista.

c. En el cuadro Valor miximo escriba 60.Este nûmero especiflca el nûmero méxlmo de entradas en Ia Iista.

d. En el cuadro Cambio incremental, escriba 1 .Este valor controla cuénto incrementa el control de nûmero el valor actual.

e. Para coiocar un valor numérico en Ia celda G1 (segûn el elemento que seseleccione en Ia Iista), escriba C58 en el cuadro Vinculo de celda.

Haga clic en alguna celda para quitar Ia seleccibn. AI hacer clic en el control haciaarriba o hacia abajo en el control de nûmero, Ia celda C58 se actualiza con unnûmero que indica el vaior actual deI control de nûmero més o menos el cambioincremental deI mismo. Este nùmero actualiza a continuaci6n Ia fbrmula INDEXen Ia celda A1 para mostrar el elemento siguiente o anterior.

EI valor de1 control de nûmero no camblaré si el vaior actual es 1 y hace clic en elcontrol hacia abajo o si el valor actual es 50 y hace cllc en el control hacia arriba.

CONTROL NUMERO

Segundos de EsperaI A 51 v i

Page 151: Excel Profesional 2010

p.xdlCapikulo 1$/:

DESARROLLO DE EJEMPLOS TIPO CON FORMULARIOS

Se debe preparar un formulario personalizado para Ias cotizaciones solicltadas online.EI contenido de1 formulario es el slguiente

Debe realizar Io sigu iente:1 . Empieando validacibn Ios productas deben formar una Iista en Ia celda (232. La celda vinculada para Ios botones de opclôn es Ia celda B213. EI control nûmero tene como celda vinculada la celda G7 y un valor minimo de 1y un valor méximo de 25.

4. EI color se muestra en un cuadro combinado5. Considere 1as siguientes fbrmulas:

Page 152: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

a) Precio Unitario=IN DIC E(Precio;C21;1)

b) Sub total=+G7*G9

c) Dscto. Voiumen=REDONDEARIGIIASIIGI 1<500001;0;SI(G1 1<800001 ;-0.03;-0.05));0)

d) Dscto pronto pago:=REDONDEARIIGII +GI 3)*SI(B21r1 ;-0.Q2;Sl(B21r2;0;0.015));0)

e) Total=+G11 +GI 3+G1 5

Page 153: Excel Profesional 2010

/ -*- :110.Capikulo 1$/:

* Rw *

Page 154: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

I 2;9 programa Nacionol de Informdtica

Page 155: Excel Profesional 2010

i-ttd d- #

llacros

Capîtulo

W' Cuando me exlo cpéa de Io que puedo da6 Iugroretasar m/a limites.

U Cuanto c7é.s me dec/am la g/erra a mf mismorpés paz tengo.

J E1 e/og/o en boca propla desagrada a cualqulera.rJ' E1 que conuce el arte de vivlr consigo lrl/smclignora el aburrimlento.

Q' E1 viaje mâs Iargo ea e/ g&e ae hace Dac/a e?interior de uno mlsmo.

D' Encuéntrate y aé tû m/arno; recuerda que no hayrlac//e como D.

U Fx/ge mucho a tl m/smo y eapera poco Je I0sdeméa. Asf te ahorrarâ.s cegt/atoa.

1 Extste a/ menos un rinc6n del unlverso que contoda aegs/r/dacf puedes mejorar y eres tli mlsmo.

Page 156: Excel Profesional 2010

!2t- 11KliirosofL Clesce Excel profesionul

v5AMACROS

Una Macro es una serie de pasos que se guardan bajo un nombre y se pueden activarcon alguna tecla de control y una Ietra, un botbn o manualmente.Por ejemplo. si repetidamente se emplea una serie de pasos como: Cambiar el Tamafiode Fuente o Tamaso de la letra poner Negrlta, cambiar Ia Fuente o Tipo de Ietra y elColar de Fuente o Color de Letra, para no estar repitiendo estos pasos se puedenaimacenar en una macro y se ejecutara Ia macro Ias veces que se desee.En resumen una macro consiste en una serie de comandos y funciones que seaimacenan en un môdulo de Microsoft Visual Basic y que puede ejecutarse siempre quesea necesarlo realizar la tarea.Para esto Excel 2010 para Windows cuenta con dos herramientas bésicas: 1as macros y1os môdulos. En este capitulo se revisarén Ias macros.Para explicar Io que es una macro vamos a hacer una analogia entre un micrbfono y unacinta con la computadora y Ia grabadora de macros.

q

'

! -* 14 lv w

iY

ï'lè .r==.crk+..e'-Tn.T'=y%. , == Grabadora

$ de macros

La grabadora de macros funciona de manera similar a una grabadora de cintas. Unagraba Io que Ia persona dice En ia computadora se graba lo que el usuario hace.

Page 157: Excel Profesional 2010

p.yilCapitulo $/:

Antes de Grabar una Macro

Antes de grabar o escrlbir una macra hay que tener en cuenta Ios slguientes puntos:1 . Planifique Ios pasos y los comandos que desea que elecute ia macro.2. Si se comete algûn error mientras se graba la macro, tambibn se grabarén Iascorrecciones a esos errores que se realicen.

3. Cada vez que se grabe una macro ésta se almacenaré en un nuevo môdulo adluntoa un Iibro.

AI grabar u na m acro Excel almacena mformacl6n so bre cada paso d ado cu and o seejecuta una serie de comandos. A continuaciôn se ejecuta la macro para que repita 1oscomandos.

SEGURIDAD DE MACROS

AI trabajar con macros se debe tener en cuenta que Ms Excel 2910 tiene especialcuidado en su empqeo, pues casi siempre se afecta con Ia inclusiôn de cbdigo maliclosoque perjudica e! funclonamlento deI programa. Por esta razôn se debe dejar que el centrode confianza reaiice la comprobacldn deI caso.

Antes de permitir que una macro se habilite en un documento, el Centro de confianzacomprueba lo siguiente:

. La macro esté firmada por el programador con una firma digitall

. La firma dlgital es vélidaz

. Esta firma digitap esté actuaiizada (no ha caducado).

. EI certitlcado asociado a Ia firma digitai fue emitido por una entidad emisora decediflcadosB acredltada.

. EI programador que firm: Ia macro es un editor de confianza4

Page 158: Excel Profesional 2010

pX;rIKliirosofL Clesce Excel profesionul

Configurar el Centro de ConfianzaRealice Io siguiente:

1 . Clic en Ia ficha Archivo.2. Luego, Clic en el botbn Opciones.3. Haga clic en Centro de confianza. haga cpic en Configuracl6n deI Centro deconfianza y, a continuacitm, haga clic en Barra de mensajes.

Page 159: Excel Profesional 2010

<. .'! ''r . - I&Capëulo TC

Esta opciôn est: seleccionada de forma predeterminada para recibir aledas de iabarra de mensajes cuando se haya deshabilitado el contenido potencialmentepeligroso. La opciôn no esté seleccionada si hizo clic en Ia opcitm Deshabilitartodas Ias macros sin notificaciôn deI panel Macros de1 Centro de confianza.

Si hace clic en Deshabilitar todas Ias macros sin notificaciôn no recibiréalerlas de la barra de mensajes cuando se deshabiliten macros.. No mostrar nunca informaci6n sobre contenido bloqueado, esta opcitmdeshabilita Ia barra de mensajes. No se reciben aleltas sobre problemas deseguridad, Independientemente de Ia configuraclôn de seguridad de1 Centrode confianza.

Actuar frente a una advertencia de seguridad sobre habilitar o deshabilitaruna macroCuando aparece un cuadro de diélogo de seguridad, tiene Ia opci:n de habilitar Ia macroo dejarla deshabiiltada. S6lo debe habllitarla si sabe con certeza que procede de unafuente de confianza.

Page 160: Excel Profesional 2010

pX;rIKliirosofL Clesce Excel profesionul

En funcién de Ia situaciôn, el cuadro de dlélogo de seguridad describe ei problemaespeclfico. La tabla siguiente muestra ia lista de los poslbles problemas y da consejossobre Io que se debe hacer en cada caso.

Problema ConsejoLa macro no esté firmada Dado Antes de habilitar macros sin firmar asegûrese deque Ia macro no esté firmada que la macro procede de una fuente de confianza.digitalmente, no se puede Puede continuar trabajando en el documentocomprobar Ia identidad deI editor aunque no habilite Ia macro.de macros. Por Io tanto, no esosible determinar si ia macro es

' 154 programa Nacionol de Informdtica

Page 161: Excel Profesional 2010

p.yilCapitulo s/:

segura o no.La firma de Ia macro no es de Puede confiars explicitamente en el edltor de Iaconfianza Puede que Ia macro macro haciendo cllc en Ia opcibn Confiar en todosno sea segura, ya que se ha Ios documentos de este editor en el cuadro defirmado diqitalmente, la firma es dlélogo de seguridad. Esta opckôn solamentevélida y se ha elegido no confiar en aparece si Ia firma es vélida. AI hacer clic en estael edltor que Ia firmô. opciôn se agrega el editor a Ia Iista Editores de

confianza deI Centro de confianza.

La firma de Ia macro no es Se recomienda que no habilite macros con firmasvélida Puede que Ia macro no no vélidas. Una postble razôn para que la firma nosea segura, porque se ha firmado sea vélida es que se haya manipulado.digitalmente y Ia firma no es vélida.

La firma de Ia macro ha Antes de habilitar macros con firmas caducadas,caducado Puede que Ia macro asegûrese de que Ia macro procede de una fuenteno sea segura, porque se ha de conflanza. Si ha usado este documento en elfirmado digitalmente y Ia firma ha pasado sin problemas de seguridad, el riesgo quecaducado. supone habilitar la macro puede ser menor.

Cambiar Ia configuraciön de seguridad de Ias macros de todos Iosdocumentos en el Centro de confianza

La configuraciôn de seguridad de Ias macros se encuentra en el Centro de confianza. Sinembargo, si trabala en una organizacidn, es posible que el administrador de1 sistemahaya cambiado Ia conflguraciôn predeterminada; por tanto, quizé no pueda hacercamblos en ella.

Nota AI cambiar Ia configuracitm de Ia macro en el Centro de confianza, s6lo cambiapara el programa de Office que esté utilizando. La configuracibn de Ia macro no cambiapara todos 1os programas de Office.

Realice 117 siguiente.

1 . Cllc en Ia ficha Archivo.2. Luego, Cpic en el botôn Opciones.3. En el cuadro de diélogo mostrado. realice Io siguiente'.a) Haga clic en Centro de confianza, en Configuraci6n deI Centro de confianzay, a continuaciôn, en Configuraci6n de Activex.

4. Haga clic en Ias opciones q ue desee:

Page 162: Excel Profesional 2010

pX;rIKliirosofL Clesce Excel profesionul

Page 163: Excel Profesional 2010

Firmar digitalmente un proyecto de macroRealice Io siguiente:1 . Abra el archivo que contiene el proyecto de macro que desee firmar.

. En la ficha Programador de1 grupo C6digo, haga clic en Visual Basic.2. En el Explorador de1 proyecta de Visual Basic, seleccione el proyecto que deseefirmar.

3. En el menû Herramientas, haga clic en Firma digital.4. Siga uno de estos procedimientos:

1 Si no ha seleccionado previamente un cedlficado digital o desea usar otro,haga clic en Elegir, seleccicme el certificado y haga cldc en Aceptar dosveces.

2 Para usar el certificado actual, haga clic en Aceptar.

Notas* No firme Ias macros hasta que se haya probado Ia solucibn y esté llsta para Iadistribucitm, porque cuando se modlfica de algûn modo el côdigo de un proyectode macro flrmado. Ia firma digitai se elimina. De todos modos, si su equipodispone deI cedificado digital apropiado que se usth para flrmar e! proyecto, elproyecto de macro se volveré a firmar autométicamente una vez guardado.

Page 164: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

* Si desea impedir que Ios usuarios de Ia solucitm modifiquen el proyecto de macroaccidentalmente e invaliden Ia firma, bloguee el proyecto de macro antes defirmarlo. La firma ddgital stdo indica que el usuario garantiza que el proyecto no seha manipulado después de haber sido firmado. no demuestra que el usuario Iohaya escrito. Asi pues. bloquear el proyecto de macro no impide que otro usuariosustituya la firma dlgital por otra firma. Los administradores corporativos puedenvolver a firmar Ias plantillas para poder controlar exactamente qué usuariospueden operar en sus equipos.

*' Si crea un complemento que agrega côdigo a un proyecto de macro, el ctidigodebe determinar si el proyecto se ha firmado digitalmente e informar al usuario de1as consecuencias de modificar un proyecto firmado antes de continuar.

* Cuando firme macros digitaimente, es importante que obtenga una marca de horapara que otros usuarios puedan comprobar la firma incluso después de que hayacaducado el certificado de ésta. Si firma proyectos de macro sin ninguna marcade hora, la firma s6lo seré vélida durante el periodo de validez de1 certlficado.

i A1 I Lunes

. 2 I Mades' 3 1 Miercoles

4 Ilueves5 'Isabado.

1 D o m i n g o6

&Qué pasos se deben realizar?1 . Seleccionar Celda Inicial.2. Escribir Lunes en Ia celda seleccionada.3. Arrastrar hasta generar el Dia Domingo.4. Clic en Ia celda deI dia Iunes.

Todas estas acclones se deben guardar en un macro con un nombre que Ia identifique.

Page 165: Excel Profesional 2010

p.xïl&Capitulo S/C

DIASNombre de Ia MACRO:

10 Seleccionar celda Inicial28 Escribir Lunes en Ia celda seleccionada30 Arrastrar hasta generar el Dia Domingo40 clic en Ia celda deI dia Iunes

% % Tenga en cuenta que antes de proceder a glabar Ia nueva macro debe tener Iaseguridad de realizar Ias acciones sin error.

Procedimiento de grabaci6n1 . Seleccione ia ficha Programador.2. En ei grupo Côdigo, realice Io siguiente:

j s . ..... - ...- = .- . , gzé'- tl $ a r re f e re n <

'

I a $ re I at iva ; i n i ç

'

i a r I a g ra b a c i tè nt ; 11 a I r ! a ( r Q C ' x' - 'ùequndad J: .acon: ' .oaslc -$.L ..jI::. 19 Clic aqui para generar

Ios dias en cualquierA1 v .g j. ubicaciôn de celdaA : q ' . .

Page 166: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

3. Se muestra el cuadro de diâl/go Grabar macro.

Page 167: Excel Profesional 2010

Enlazar macro a uncom ando1 . Inserte un Bottjn en Ia celda E1,cuando termine de insertarlo,

2. Se muestra el cuadro de diélogoAsignar macro.

3. Haga clic en Ia macro dias.4. Finalmente clic en el botôn decomando rAceptarl.

5. Se muestra de Ia siguiente forma

6. Haga clic sobre el texto bot6nl yescriba Genera dias.

Page 168: Excel Profesional 2010

pX;rIKliirosofL Clesce Excel profesionul

7. Resultado Final E) 6 2Ganera dgas

8. Haga clic en cualquier celda vacia y Iuego clic en el botôn Genera diasSe muestran 1os dias de la semana a partlr de ia celda seleccionada.Como se emplea el côdigo VBA al generar una macro es posible:

Page 169: Excel Profesional 2010

5. Realice el siguiente cambio:

AI reallzar el cambio deI dia de inicioen el côdigo de la macro se hagenerado la nueva Iista a partir deIdia martes.Pruebe a cambiar el dIa de iniciocomo dia lueves y vea el resultado.

Page 170: Excel Profesional 2010

pX;rIKliirosofL Clesce Excel profesionul

USO DE MACROS EN FORMULARIOSA1 crear un formulario personalizado es posible que el usuario pueda crear macros yasignar Ia nueva macro a botones de comando o a otros controles que se han insedadoen un formulario.De esta forma el formulario responderé a Ios requerlmientos para 1os que fue disesado.

Page 171: Excel Profesional 2010

p.yilCapitulo s/:

Asignar macros a botones en formulariosSe tiene el siguiente caso préctico.1 . Abrlr el archivo: DemoMacros.xlsx, de la carpeta caps, en Ia carpeta ejercicios,dentro de1 material ddgital que ha recibldo.

EI archivo se tiene el siguiente contenido'.

Page 172: Excel Profesional 2010
Page 173: Excel Profesional 2010
Page 174: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

Ahora. clic en el botdn Vista previa y se muestra Io siguiente'

Asignar macros a otros controles en formulariosTiene Ia facilidad de asignar macros aotros controles por ejemplo a un grupo debotones de opciôn.Ya cuenta con una macro que genera Iosdias de Ia semana.

Page 175: Excel Profesional 2010

p.yilCapitulo s/:

Es posible asociar cada una de estas dos macros a un grupo de botones de opciôn esdecir una macro se asocia a un botôn de opclôn respectivamente.

Page 176: Excel Profesional 2010
Page 177: Excel Profesional 2010
Page 178: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

En caso no se muestre el signo de soies como moneda realice Io siguiente:a. Seleccione toda Ia hojab. Ingrese a formato de celdac. Seleccione Ia categoria moneda, Iuego en simbolo.

Epslclones deurnales : 2 '.Qlmbolo: S 1. Espaiioi (Perù'l v

5. Asi, puede seleccionar otras plantillas segûn requerimientos.

Crear plantillas personalizadasPara el caso que se desee una plantilla de acuerdo a requerlmientos personaies o de laempresa es posible crear una plantilla que sea tlexible y realice lo que el usuario estésolicitando.Tiene que abrir un nuevo archlvo insertar controles configurarlos y una vez terminadoguardar el contenido como un Iibro de Excel habilitado para macros.

Page 179: Excel Profesional 2010
Page 180: Excel Profesional 2010

!2t- 11KliirosofL Clesce Excel profesionul

Utilizar plantillas personalizadasSi cuenta con una lista de archivos de Excel habiiltado para macros puede hacer uso deuno de ellos.

Page 181: Excel Profesional 2010

p.yilCapitulo s/:

Teniendo en cuenta Ias siguientes consideraciones'.* La fecha debe variar entre e! primero y ûltimo dia deI mes actual empleando unabarra de desplazamiento horizontal.

* EI ndmero de Factura debe varlar entre 100-X00 a 100-1000 empleando unabarra de desplazamiento horizontal.

* Los cbdlgos de 1os clientes debe seieccionarse desde un cuadro combinado.AI seleccionar un c6digo de cliente, se debe mostrar su cbdigo, Apellidos ynombres y su nûmero de teléfono.

* La modalidad de pago se debe seleccionar mediante botones de opci:n y mostrarel valor seleccionado en una celda.

. EI tipo de pollo (C, P, D) se selecciona desde un cuadro combinado. A1seleccionar el tipo de pollo, debe aparecer en el detalie una descripciôn de1producto que se est: comprando.Si seleccionô C, en Detalle debe mostrarse Pollos de Carne

. EI descuento debe variar entre un 5% a un 25% empleando una barra dedesplazamiento horizontal.

CALCULOS. Usted debe ingresar la cantidad de pollos, Ia cantidad de kilos que se venden ycalcular.

EI peso promedio =iolos/pollosEI Valor de venta =K.Ios * Precio pollo segûn tipoEI monto deI descuento =valor de venta * % DescuentoNeto a Pagar =valor Venta - Monto DescuentoParcial rzlqeto a PagarEI IGV = 1 9% * ParcialTotal a Pagar =parcial + IGV

Page 182: Excel Profesional 2010

!2t- 11KliirosofL Clesce Excel profesionul

1 . t,por qué son ûtiles 1os formularlos personalizados?

2. &CuàI es el propbsito de emplear el cuadro de grupo?

3. Prepare un formulario que Ie permite mostrar Ios signos de1 zodiaco al hacer clicen un botôn de comando.

4. Prepare un formulario que guarde en un cuadro de Iista una Ilsta de cJdigos deproductos y al hacer clic en uno de Ios côdigos muestre todos Ios datosrelacionados con ese producto.

1. Nombre2 Precio Venta3. Cantidad en stock4. Lugar de origen5. Proveedor6. Vendedor

5. Empleando el libro Empleados.xlsx, prepare una macro asociada a un botdn decomando que permita tener una vista previa de la relacibn de empleados.

6. Prepare en una nueva hoja con el empleo de tres botones de comando que seasocien con Ios datos de cada regiôn de Ia hoja empleados.Asi. cada bottm debe realizar el filtro de Ios registros que corresponde a cadaregidn.

7. Elabore un macro para ingresar nuevos datos a Ia tabla estos datos se ingfesanen forma vertical y al hacer clic en el botbn agregar, se inserten Ios nuevos datosa Ia lista de empleado.Emplee dos hojas, una para el ingreso de datos y otra para la Ilsta de empleados.

Page 183: Excel Profesional 2010

Op t.ytu-

Pro made cœ VBA

Capîtulo

@

* Conocer Ios fundamentos de Ia programaciôn VSA.@ Aplicar ias estructuras de programacitm.@ Emplear correctamente Ios Objetos, propiedades, métodos yeventos.

@ Crear aplicaciones empleando controles.

'F/ amor es la r't/erza més poderosa del unlverso.S/nf7JJ? ablsmo es tan elr/?cl que no haya amor ca#az desa/tar/tzNlngûn odlo es tan fnb que no haya amor capaz dederretlrlo.Nlnguna mJ/c/a esté tan arraltada que no ha/'a amorcapaz de dlsolverla #' ninguna ltnorancla es tan oscuraque no haya amor capaz de llumfnarlaS/ somos impotentes porque tenemos el poder #eescogen el poder de amar y el p/#er de pensar.''

Page 184: Excel Profesional 2010

p.yilCap:ulo b'1:

PROGRAMACIO' N CON VISUAL BASICProgramaciôn en Visual Basic es una forma égil y simple de crear aplicaciones paraMicrosoft Windows.Ei Ienguaje de programaciôn en Visuai Basic proporciona todas Ias herramientasnecesarias para el desarrollo répldo de aplicaciones.Podriamos definir programacitm en Vlsual Basic como el método que se utiliza paradesarrollar Ia interfaz grétlca de usuario.Con la programacibn en Visual Basic podré desarrollar précticamente cualquier programaque se imagine.Este Ienguaje de programaciôn es uno de 1os que més interés despiertan entre Iosprogramadores. Porque este lenguaje de programaciôn, el Visual Basic, Ie facilita Iarealjzacibn de tareas complejas en poco tiempo y 1os que est*n comenzando aprogramar con Visual Basic son capaces de realizar pequesos programas al poco tlempode haber comenzado a estudiar este Ienguaje de programaciôn.Ei Visual Basic es un Ienguale de programacitm que proviene de1 BASIC. La primeraversi6n de este Ienguaje de programacidn Visual sasic fue presentada en el a5o 199 1 .La intenciôn de este primer programa era simplifdcar Ia programacibn utilizando unentorno de trabalo claro que permitiera crear interfaces gréficas facilitando asi Iaprogramacidn.Las slntaxis que utiljza este lenguaje de programaciôn proviene de1 conocldo BAStC,pero completada con comandos y côdigos de otros Ienguajes més modernos. Estelenguaje de programaci:n Visual Basic tiene un apartado dedicado a ia ProgramacitmOrientada a Objetos.Es un Ienguaje muy apropiado para el manejo de bases de datos. Muchas empresas Ioutilizan para la gestidn de sus bases de datos porque su utijizaciôn es sencilla y abundanIos programadores de este Ienguaje.

ACTITUD ANTE EL PLANTEAMIENTO Y SOLUCION DE PROBLEMASUn problema es un conjunto de interrogantes que se plantean para ser resueltas.En lnformética: se busca Ia solucl:n utilizando computadoras, mediante un programa(buscando el mqor resultado en tiempo y forma).

Planteo@ &Qué me estén pidiendo?@ &cômo resolverlo?@ &con qué, expresar la supuesta soluclbn (recursos, herramientas...)?

Dicho de otro modo. responde ai siguiente orden planteado'.1 . Estratégico.2. Légico.3. Uso de herramientas.

Page 185: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

EnunciadoDebe estar dado en forma completa, correcta y sin ambigfiedades. EI problema tieneuna naturaleza, su particularidad, y debo reconocerpa para saber si puedo enfrentarlo,para ello se sugiere tener en cuenta'.a) Conocimiento.b) H abil idad .c) Experiencia

Es decir:Q' Conocer Ios elementos, propiedades, Ieyes, teoria'.u' Poseer cualidades que permitan alcanzar la soluciôn, creatividad;k:/ Toma de decisiones, naturaleza que dé mayor seguridad y garantia de resoluciôn.

Debe estar en condiciones de responder ya que na se entiende lo que no conoce.

Sugerencias ante un planteo(Pautas que permiten adquirir metodologia, un orden que acerca a Ia solucitml',1 ) Necesita poder captar datos importantes. Existen datos secundarios', noagregarlos'

2) Reconocer relaciones entre datos'. hacer explicito el dato que esté oculto en unarelaclôn de datos, en el planteo, de acuerdo a la naturaleza deI problema;

3) Profundizar en Ios detalles', en la préctica se aconseja Ieer 3 veces el problema;4) Dividir el problema en sub problemas; si es de complejidad impodante se reduceIa misma, obtenlendo una mejor performance.a. Tener en cuenta que Ia complejidad esté dada por ia cantidad de procesosque se realizan'

5) Aplicar Ia experiencia en problemas similares.@ Para ordentarse, no debe olvidar el orden; el planteamiento estratégico.E1 paso siguiente consiste en construir la propuesta de solucibn:

DA. *@ #e Po> eptepip. .w..w....- Daks 4e. '( .

Introducciôn al BASICVdsual Basic es un HERRAM IENTA SOFTWARE que permite desarrollar aplicacionesMicrosoft Windows. Son aplicaciones de interacciôn sencilla con e! usuario.

' 18O Programa Nacionol de Informdtica

Page 186: Excel Profesional 2010

p.yilCap:ulo b'1:

Visual Basic estâ ORIENTADO A EVENTOS/OBJ ETOS (1o cual qulere decir que elcbdigo no se activa hasta que se Ilama como respuesta a un evento, por ejemplo Ciick debottm, Seleccit)n de un menû.. . . ).

No sucede nada hasta que se detecta un evento.Cuando se detecta un evento, el côdigo correspondiente a dicho evento (procedimientode evento) es ejecutado.Algunas caracteristicas de Vlsual Basic

Q' Conjunto de objetos (para 'dibujar'' ia aplicaci6n).Qi' Muchos iconos y dibujos.a' Respuesta al ratbn y al teclado.r/ Acceso a Ia impresora y al clipboard.1. Una completa coleccitm de funciones matem*ticas, de cadena y gr*ficas.Cz' Puede manejar variables fijas y din*micas y arrays de controles.iz' Soporte de acceso a ficheros secuencial y random (de acceso aleatorio).ci Depurador muy ûtil y facilidades de manejo de errores.iy lmpcdantes herramlentas de acceso a bases de datos.?/ Soporte Activex.Lf' Auxiiiar Package & Deppoyment Wizard para distribuir con facilldad 1asaplicaciones.

Fundamentos de Programaciôn VBAVBA significa Visual Basic for Applications. Es un Ienguaje de programacibn que surgede Visual Baslc (VB). Se podria decir que es un dlalecto de V5. VBA de Excei estéadaptado a Excel, para trabajar con ceidas, hqas. autoflitro etc (es decir, Ios obletos deIa aplicacitm Excel).

ESTRUCTURA DE UNA APLICACISN EN VISUAL BASICProyecto

'1)1.'

*

'

*

. .:.

'

.

'

..

'

.

'

.

'

... .

'

:.

'

2'-11,11t94,1!711!1,.

*

. ... -.

'

.. .

'

. ,. 7

*

'td1t'iidIliE'... .

'

.

'

-

'

.. .

'

.

'

.. ''

'

.

'

.. .

'

.

'

.

'

..

*

111.- . . )Ii1iI11i''iiiii'i1l'...-.

'

.

'

.,

'

.

'

.. .. .E. .

'

...

'

é14:4ikii11jiiii!1i)

'

.

'

...

'

.(: .

'

-

'

Control Control Control

Control Control Control

Control Control Control

Page 187: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

La aplicaciôn o proyecto esté formado por:@ Formularios. Ventanas creadas que contienen controles@ Controles. Gréficos colocados en Ios formularios para permitlr Ia interacciôn de1usuario (text boxes, Iabels, scroll bars, command buttons. etc.) (Ios Formularios yIos Controles son objetos.)

@ Propiedades. Cada caracteristica de un formulario o de un control se especiicapor medio de una propiedad. Por ejemplo name, caption, size, color, position,...Existen propiedades por defecto. Se pueden modificar Ias propiedades en tiempode diseso o en ejecuciôn.

@ Métodos. Procedimiento ya creado que puede ser Ilamado para ejecutar unaacciôn sobre un objeto.

Métodos de los ObjetosYa hemos visto c6mo cada objeto tiene propledades y eventos. Un tercer concepto quetambién se asocia a 1os objetos son Ios métodos.

: % Un método es un procedimiento o funcibn (un programa) que ejecuta alguna acciônsobre el objeto.

E! formato para llamar a un método es el siguiente:

NombreDelobjeto.Método (argumentos opcionales)Observemos que aqui también se utiliza el punto.@ Mbdulos - Serie de procedimientos genérlcos, declaraciones de variables ydefiniciones de constantes para toda Ia aplicaciôn.

Pasos para el desarrollo de una aplicaci6nSon 3 :

1 . Dibujar Ia interfaz de usuario.2. Asignar pfopiedades a Ios controles.3. Escribir côdigos para 1os controles.

Preparando Ia interfaz de usuarioVisual Basic trabaja en 3 modos diferentes:

1 . Modo Diseso.2. Modo Ejecuciôn.3. Modo Interrupcibn. (Ia aplicaciôn se detiene para que podamos depurarlo)

Page 188: Excel Profesional 2010

p.yilCap:ulo b'1:

Lo primero que precisa realkar es que el nivel de seguridad de Excei esté establecidocorrectamente para que pueda utilizar Ias macros rocedimientos de VBA) que va a$11 (1 () i; ël rrtlllll r. . . 5..1(1.) .0 s 1 It a I r :: c Ih (. j eDesde Ia ficha ''Programador'', haga clic en J..j grabar macro?# 'Ij -1la cinta sobre el botôn ''Seguridad de ,macros''. verificar que el segundo botôn ue . ,bu,l , ,,(,c.ro ciôn '-oesuabilitar todas Ias maoros con 'saslc .-tL lëlvr,dad de macro:Pnotificaci6nW esté activado y Iisto. ccdlgo

Page 189: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

Las Tres Ventanas en el Editor de Visual BasicCuando se trabaja con el VBE siempre se deben tener 1os 3 paneles como muestra Iaimagen de Ia pégina siguiente.1 . La ventana de1 Proyecto (1 ),2. La ventana de Propiedades (2), y3. La ventana de cbdigo (3)Las ventanas estén dispuestas, como se indica en Ia imagen inferior.Usted puede cambiar el tamafsch de 1as ventanas haciendo un clic sostenldo sobre 1osbordes de cada panel. Para un mejor entendimiento se muestran asteriscos en Ias éreasdonde Usted puede redimenslonar Ios paneles

Configuracibn deI entorno de VBE

En el siguiente ejercicio. va a configurar Ios tres paneles dei VBE.La ventana del editor de Visual BasicEjercicio 1 (Cree su primera macro)Recuerde que usted va a reailzar esta tarea una sola vez ya que cada vez que abraVBE se mantendrâ Ia ctmfiguraclbn.

Page 190: Excel Profesional 2010

Paso 1 : Cierre todas 1as ventanas que estén abiertas en VBE.

Paso 2: Vaya al menû ''Ver'' y haga clic en ''Explorador de proyectos''. El resultado seréalgo parecido a ia imagen inferior:

Page 191: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

S1 Ia ventana de1 proyecto aparece en el centro de Ia zona gris como ia imagen anteriorhaga clic en Ia barra de titulo y arrastre hacia Ia izquierda. Cuando suelte el botbn deIhaga clic en Ia barra de titulo y arrastre hacia Ia izquierda. Cuando suelte el botbn deIratôn, el resultado final debe ser como se muestra en Ia imagen inferior. Enhorabuena, haconfigurado Ia primera ventana principal de VBE.

Paso 3: Para cambiar el tamaqo de Ia venta de1 proyecto. Mueva ei cursor sobre la Iineague separa la ventana de1 proyedo y el recténgulo gris. Cuando se convierte en dosIineas paralelas pequeKas haga clic en Ias flechas, sostener y arrastrar segtln el tamasodeseado.Paso 4: Vuelva a Ia barra de menû ''Ver'' y haga clic en ''Ventana Propiedades''. Laventana de Propiedades apareceré algo asi como en Ia imagen debajo.

Page 192: Excel Profesional 2010

<. .'! ''r . - I&Cap:ulo b'I:

Page 193: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Paso 5: Mueva el cursor sobre Ia Iinea que indica Ia fiecha de Ia figura y cuando seconvierte en dos Iineas paralelas pequefsas arrastre para cambiar el tamaqo de 1as dosventanas en caso de ser necesaria.Paso 6: Para agregar Ia ventana de cddigo, haga doble clic en el nombre de uncomponente en la ventana deI proyecto (Hojal , Hojaz. Hoja3 o ThisWorkbook) y suventana de c6digo aparece en el rect*ngulo gris. Usted puede maximizar la ventana deCbdigo. haciendo clic en el botôn Maximizar.Otra forma de actlvar Ia ventana de côdigo es haciendo clic en el menû Ver y Iuego cpicen Côdigo.E1 resultado final se parece a la imagen de Ia parte inferior. Las palabras ''Option Explicit''no pueden estar presentes en Ia ventana Côdigo. Este tema se tratarâ mâs adelante enla Ieccidn sobre Ias variables. También podria tener un nombre VBAprojectFUNCRES.XLA FUNCRES.XLAM o en Ia ventana deI proyecto. De ser asi no realiceningûn cambio.

Paso 7: Ahara puede cerrar Excel. Vuelva a abrlr Excel, vaya a Ia VBA (ALT + F1 1) y yaestâ llsto para trabajar en el Editor de Visual Bésico.

Creaci6n y uso de ProcedimientosPara insertar el côdigo que realizaré los requerimientos de1 usuario se deben emplear Iosprocedimientos Sub.Un procedimiento Sub Ilamado también Procedimiento es un conjunto de c:digo querealiza determinadas tareas.Queda definido entre las expresiones Sub y End Sub

' 188 Programa Nacionol de Informdtica

Page 194: Excel Profesional 2010

p.yilCap:ulo T1:

Debe entenderse que no estâ permitido anidar procedimientos, entonces forma correctade emplearlos es Ia siguiente'.Forma Correcta Forma Incorrecta.

Sub Nombre Procedimientot ) Sub Nombre procedimientot )rnstruccibn 1 Sub Nombrezt )Instrucciôn 2, . . . End Su bE n d .$ u b E n d .$ u b

Se tienen dos tipos de procedimientos Sub:@ De Evento y@ Generales

Procedimientos de EventoLos procedimientos de evento son Ios que responden ante un evento aplicado por elusuario como por ejemplo un Clic, un ciic derecho o presionar Ia tecla Enter, etc.Un elemplo con cbdigo seria el siguiente:Private Sub cmdsaludo Clickl)Msgbox ''iliola Amigosl''Msgbox ''ivamos a empezar con VBAI''En d S u b

En este caso el nombre de1 procedimiento es cmdsaludo ClickQue se Ie conoce también como procedimiento de evento, pues responderé con Iaejecuciôn deI côdigo cuando el usuario haga clic en el botbn de comando asociado.

Private Sub cmdsaludo Clickt)Msgbox '' i Hola Amigos'il'S a I udos 'Msgbox ''ivamos a empezar con VBAI''Irci'. E n d S u b

Procedimientos GeneralesLos procedimientos generales son creados para realizar un célculo o una operacitmdonde no participe el usuario.

Page 195: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

Un ejemplo con côdigo seria el siguiente:

Private Sub Calcular areatlado as integer)Xreazz lado * lado -E n d S u b

Llamada al procedimiento GeneralEn este caso para que se ejecute el procedimiento hay que ''Llamarlo'' mediante sunombre'. CaI cu Iar a rea(5)Hay otro tipo de procedimientos de Ios que no hemos hablado, se llaman procedimlentosFunctioll. También conocidas como Funciones.

Tienen Ia particularidad de que pueden devolver un valor, pero de eso hablaremos en elûltimo capitulo.

Objetos, propiedades, métodos y eventosPara crear el côdigo que responderé a 1os requerimientos deI usuario se deben emplearObjetos.Todos Ios objetos deI Ienguaje Visual Basic tienen sus propias propiedades, métodos yeventos. Entre estos objetos se incluyen Ios formuiarios y Ios controles.k'/ Las propiedades pueden considerarse como 1os atributos de un objeto,z/ Los métodos como sus acciones yQ' Los eventos como sus respuestas.

Un objeto corriente como un globo de helio tambièn tiene propiedades, métodos yeventos. Las propiedades de un globo incluyen atributos visibles como su altura,diémetro y color. Otras propledades describen su estado (inflado o desinflado) o atributosque no se ven, como su antigùedad. Todos Ios globos tienen estas propiedades, aunquesus valores pueden diferir de un globo a otro.Un globo también tiene métodos o acciones conocidas que puede realizar. Tiene unmétodo para inflarse (Ilenarlo con helio). un método para desintlarse (expulsar sucontenido) y un método para elevarse (soltarlo). Todos Ios globos pueden utilizar estosmétodos.Los giobos también tienen respuestas a ciertos eventos externos. Por ejemplo, un globoresponde al evento de ser pinchado (desinflarse) o al evento de ser soltado (elevarse).

Page 196: Excel Profesional 2010

p.yilCap:ulo b'1:

Propiedades, métodos y eventos

PropiedadesSi pudiera programar un globo, el cbdigo de Visual Basic podria parecerse a! sigulente''c6digo'' que establece ias propiedades de un globo.Globo.color = RojoGlobo.Diametro = 10Globo.lnflado = TrueObserve el orden deI cbdigo: el objeto (GIobo) seguido por Ia propiedad (CoIor) seguidapor Ia asignacidn dei valor (= Rojo). Puede cambiar el color de1 globo sustituyendo unvalor dlferente.

MétodosLos métodos de un globo se denominan de este modo.Globo.lnflarGlobo.DesinflarGlobo.Elevaqs)EI orden se parece al de una propledad, es decir, el objeto (un nombre), seguido deImétodo (un verbo). En el tercer método, hay un elemento adicional, Ilamado argumento,que especifica la distancia a que se elevaré el globo. Algunos métodos tendrén uno omés argumentos para descrlbir aùn més Ia acciôn que se va a realizar.

Page 197: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

EventosE! globo podria responder a un evento de Ia sigulente manera:

Sub Giobo Perforaq)G 1 o b o H '-a ce r R u i d ($' P u m p '' )Globo.DesinflarGloba.lnflado = Falso

E n d S u b

En este caso, el côdigo describe el comportamiento deI globo cuando se produce unevento Perforar. Cuando se produce este evento, Ilama al método de HacerRuido conun argumento ''Pump'' (eI tipo de ruido que debe realizar) y, a continuaciôn. Ilama almétodo Desinflar. Puesto que el globo ya no esté inflado, Ia propiedad Inflado seestablece en Falso.Si bien en realidad no puede programar un globo puede programar un formulario ocontrol de Visual Basic. Como programador. es el responsable. Decida Ias propiedadesque se deben cambiar, Ios métodos que se deben invocar o Ios eventos que se debenresponder para lograr ia apariencia y ei comportamiento deseados.

Definicidn de variables, tipos de datos y constantesUna variable es un elemento deI c6digo que apunta a una direcciôn de memoria endonde se almacena un dato.Haciendo referencia a Ia variable se puede devolver el dato al que apunta e inclusomodificarlo.Las constantes son similares a Ias variables, sôlo que su contenido se le asigna en elmomento en el que se declaran y después no es posible cambiarlo.Una variable queda definida cuanda se especifica:Q' EI nombre de la variablekk EI tipo de dato al que apuntaQ' EI *mbito en el que es visible.

Conslruccién deI nombre de una variable (0 constante).NombreEi nombre de una variable esté compuesto por caracteres ASCII.Para Ia creaciôn de variables se debe tener en cuenta Ias siguientes reglas:â' No se pueden usar caracteres que tienen un uso especial en Excel como son elPunto ''.'' ios paréntesis ''('' ')' Ia barra vertical '1'' o 1os caracteres que se puedenutilizar como operadores', entre eilos + - I * < >.

Q' Una variable debe empezar por una Ietra th por el slgno de subrayado72' Estos nombres serian correctos 10 que no quiere decir que sean aconsejabies.

dr A12335 Peps A42P2- il nombre de una variable no puede tener espacios en blanco.

Page 198: Excel Profesional 2010

p.yilCap:ulo b'1:

d Por ejemplo no seria vélido el nombre Apellidos Nombre.d En cambio si seria v*iido Apellidos Nombre (') ApellidosNombre.d Una variable puede terminar con Zn carécter de declaracitm de tipo % & !#@$

Estos caracteres s6lo se pueden usar al final deI nombre de Ia variable.Nota: Estos caracteres también se pueden usar para declarar el tipo de datoque devuepve una funcitm.Por ejemplo esta cabecera de funciôn seria vélida:Public Function Nombrest)Que seria equlvalente a:Public Function Nombret ) As String!! No se puede usar como nombre de variable una palabra reservada deVBA.Por elemplo no se pueden usar String, integer, For, rf como nombres devariable.

d EI nombre de una variable puede tener hasta 255 caracteres

Tipos de datosAdemés de Ias Varlables hay otra serie de elementos que manejan datos, como son IasConstantes, Procedimkentos Sub y procedimientos Function gue son capaces demanelar datos de distintos tipos, e incluso Ias funciones que devuelven datos.Pero &qué tipos de datos podemos manejar? Y &qué caracteristicas tienen? t.iiay variostlpos de datos?Entre estos tenemos Ios siguientes'.

@ Numéricos@ Booleanos@ Fecha / Hora@ De texto (cadenas)@ Variant@ De objeto@ Registros de datos definidos por el usuario, . . .

Datos numéricosExlsten dos familias de datos numéricos.rJ' Datos numéricos de nlimero entero.W' Datos numéricos de coma flotante.

Page 199: Excel Profesional 2010

,.:51Mkrœofk Office Excel profesioncd

Como datos enteros tenemos Ios si uientes ti os:Nombre ValorTamaiio Valor inferior Sufijo PrefijodeI Tipo Superior

bytByte 1 B#e B 2551ntInteger 2 Bytes -32.768 32.767 %

&Long 4 Bytes -2.147.483.648 2.147.483.647 Ing

Por Sufijo entendemos un carécter de definiciôn de tipo que se puede aqadir a iaVariable 6 Constante, para deflnlr el tipo al que pertenece.

Por ejemplo Dim ValorLargo&, declara implicitamente Ia variable ValorLargo como LongEsta declaraciôn equivale a Ia siguiente:

Dim Valorbargo as Long

Si hubiéramos hecho D1m Valort-argo, Ia variable Valort-argo se hubiera declarado comoVariant.

Ei uso de estos caracteres de definici6n de tipo, es una herencia de1 Basic primitivo.

Esos caracteres Sufijo se pueden tambièn aplicar a Ias declaraciones de constantes

Publlc Const Meses As Integer = 12Equivale a Public Const Meses% = 12

Si se utilizan estos caraderes, no hay que utilizar la declaraciôn explicita de tipo.

Por elemplo

D i m AI u mnoso/o As I ntege r

Daria error ya que seria una declaraciôn redundante porque Dim Alumnos% ya hadefinido Alumnos como Integer.

E! uso deI sufijo es aplicable también a Ios valores. Esto puede ser muy ûtil endeterminadas circunstancias.

Abra el editor de côdigo, y escriba 11 siguiente'

a = 1 28 * 1 280: Print a

Page 200: Excel Profesional 2010

p.yilCap:ulo T1:

Los dos puntos actûan como separador de Ias dos sentencias.

A1 presionar Ia tecla (Enter) aparece un mensaje de error de desbordamiento.Modifique la Iinea anterior y escriba Io slguiente (siempre en Ia ventana).

a = 1 28& * 1 280 : Print a

Ahora si imprime 163840

Ei error se produce porque VBA deduce que en la primera expresi6n debe producircomo méximo un valor deI tipo Integer (65536), y el resultado, esté por encima deIméximo admitido.En Ia segunda expresi6n al poner uno de Ios términos como Long usando 128&, haceque la expresiôn Ia considere como Long, gue admite perfectamente el valor resuitante.Otro caso de desbordamiento'. Para ver que el error no Io produce 'a'', sino la expresiôn,escriba directamente en Ia ventana inmediato Io sigulente:

Print 256 * 256

Se produce exactamente el mismo error.

En cambio sl escribe

Print 256 * 256&

E! error desaparece.

PrefijoPor prefijo se entiende por un ccmjunto de Ietras que ''es aconselable'' poner delante deInombre de una varlable, para indicarle a Ia persona que escribe, 6 lee, el côdigo, el tipode dato que contiene una variable.

Declaraciones mliltiples en una linea.VBA permite deciarar mùltiples variables en una misma Iinea de c6digo.La forma correcta de hacerlo sigue esta estructura:

Alcance Variablel As Tipo, Variablez As Tipo, Variable3 As Tipo

Por ejemplo esto seria correcto

D1m Ingunidades As Long, strNombre As String

Page 201: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Otros Ienguajes de programaciôn permiten hacer una declaraciôn deI siguiente estilo:

D1m strNombre, strApellidol , strApellidoz As String

Tras esto 1as tres variables serian deI tipo String.En cambio en VBA, si hubiéramos declarado asi Ias variables, strhlombre y strApellldolserian deI tipo Variant, y strApellidoz seria deI tipo String.

ConstantesUna constante es un valor que no cambia y puede ser un nûmero un texto una fecha oun valor Ibgico.Eiemplos: 1 23. 145.67, 'Llma'. ''MiIi'', ''Pasjonal', 1 1/07/1958

Declarar Ios tipos de datosUn elemento de programaciôn se define ctm una instrucciôn de declaraclôn y su tipo dedatos se especifica con Ia cléusula As. La siguiente tabla muestra Ias instruccionesutilizadas para declarar diversos elementos.

En una Instrucciôn Dim (Visual Basic)Dim monto As DoubleStati.c tunoere As StringPubli.c precio As Decimal = 0

Literal Con un carécter de tipo de Iiteral; vea ''Caracteres de tlpo deIiteral'' en Caracteres de tipoDim caracter As char = '' '' c

Constante En una Instrucciôn Const (Visual Basic)const valorp:k As Single = a . 141516

Enumeracibn En una Instrucciôn Enum (Visual Basic)mzbli.c Ent:n colores

Propiedad En una Property (Instrucciôn)Property areat) As String

Parimetro de En una Instrucciôn Sub (Visual Basic), Instruccidn Functionprocedimiento (Visual Basic) o Operator (Instruccibn)

sub calcule (Byval monto As Double)Argumento de En el c:digo de Ilamada', cada argumento es un elemento deprocedimiento programaciôn que ya se ha declarado o una expresiôn que

contiene Ios elementos declaradossubcadena = Lef t ( cadena 5 )

Valor devuelto por En una Instrucciôn Function (Visual Basic) o Operatorprocedimiento (Instrucciôn)

Punction convlertefByval a As Byte) As String

Page 202: Excel Profesional 2010

p.yilCap:ulo T1:

Estructuras de programaclbnLas estructuras de control son segmentos de côdigo que permiten tomar decisiones enbase a unos datos dados. o repetir procesos (bucles) mientras sucedan determinadascondiciones en los parémetros controlados por el côdigo.

Las de uso frecuente son 1as siguientes'.@ Secuencial@ Selectiva@ Repetitiva

SecuencialLa més sencilla, simplemente indica una secuencia deacciones a ser ejecutadas de forma consecutlva.La composici6n secuencial no es conmutativa

Accldn la=20br 30c I a + b AccidpA 2print c

Exlste una notacitm alternativa, separando Iassentencias mediante el carécter;

Accbn n

a=2();br3()c = a + b; print c

Selectiva (simpler doble y mtiltiple)Evalûa una condicibn y realiza una accibn diferente cuando el resultado de una condiciônes verdadero o cuando es falso.

Page 203: Excel Profesional 2010

En este caso se deben evaluar doscondiclones, de acuerdo aldlagrama si el resultado de Iaprimera condici6n es falso, seevalûa ia segunda condicidn ytambién se realjzaré una acciôncuando se tiene un resultadoverdadero y otra cuando elresultado es falso.

Page 204: Excel Profesional 2010

p.yilCap:ulo T1:

Construcciones With-End-With, For-Each-Next, If-Then, Select Case.

Vlsual Basic permite probar condlciones y realizar diferentes operaciones en funciôn de1os resultados de la prueba. Puede comprobar sl una condiciôn es verdadera o falsa, Iosdistintos valores de una expresiôn o Ias diferentes excepciones que se generan alejecutar una serie de knstrucciones.

Construcciôn lf...Then...EIseLa lnstruccl6n lfPermite ejecutar un grupo de instrucciones de cbdigo, en funcibn al valor de unaexpreslôn sea Verdadera o Falsa True / False.

Primera FormaLa forma més bésica de esta instrucciôn es:If t ;Ji' ' t'/ ( ' t'a ' l Then t : '' ..!' è 7 '?' r.' J ) 1 J 'r 'Condlclin debe ser una expresibn, numérica, relacional t, I6gica que devuelva True 6False.Por ejemplo:If Divisor<>o then Cociente = Dividendo/Divisor

Sl el valor de Ia variable Divisor es diferente a Cero, entonces la variable Cociente tomael valor de la divisithn entre Ia variable Dividendo y Ia varlable Diùsor.Esta forma de Ia instrucci6n If sôlo se puede poner en una ûnica Iinea de cbdigo, aunqueadmite mûltiples instrucciones separadas por Ios dos puntos .'1..

If Divisor<A'o then C = Dividendo/Divisor : Debug .print C

Segunda forma

If condlciôn ThenLlnstruccionesjEn d If

Page 205: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

EI ejemplo anterior podria haberse escrita:If Dlvlsor<>o thenCociente = Dividendo/DivisorEn d If

Esta forma permlte Ia ejecuclôn de varias Iineas de sentencias entre Then y End If.Esta sintaxis es preferible, ya que genera un c6dlgo mâs claro de interpretar.La instruccbn If permite ejecutar otro grupo de sentencias, sl el resultado de Iaevaluaclbn de Ia expreslôn fuera falso.

If condlci6n ThenLlnstruccione.s para el caso de que condiclôn aearrtle)

ElseLlnstrucciones para e/ caao de que condici6n aea False)

End If

Page 206: Excel Profesional 2010

p.yilCap:ulo b'1:

En este caso. al evaluar Divisor <> 0 devuelve False. se qecutarâ Ia linea que apareceentre Else y End If, con Io que mostraré el mensaje de error. 'No puedo dividir entretlertp'Estas sentencias admiten usar Else If. Es una nueva evaluacién tras una anterlor dacomo resultado falso.Suponga que quiere hacer una funcitm que devuelva el Nombre deI distrito donde seencuentra una sucursal en funciôn de su c6digo.La Iista de côdi os se muestra en Ia si uiente tabla:C6digo Distrito de Ia sucursal1 Lima2 Lince4 Rimac6 Comas7 Los Olivos9 Puente Piedra12 San Martln de Ponas14 Ventanilla20 Ancén50 Otro Distrito

E'em lo 'If Codigo < 1 C)r Codigo > 50 Thendistrito = ''Cbdigo de Distrito incorrecto''Elself Codigo = 1 Thendjstrlto = ''Lima''Elself Codigo = 2 Thendistrito = ''Lince''Elself Codigo = 4 Thendistrito = ''Rimac''Elseëf Codigo = 6 Thendistrito = ''Comas''Eiself Codigo = 7 Thendistrito = ''Los Olivos''Elself Codigo = 9 Thendistrito = ''Puente Piedra''Elself Codigo = 12 Thendistrlto = ''San Madin de Porras''Elself Codigo = 14 Thendistrito = ''Ventanilla''Elself Codigo = 29 ThenDistrito = ''Ancôn''

Elsecod = ''Otro Distrito''End lfCon este eiemplo el cbdigo 7 devoiveria ''Los Olivos''.

xProgramu Noti/nal de Informtiticcl X 2O1

Page 207: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

Nota:Las instrucciones lf se pueden anidar, (poner unas dentro de otras).If comparacibnl Then% % (Instrucciones de 11If compaïaciônz Then(Instrucclones de 2)En d If

A continuaci6n tiene un ejemplo que utiliza Elself.If LReglon =''N'' TlzenNombreRegion = ''Norte''Elself LRegion = ''S'' TlkenNombreRegion = ''Sur''Elself LRegion = ''E'' TiàenNombreRegion = ''Este''Elself LRegion = 1'0'. ThenNombreRegion = ''Oeste''End If

La Funciôn lIfEs una funciôn similar a Ia estructura If . Then . . ElseDevuelve uno de dos valores posibles, en funcitin deI resultado de una expresiôn:

Page 208: Excel Profesional 2010

p.yilCap:ulo b'1:

.. p: % N o t a :='' El operador Mod devuelve el resto de dividir Ntimero entre 2.

Construccién Select...caseCon If . . Then es poslble crear estructuras de decisiôn complejas como Ia funciônDistrito de1 ejemplo anterior. Pues muchas evaluaciones de Ias condiciones nomuestran una claridad en el c6digo empleado.

Para este tipo de casos existe en VBA Ia instrucciôn Seiect Case que simplifica esasoperaciones creando un côdigo més potente ordenado y claro.

Si vemos Ia ayuda de Access podemos Ieer que Ia sintaxis de Select Case es.

Select Caseexp' edztfn-pwc/?rz(Cn

'

se hzta c

'

x.prcdzcln-./Lmstlzlc-clones-ljj ...(Case ll.vta c

'

xrréwcw-.zLlnstl'uc-c'ones-zjj ...

((? ase llsta cxrr/ajozs-pLlnstlzlcclonen-tljj ...

((2 ase >zlseLlnstlzlcclonen cF.çe11

E n d Select

expreslnn-poueba Debe ser un a va dable o expresiôn qu e devu elva u na caden a :un ntimero.

llsta expresion Son una serie de valores, deI tipo que da expresiôn prïzelha.- SI expresl6n prtzef)a coincide con alguno de los val-ores dellsta expresin, se ejecutarén Ias instrucciones que existen aconirnuaciôn, hasta Ilegar al siguiente Case, 6 End Select.

A partir de este punto se saldria de Ia estructura y se seguiria con el sigulente côdigo.S1 no se cumpliera Ia condiciôn de ninguno de Ios Case Iista expresion y hubiera unCase Else se ejecutarian Ias Iineas de côdigo contenjdo a partir de Case Else.

Page 209: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Ejemplo de las expresiones que pueden estar contenidas en Ias Iista expresion'.

Case 1Case 2 ,4 6,8 , 1 0Case 1 To 50, 1 , -2Case I s < 5Case Is > 1 3Case Is >= intMeses

Vea un ejemplo para aclarar el concepto'.Debe crear una funciôn que cualifique e! tipo de pagarés en funcl6n de1 tiempo quequeda hasta su cobro.

Dias Vencimiento AccifmAntes de hoy Pago vencidoHoy Vence Hoy1 a 5 dlas Cobrar de inmediatoMenos de 61 dias Corto PlazoMenos de 121 dias Largo Plazo

La funciôn recibiré como parémetro Ia fecha de vencimiento. Si ia fecha es anterior al diade hoy, deberé devolver Ia cadena 'Pago vencido''. Si es deI dia de hoy ''Vence hoy'', siquedan entre 1 y 5 dias ''Cobro inmediato', si menos de 61 dias ''Corto Plazo'' si sonmenos de 121 dias 'Medio Plazo'' y si es mayor ''Largo Plazo'

D1m IngDias As Long' Date devuelve Ia fecha de hoylngDias = Vencimiento - DateSelect Case IngDiasCase Is < 0 ' S1 IngDùas es menor que ceroTipovencimiento = ''Pago vencido''

Case 0 ' S1 es ceroTipovencimiento = ''Vence hoy''

Case 1 , 2, 3,4,5 ' De 1 a 5Tipovencimiento = ''Cobro inmediato''

Case 4 To 30 ' De 4 a 30Tipovencimiento = ''Corto Plazo''

Case 31 To 1 80 ' De 31 a 1 80Tipovencimiento = ''Medio Plazo''

Case Else ' Si ninguno de Ios anterioresTipovencimiento = ''Largo Plazo''

End Select

' 204 programa Nacionol de Informdtica

Page 210: Excel Profesional 2010

p.yilCap:ulo T1:

Aqui se muestran algunas de Ias poslbilidades de elaboraciôn de Ia Iista expresjor?.Case Is < 0 Is se puede utilizar junto con operadores de comparaclbn. -Estos operadores son:

Operador Significa= Igual a< Menor que<= Menor (b igual que> Mayor que>= Mayor 6 igual que<> Diferenle que

Se pueden utilizar diferentes expresiones separadas por comas.Esta linea seria véilda:

Case 1 s < 0, 4 , 8 , is > 1 0

Se ejecutarian Ias ljneas correspondientes al Case para cualqu@er valor que sea menorque 0, mayor que 10 (') si su vajor es 4 u 8. Este sistema también puede aplicarse acadenas de texto.Si desea clasificar a Ios alumnos de Senati, en funcibn de su apellido. Aquéllos cuyoapellido empiece por una Ietra comprendida entre la A y Ia D pedenecerén al grupo 1 ,entre Ia E y Ia L al grupo 2, entre Ia M y Ia P al 3 y entre Ia Q y Ia Z al 4.La fu nciôn seria :

Apellido = TrimtucasetApellidol)Select Case Apeilldo

Case ls < ''E''Grupo = 1

Case ''E'' To ''LZZZZ''Grupo = 2

Case ''M'' 7o ''P7V7z''Grupo = 3

Case 'Q'' 7o ''TZZZZ''Grupo = 3

Case 1s >= ''U''Grupo = 4

End Select

Page 211: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

Nota:Se ha utilizado. como auxiliares dos funciones de VBA. La Iinea:

Apellido = TrimtucasetApellidol)Primero se aplica Ia funcidn Ucase para conviertir Ias minûsculas que pueda haber enApellido a Mayûsculas y la funcibn Trim para eliminar Ios posibles espacios en blancoque pudiera haber a Ia izquierda y a Ia derecha de Apellido.En concreto, si Apellido contiene el valor ''Olivos'', lo convertiria a ''OLIVOS''.La funcibn Grupot'' Olivos ''), devolveria el valor 3.AI ser ''OLIVOS'' mayor que ''M'' menor que '%Pz777'' ejecutaria Ia Iinea9Grupo = 3Nota:Para que dos cadenas sean iguales deben tener Ios mismos caracteres.La cadena A es menor que Ia cadena B sj aplicando Ios criterios de ordenaclôn. A estariaantes que B. En este caso podemos decir que B es mayor que A porque si estuvieran enuna Iista ordenada alfabétcamente, B estaria después que A.Para deflnir si ''OLIVOS'' es menor que ''Olivos'' th es igual, se especifica en Ia prmeraIinea que aparece en el môdulo.

Option Compare TextlBinaryA continuacibn de Compare puede utiiizar Text ($ BinaryQ' Si aparece Text, Olivos serla igual a OLIVOScè' Si aparece Binary Olivos seria mayor que OLIVOSk'/ Si aparece Database utilizaria el criterio de ordenacitm por defecto de la base dedatos.

La expresltin Cadenalnferior To Cadenasuperior se utillza de forma simiiar aValorNumericolnferior To Valorhlumericosuperior

En Ia funciôn Tipovencimiento tiene Ia siguiente Iineax' Case 1 , 2, 3 ' De 1 a 3. si Iadiferencia de dias es de 1 , 2 (') 3 se ejecutara el cédigo de ese Case.Esta forma de generar una lista de comparaciones también se puede realizar concaracteres de texto. Seria vélido por ejemplo Case ''A'' ''B'' ''C''Bucles For-Next, While-Do, Do-untilEn caso tenga que construir una funciôn que devuelva el Factorial de un nflmero.Nota:Recuerde que Factorial de n es igual a 1*2*3* *(n-1)*n para n entero y mayor quecero.

Adicionalmente se deflne que Factorlal de Cero tiene el valor 1 .

Page 212: Excel Profesional 2010

p.yilCapikulo b'1:

Cômo se haria esta fu nciôn :

D 1 m 1 As lntegerFactorlal = 1For 1 = 1 To nFactorial = Factoriai * iNext 1

For anidados

Caso: Tabla de MultipllcarTiene que generar un procedimiento que muestre Ias tablas de multiplicar que van deI 1al 10. Entonces se deben anidar dos For, taI como se muestra a continuacibn

Pubiic Sub TablasDeMultiplicaq )D1m n As Integer, m As IntegerFor n = 1 To 10Debu Prlnt '' ''g .For m = 1 7o 1 ODebug.print n & '' x '' & m & '' = '' & n * mNext mNext nE n d S u b

Para cada valor gue tomara n. ejecutaria el bucle completo de For m - Next m.imprimiendo en la ventana Inmediato 1os resuitados de Ias tablas

3 x 8 = 243 x 9 = 273 x 1 0 = 30

6 x 1 = 66 x 2 = 1 26 x 3 = 1 8

6 x 9 = 546 x 1 0 = 60

En Ios ejemplos anteriores se ha utilizado la estructura més tipica de VBA para Iacreacibn de Bucles.La instrucciôn For rn - Next m., repite el côdigo contenido entre Ia linea que contiene Iapalabra For y Ia linea que contiene a su correspondiente Hext.

Page 213: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

Su sintaxis esFor contador = prlnciplo To lIn Istep incrementojLlnstruccionesjIExit For!LlnstruccionesjNext IcontadodContador es una variable numérica que iré tomando sucesivos valores con incrementos($ decrementos Iguales. Si no se pusiera el valor lncremerlto, el contador vaaumentando en una unidad cada vuelta.EI côdigo se 1r* repitiendo hasta que contador tome el valor de tïn. (') se encuentre con Iainstrucciôn Exit For.

En el siguiente ejemplo. el bucle For Next se ejecutaré hasta que Ingsuma sea mayorque 1 00, momento en que saldré de1 bucle o se imprima el nûmero de imparesespecificado en el parémetro Numero.Si el parâmetro Ntimero fuese cero ($ menor se sale directamente deI procedlmiento sinejecutarse el bucle.Public Sub ImprimelmparestNumero As Long)D1m 1 As LongD1m lnglmpar As LongD1m lngsuma As LongIf Numero < 1 ThenExit SubE n d IfFor 1 = 1 To NumeroIng I mpar = 2 * i - 1Ingsuma = lngsuma + Inglmparlf Ingsuma > 10Q ThenExit F(7rEnd lfDebug.print i & '' - '' & Inglmpar & '' - '' & lngsumaNext 1En d S u b

La Ilamada al procedimiento se haria, por ejemplo para 6 impares

Sub demot)tmprlmelmpares 6E n d S u b

Despuès de la palabra Next, no es imprescindible escribir el nombre de Ia variable quesirve como contador. Por ejemplo este bucle es v*iido a pesar de no escribir Next i.

Page 214: Excel Profesional 2010

p.yilCapikulo b'1:

For 1 = 1 To 10De k)u g . P ri nt iNext

La Instrucciôn For Each - - - NextEs similar a la sentencla For. sôlo que esta sentencia repite un grupo de instruccionespara cada elemento de una coleccibn th una matrlz, siempre que ésta ûltima no contengauna estructura tipo Registro, definida por el usuario.

La sintaxis es'For Eacll elemento In grupo(fnl/zwccftprledlExit ForlLinstruccioneajNext LelenentojComo en el caso de For - - - Next, es posibie salir deI bucle utilizando la instrucciônExit For.

Esta estructura es Ia més apropiada para emplearla con Ias Colecciones. EI siguienteejemplo extrae elementos de una Matriz.

Public sub ForEachconMatricesl)Dim Datost) As string para probar el cbdigo debe:Dim Dato As Variant'Llamamos al procedimiento Ci' lngertar el Odigo deI ejemploQue rellena Ia matriz con dat-os (ForEachconMatrices yRellenaMatriz Datos RellenaMatrlz) en Ia ventana de'Leemos Ios elementos de Ia matriz Odigo.For Eac: Dato In Datos 2/ Luego, Pulse Ia tecla F5Debug.print Dato *' Vea Ios resultados en la ventana

Next Dato lnmediatoEn d s u b

Public sub RellenaMatrizlByRefMatriz As Variant)Dim i As LongReDim Matriztl To 20)For i = 1 To 20Matrizti) = ''Dato '' & Formatti 1.00'')Next 1En d Su b

Page 215: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

De este ctldlgo Io ûnico que no se ha visto es:

Matrizli) = ''Dato '' & Formatti ''00..)La funcitm Format se revisar: més adelante. Aqui lo que hace es asadir '101'1 ''02'' ,,03'' .. .'10.' de forma sucesiva a Ia cadena ''Dato''E! resultado de este procedimiento es

Dato 01Dato 02

Dato 20

Bucles WhileLas Instrucciones While - - - Wend

La estructura de bucle

For Contador = Valorlnicial To ValorFinalStep Salto

Next Contador

Realiza una iteraciôn, una repeticiôn de1 cthdigo un nùmero de veces que resultaprevisible en funclbn de Ios valores Valorlnicial, ValorFinal y Salto.

En Ias sucesivas iteraclones, Ia variable Contador va tomando valores que varlan deforma constante entre un ciclo y otro.Ei côdiga inciuido en el bucle se ejecutaré al menos una vez, aunque fuera de formaincompleta si en su camino se tropezara con una sentencia Exit For.

Se necesita una estructura que se vaya ejecutando mientras el valor que va tomando unavariable cumpia determinadas caracterjsticas, y ademâs que esa variable pueda cambiaren forma no Iineai.

Para realizar esta tarea podemos contar con la estructura While - - Wend.Este tlpo de estructura ha existido desde 1as primeras versiones de Basic.

Esta estructura tiene la siguiente sintaxisWhile condlci6nflnstrucclonesjWend

Page 216: Excel Profesional 2010

p.yilCap:ulo b'1:

Condicinn es una expreslôn numérica o de tipo texto, que puede devolver True, False thNuil. Si devolviera N ull, While Io consideraria como False.

Las Instrucciones de côdigo se ejecutarén mientras la condicl6n de cômo resultadoTru e .

Para crear un procedlmiento gue muestre Ios valores que va tomando una variablemientras sea menor que 100.Los vaiores que iré tomando ia variable serén cada vez el doble que la anterior.Puede hacerse de esta forma

Public Sub PruebaWhilet)D1m lngcontrol As LongIngcontrol = 1While Ingcontrol < 1 00Debtlg.prtnt lngcontrolIngcontrol = Ingcontrol * 2WendEn d S u b

Este cbdigo nos mostrarâ en Ia ventana inmediato'.

12481 63264

Tras efectuar el séptimo cicio, Ia variable Ingcontrol tomaré el valor 128. por Io que Iaexpresibn Ingcontrol < 100 devolverâ False.Esto haré que el côdigo pase a la Iinea siguiente a Wend, con Io que ei procedimiento deprueba fjnalizaré.Una utilizacibn tradicional para While - - Wend ha sido Ia Iectura de archivossecuenciales de texto, utilizando Ia funclbn Eof.Esta funci6n, mientras no Ilega al final deI archivo devuelve el valor False.Cuando Ilega al final devuelve el valor True.Por ello el valor Not Eof, mientras no se haya Ilegado al final deI fichero, devolveré Iocontrario. es decir True.

Page 217: Excel Profesional 2010

! .,?t11; 1:2 IMkrœofk Ofhce Excel profesionul

Veamos el slguiente cbdiio'.

Public Sub MuestraArchivotByval Archlvo As String)D1m intArchiva As IntegerD1m strl-inea As StringintArchivo = FreeFileOpen Archivo For Input As #inGrchivoWhile Not EoFtintArchivo)Line Input #intArchivo. strl-inea

Debug.print strl-ineaWe ndEn d S u b

êste es e! cbdigo para Ieer el contenido de un Archivo secuencial. Se utdlizar: Iaestructura While - - Wend, que traducldo a Ienguaje humano quiere decir'a) Mientras no Ilegues ai final deI Archlvo #intArchivob) Lee Ia Iinea deI Archivo, hasta que encuentres un retorno de carro y asignaselo a Iavariable strl-inea.

c) Imprime e, contenido de Ia variable en ia ventana Inmediato.d) Vuelve a Ia Iinea de While para repetlr el proceso

Para probar el procedimiento MuestrMrchivo, realice Io siguiente:

Sub pruebat)MuestraArchivo (''C:ïago.txt'')E n d Su b

Bucles DoLas Instrucciones Do - - . LoopEI conjunto de instrucciones While - - Wend permite crear bucles que se ejecuten sôio siuna variable, o expreslbn toma determinados parémetros.

While . . Wend no posee nlnguna expresién que permita salir desde dentro deI bucle enun momento dado, s1n antes haberlo completado.

VBA posee una instrucciôn més potente, es Ia instruccibn Do - - . Loop.

Su sintaxis posee dos formas distintas de utilizaciôn.

Forma 1 :Do (Xhile I Untig condid6nj(/r?alrlzccklnes')

IExit Do)flnstrucclonesj

Loop

Page 218: Excel Profesional 2010

p.yilCap:ulo b'1:

Forma 2:DoVnstrucdonesjIExit DolflnstruccionesjLoop (WhEie I Untill condicltbnjVeamos Ia primera forma'.Despuès de Do puede seleccionar While condici6n 6 U ntil condld6n. S1 ponemosWhile, después de Do el bucle se ejecutaria mientras la condicitin sea cieda.Si escribe U ntil, el bucle se ejecutaria hasta que Ia condiciôn sea clerta. S1 Ia condiciônno fuese cierta no se ejecutaria el bucle tantas veces como ocurriria Whlle, como siescribiera Until despuès de Do.

Por Io tanto podria ocurrir, tanto con Whiie como con Until en funcitm deI resultado deCondici6n que no se Ilegara a ejecutar el bucle ni una sola vez.Si desea que siempre se ejecute al menos una vez el bucle, deberia usar While ($ U ntildespués de Loop.

En caso quiera escrlbir una funciôn a Ia que paséndole un nûmero entero posjtivo.indique si ese nùmero es 6 no primo.Nota:Recuerde un nûmero primo es aquél que sôlo es divisible por 1 6 por si mismo.

EI método que a emplear es:W Dividir e! nûmero entre valores enteros, empezando por e! dos, y a continuacitmpor 1os sucesivos valores impares hasta que encontrar un valor que divida deforma exacta al nûmero a probar (su resto = 0).Si el resto de la divisi6n da cero indica que el nûmero es divisible por ese valor,por lo que el nûmero no es prlmo y debe salir deI bucle.

k8' Seguir con el cicio mientras el valor por el que se va a dividir el nûmero no seamayor que Ia raiz cuadrada de1 nûmero.

Nota:: En este côdigo se ha usado para calcular Ia raiz cuadrada de un nûmero, elevar éste a% ns

En VBA hay una funciôn que calcula Ia raiz cuadrada directamente: SqrtNlimero).Es equivalente a NlimeroAo 5

Page 219: Excel Profesional 2010

! .,?t11; 1:2 IMkrœofk Office Excel profesionul

%. w'x<. . . p

'

1 .

Cimo realizar una repeticidn empleando Ias estructuras For, Do y While

1 . Ingrese a VBA e inserte un nuevo Médulo.Jnseear ëcrmatc îepura

Page 220: Excel Profesional 2010

p.yilCap:ulo b'1:

3. Luego. en una Hoja inserle tres botones de comandoAsocie el bottm Usando For con Ia macro: casofor.Asocle el bot6n Usando DO con Ia macro: casodo.Asocie el bottm Usando While con Ia macro'. casowhile.

Page 221: Excel Profesional 2010

5%

Page 222: Excel Profesional 2010
Page 223: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

' > Jow' *<..z . . . l . .

Page 224: Excel Profesional 2010

Trabajar con rangosSeleccionar una celdaEs posible seleccionar una celda o un rango. Para el caso de celda se puede emplearaiguno de 1as siguientes formas:

Forma 1 :

. En todos Ios ejemplos de trabajarEsta es I a fo rm a 1 d e selecc io n arcon rangos, el côdigo se debeSub Seleccionarl ()

11 Ir insertar en un nuevo môdulo y seRanget 174 l.select crearé una macro por cadaEn d S u bprocedimiento sub.

Forma 2:

' Esta es I a fo rm a 2 d e selecc Io n ar Para probar cada una de lasSub Seleccionarz () formas de selecciôn, ejecute comoIA1J.SeIect una MacroE n d S u b

Page 225: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

Forma 3:

' Fo rm a3 1 e seI ecc 1on a r'EI formato es: CeIIs(N0 flla N0 Columna)Sub SeleccionaB ()Cellst 1 , 1 l.selectE n d .S u b

Seleccionar un rangoTenemos 1as siguientes formas:

Forma 1 :' Esta es I aforma 1 para selecclonar el I'ango de celcias A 1 .*5Sub SelecclonarRl ()

Range(''A1 '.A5'').SeIectE n d Su b

Forma 2:

Sub SeleccionarRz ()'Forma 2 para selecclonal' el rango Cle celtas A1 A5

(B6 : B 1 0J .selectEn d S u b

Tenemos el caso en que se desea seleccionar un rango deI cual no se conoce sualcance porque va cambiando. Es el caso de una lista o tabla en Ia cual se agregannuevos registros. La instrucciôn CurrentRegion Excel selecciona todo el rango utilizado,asi se desconozca el tamaqo'

'Selecciona ia regiin actualSub SeleccionaBt)Selection.cucentRegion.select

E n d S u b

Page 226: Excel Profesional 2010
Page 227: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Insertar rangosEs posible insertar rango de celdas a partir de Ia celda activa, para ello debe emplear Iainstrucciôn Insert:

Sub Insertarll)'Inserta una nueva fila sobre Ia flla 4Rowst4l.lnsed'Inserta una nueva columna a Ia izquierda de Ia columna CCoIumns(''C'C'' Insed. ).'También inserta una nueva columna a Ia izquierda de Ia columna Dpll.Entirecolumn.lnsert'Inserta una nueva fila sobre Ia fila 4IAzll.EntireRow.lnsert

End $ub

También es posible insertar nuevas filas o columnas como existan en el rango:

Sub Insedazt)'Inserta 3 nuevas columnas a Ia izquierda de Ia ccdumna CRanget''c 1 : E 1 0''). Entirecolumn . Insed' Inserta 4 nuevas fjlas sobre Ia fila 40.Rowst'' 1 0: 1 5''). Insert

En d S u b

Borrar rangosCuando desee borrar comentarios, contenidos. filas, columnas, formatos, etc. Debeemplear Ia instrucciôn Clear seguida de io que se quiere borrar. A continuaciôn semuestran ejemplos deI uso de clear.

'Borra !os comentarios sobre Ia celda C1Sub Borrarl ()

Rangethrcl''l.clearcommentsEn d S u b

Page 228: Excel Profesional 2010
Page 229: Excel Profesional 2010

pX;rIMkrœofk Office Escel profesionul

Hay una variedad de operaciones que se pueden realizar con Ios rangos taI como semuestra en ia si uiente tabla:Operacisn Ejemplos

'Copia ia cekda A1Range(''A1'').Copy'Copla Ia celda V1, esta es otra terminoiogia también v*llda.Nçl.copy'Copla Ia celda /*3 (Ia primera posiclôn equlvale a fila y Ia segundaa Ia columna).CopiarCelIs(1, 3).Copy' Copia el rango de celdas A2:A5Range(''A2'.A5'').Copy'Copia el rango de celdas A2'.52, esta es otra terminolog ia tambiénvélida.(A2: B2l.Copy

Page 230: Excel Profesional 2010

p.xïl&Cap:ulo b'1:

'Copia todo contenido de Ia celda C2 y Io pega en la ceida M4Range(''C2'').Copy Range(''M4'')

Pegar ,La forma equivalente, pero puntualizando donde se desea que Iainformaciôn sea pegada mediante el empleo de propiedadesRange(''C2'').Copy Destination:=RangechM'')'En el caso de crear un nombre para referlrse al rangoC4:H8 con el nombre Ventas.NombrarRange(''C4:H8'' Name = ''Ventas'').' Convertlr fiia en columnaRange(''B2:E2'').CopyRangecFrl.pastespecial Paste:=xlpasteAll Transpose:zzTrue

Transponer' Convertlr columna en filaRange(''C3:F7'').CopyRan e ''E3'' .pastes ecial Paste:=xlpasteAll Trans ose:rzTrueWith (Bzl.currentRegion' (BzlxcurrentRegion podria ser = Range('B2:M34')

.sort Keyl :=Range(''G10''), Orderl :=xlAscendlng, Header:ulGuess

.sod Keyl :=Range(''F4''), Orderl:=xlDescending, HeaderrulGuess

.sodOrdenar -Key1:=Range(''B3''), Orderl :=xlAscending,Key2:=Range(''C2''), Orderz:zulAscending, -Key3:=Range(''D2''), Order3:=xlAscending, -Header:ulGuess -

End With

Trabajar con Iibros y hojasCaso Libros: Abra el archivo Mil-ibro.xls.

(EI archivo Mll-ibro.xls, MiLibroz.xisx, Datos.xlsx, Demo.xisx y Tut-ibro.xlsx se encuentrandentro de la car eta e ercicios ro orcionada en el CD. Co Ie Ios archivos a Ia unldad C:)Operaci6n Ejemplos

Dim Nombre As StringNombre = ''CAMil-ibro xlsx''' Si no se encuentra el Iibro hacemos que salga un mensaje de avisoIf DiqNombre) = '''' ThenMsgBox Nombre & '' no se encuentra''Abrlr ElseWorkbooks.open FileName:zzNombre updatel-inks:=False

E n d If'...- ...............- ........Abrir co n CIaVeDim Libro JiS VV Orkbook

Page 231: Excel Profesional 2010

,.:51Mkrœofk Office Excel profesioncd

Set Libro = Woibooks.opentFilename:=''c:hcarpetalDatos.xlsx'', Password:='' asiona'' WriteRespassword:=nmili''p , )'..............................Abrir con VinculoApplicatton.EnableEvents = TrueWorkbooks.open Filename:=''c:hcarpetalDemo.xlsx'', Updatel-tnks:

=FalseAppiication.DisplayAlerts = FalseCerrarAdiveWorkbook.close

Sub Macrot)On Error Resume Next'On Error Resume Next se usa paraevltar el error derlvado de una celda vacia y/o con un caracter con el q

Guardar ue excel no permite guardar un IibroActiveWorkbook.saveAs IA1).VaIue

' También puede usar' ActiveWorkbook.saveAs Filename:=Ranget'Al'l.vaùueEnd Su bSub Borral-ibro ()Borrar Workbookst''c:lTuLibro.xlsx''l.DeleteEnd SubSub Nuevol-ibrot)Workbooks.AddEnd Sub'- - ...- -caso dos IibrosC

rear Sub Nuevol-ibrot)WorkbookmAddWorkbooks.AddEnd Sub

Caso Hojas. Abra ei archivo: Mil-ibroz.xlsxOperaciön Ejemplos

Sub Agregarliojat)ActiveWorkbook.Worksheets.Add

End Sub

También es posible aplicar:Agregar

Sub Agregarliojat)D1m Hoja As WorksheetSet Hoja = Worksheets.AddEnd Sub

Page 232: Excel Profesional 2010

p.xïl&Cap:ulo b'1:

Sub Seleccionaq)'para seleccionar Ia prlmera hqa de1 ikbro activoActiveWorkbook.sheetstll.select'para seleccionar Ia segunda hola deI ikbro actjvoSeleccionarActiveWorkbook.sheetstzl.select'para seleccionar Ia tercera hoja deI libro actpvoActiveWorkbook.sheetst3l.seledEnd SubSub Movert)Worksheetscl-lojaznl.Move after:=Worksheetst''Hojas'')End Sub'Caso que el ribro tenga 3 hojas. estando Ia hoja 2 actlva'Para mover ia hoja 2 delante de Ia hoja 1Sub moverl-lojat)MoverDim Hoja As WorksheetSet Hoja = ActivesheetHoja.Move before:zzsheetstl)Set Hoja = Sheetstl )Hoja.Move after:=sheetstsheets.count)

End SubSub Borrarl-lojat)Sheetscliojalnl.Delete

End Sub'Caso de eliminar hoja sin mostrar confirmaciôn

Borrar Sub borrarliojat)Application.DisplayAlerts = FalseSheetscHojalnl.DeleteApplication.DisplayAlerts = TrueEnd SubSub Nuevol-ibrot)Workbooks.AddEnd Sub'- - -..- -caso dos IibrosCopiar Sub Nuevol-ibrot)Workbooks.AddWorkbooks.AddEnd Sub

programu Nucienal de Informtiticcl

Page 233: Excel Profesional 2010

,.:51Mkrœofk Office Excel profesionul

Sub Copiart)' Copia Ia Hojal después de Ia Hoja3Worksheetstnl-lolal''l.copy aoer:=Worksheetst''Hoja3'')End Sub

Otro caso para copiar una hoja:Ocultar/Mostar Sub copiarl-lojat)

Dim Hoja As WorksheetSet Hoja = ActivesheetHoja.copy before:zzsheetstl)Set Hoja = Sheetstl )Hoja.copy after:=sheetstsheets.count)

End Sub

Sub Renombrart)Sheetstll.Name = ''Pagos''End Sub

Nombrar Nota: No se distinguen Mayflsculas de mtnûsculas.Sheetstupagos''l.selectSheetscpagosnl.selectSheetst''pagosnl.selectSub ColorEtiquetat)AdiveWorkbook.sheetst''Hojal''l.Tab.colorlndex = 5End Sub

Para saber el nûmero que corresponde al color realice Io siguiente:1. Clic derecho sobre Ia etiqueta de hoja.Color2. Elija Ia opciôn ''Color de Etiquetas''.3. Elija un color de la paleta.4. Acepte.5. En Ia ventana lnmediato deI editor VBA escriba:?ActivesheetxTab.colorlndex.6. Enter.

A contlnuacién un resumen deI cJdigo més frecuente en Ias macros. Ubicarse en algtkn celda Ranget''lMNl.select. Escribir en un celda Activecell.FormulaR3cz= ''VBA'. Estilo en negrita Selection.FontBold = True. Estilo cursiva Selection.Font.ltalic = True. Estilo subrayado Selection.Font.underline = xlunderlinestylesingle. Texto centrado With Selection .hlorizontalAlignment = xlcenter End With. Alinear a Ia izquierda With Selection .liorizontalAlignment = xlLeft End With. Alinear a Ia derecha With Selection .hlorizontalAlignment = xlRight End With. Fuente With Selection.Font .hlame = 'Arial'' End With. Tamaiio de Ietra With Selection.Fœnt .S1ze = 10 End With

228 programa Nacionol de Informdtica

Page 234: Excel Profesional 2010

p.yilCap:ulo b'1:

Aiiadir m6dulos VBACuando se requiera crear côdigo para realizar alguna tarea especifica se debe emplear1os m6dulos esténdar de VBA, Ios cuales permitirén insertar Ios procedimientos que el''programador' escriba para un propôsito en particular.

Este môdulo esténdar es un môdulo en el que puede t''pMlcrosoft Excelcolocar !os procedimientos Sub y Function que deseeque estén disponlbles para otros procedimientos.Son féciles de crear y siempre el nuevo c6digo a HOIz Excellancslagregar se inserta entre el Sub y el End Sub.Tarea: Mostrar un cuadro de diélogo. AceptzrSe requiere presentar el siguiente cuadro de mensajecuando se haga clic en un bottin de comando.

Page 235: Excel Profesional 2010

Cuadro con respuesta1 . Ingrese a Visual Basic.2. Insertar un nuevo mbdulo esténdar.

Page 236: Excel Profesional 2010

p.xïl&Cap:ulo b'1:

3. Crear el si ulente côdi 0:Sub saludorespuestat)Dim rpta As Stringrpta = InputBoxtnEscrlbe tu Nombre'')MsgBox ''Ho1a, '' & rpta

E n d S u b

Page 237: Excel Profesional 2010

!2t- 11Mkrœofk Ofhce Excel profesionul

7. Haga clic en el botôn de comando Aceptar para terminar Ia elecucibn.

Los formularios de usuario tienen propiedades que determinan Ia apariencia comoposiciôn, tamaso y color', y dlversos aspectos de su compodamiento.Los formularios de usuario tambiân pueden responder a eventos inlciados por un usuarioo activados por el sistema. Por ejemplo, puede escribir c6digo en el procedimiento deevento Initialize deI UserForm para inicializar variables a nivel de môdulo antes demostrar el UserForm.Ademés de propiedades y eventos, puede utilizar métodos para manipular formularios deusuario utilizando cddigo. Por ejemplo, puede utilizar el método Move para cambiar laubicacién y tamafso de un UserForm.Cuando disesa formularios de usuario establezca la propiedad Borderstyle para definirbordes. y establezca Ia propiedad Caption para colocar texto en la barra de titulo. Encbdigo, puede utilizar Ios métodos Hide y Show para hacer invisible o visible unUserForm en tlempo de ejecuciôn.

Page 238: Excel Profesional 2010

Aöadir controles a un UserFormUna vez que ha insertado el formulario de usuario esté en condiciones de agregaralguno de Ios controles que se encuentran en Ia barra de herramientas.TaI como se muestra en la barra de herramientas se inciuyen Ios controles como: Loscuadros de texto, Iistas desplegables, cuadro de grupo, casillas de verificaciôn y botonesde comando. EL aspecto es simliar a Ios controles de formularios que se emplearon en1os formularios personalizados al crear Ias macros desde Excel.

Insertar un control al formulario de usuariorPara esto realice Io siguiente.

1 . Seleccione el icono deI bot6n de Ia caja de herramientas y dibuje unrecténgulo en el érea deI formularlo de usuario.

2. Cambiar el texto de1 bottm, haga clic sobre el control y escrlba un nombrepara el control, Iuego hacef clic fuera de é1.

Page 239: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

E

'

.. userFo ssl pilg .p . cuadre ce hexa mlentas ,.

g.' ., coatrole.s Ii' . ' . :

'

. ir l11 :1111.. ' 8(111.. r;Fg . : . q # ' .u ..ua .j'k * t .-jç rj

En este caso se ha dibujado un control etiqueta.Los controies se van enumerandosecuenclalmente.En este caso es la primera etiqueta senombra como Label 1 . Luego seguiréLabelz, Label3, . . etc.

Para agregar el cbdigo deI botön haga clic, doble clic sobre el bot6n para acceder a sucbdigo de evento '' Click'' Se abriré una ventana con el slgulente côdigo:

Private Sub CommandButton 1 Cllck ()E n d S LI b -

3. Debe asadir un cuadro de mensaje con el texto 'Hola mundo''. Su côdigodeberia tener este aspecto:

Private Sub CommandButton 1 Click ()MsgBox (''Hola Worldl'' -)E n d S u b

Aöadir procedimientos de control de eventos

En busca de una mejor comprenslôn deI empleo de Ios procedimientos de control en IosUserForm, se crearé uno de ellos y se explicaré paso a paso el detalle de! diseqocreacién ejecuci6n y m ejoras qu e se pu ed en aplicar un a vez q ue cu m pIe con Iospropôsitos iniciales previstos. bien veamos el siguiente caso.

Page 240: Excel Profesional 2010
Page 241: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Posteriormente, cree un userform, para esto necesita abrir el Editor de Visual Basic (ALT+ F1 #). Luego en el menù lnsertar / Userform. Ademés en Ia propiedad Captlon dedlcho Userform, configûrela como '' Encueata Ekfz/poa Fûtbor. Una vez realizadostodos estos pasos. Ia pantaiia debe haber quedado de Ia siguiente forma:

A continuacitm comience a trabajar en el Userform, al cual debe insedarie algunoscontroles y modificar algunas propiedades de Ios mlsmos hasta que tengan el sigulenteaspecto'.

Page 242: Excel Profesional 2010

p.yilCap:ulo b'1:

Lo realizado hasta el momento no dista mucho de Io realizado anteriormente con Ioscontroles de formularios de Excel, razôn por la cual se han dejado de Iado algunosdetalles de ia forma como se insertan en el formulario VBA.

Antes de incrustar 1os distintos botones de opcitm, seré necesario en primer Iugar inseltarel Marco esto es un control que permlte agrupar otros controles déndoles un aspecto degrupo. Tendré clue utilizar una Etlqueta de Texto, la cual le permitiré colocar un texto dereferencia (Nombre) al cuadro de texto que aparece en el costado.A continuaciôn se muestra un cuadro resumen con 1as propledades que deberéconfigurar p ara cada un o d e Ios controles por favor sigalo atenta m ente:

Eti ueta Cuadro de Texto MarcoPro Iedad Valor Pro iedad Valor Pro iedad alor

ccelerator : N Name : extName Ca tion : E ui 0'.Ca tion : Nombre: Tablndex : 1 Tablndex : 2Tablndex : 0

O ciôn: Alianza Lima O ciôn: S ortin Cristal O ciön: UniversitarioPro iedad Valor Pro iedad alor Pr@ iedad alor

ccelerator '. A Accelerator : C ccelerator : UCa tlon : Alianza Llma Ca tion : S orlfn Crlstal Ca tion : Universltario(Name) : Opcion AL (Name) : Opcion SC (Name) : Opcion UTablndex : 0 Tablndex : 1 Tablndex : 2

Value : rue

Bot6n Grabar Bot6n CancelarPro iedad Valor Pro iedad alor

Default : True Cancel : rueCaption : Grabar Caption : CancelarName : cmdGrabar Name : cmdcancelarTablndex : 3 Tablndex :

xProgramu Noti/nal de Informtiticcl X 237

Page 243: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Propiedad : TablndexCon esta propiedad se Iogra establecer en cada control el orden de tabulaclbn quetendr*n es decir el orden en que se iré desplazando el cursor cada vez que se presioneIa tecla '' Tab'' en su teclado, en caso desee moverse dentro deI formulario, en Iugar deutilizar el mouse.Nôtese que 1os controles de opcibn tienen su propia numeraciôn, dentro deI marco que1os cobija.Propiedad: AceleratorEs otra propiedad muy interesante, Ia cual sirve para (qulposconfigurar el acceso répido a 1os controles de opciôn,accitm que se realiza mediante Ia combinacitm teclas r EhDn2a Elma''ALT + Letra destacadar', donde Ia letra destacada es ... s ung ipstalaquelia ''Ietra'' asignada a uicha propiedad y queé subrayada en el formudario ''- ppverstarioaparecer .

Page 244: Excel Profesional 2010

4. Luego. Seleccione el Userform y haga doble clic sobre el botôn de comandoCancelar.a . .

5. Para configurar el control ''Cancelar, para que cuando se haga clic sobre éIcierre el Userform creado:

Escrlba el siguiente côdigo:

Private sub cmucancelar clickl) CJ Unload: Descarga y oculta eltlnload userForml- '' Userforml.sheetst''Lnicio''l.Activate rz' Sheetsllllnicio'') Activatel Muestra

End sub Ia hola inicio, una vez que elformulario se ha descargado.

Page 245: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

6. De igual forma doble clic sobre el botôn Grabar e insertar el siguiente côdigo.

Private Sub cmdAceptar CI1ck()Sheetst''Encuesta'' Activ-te). a

If TextName.-rext = '''' ThenMsgBox ''Debe introducir un nombre.''TextName.setFocus

Exit SubE n d If

NextRow= AppllcationvWorksheetFundion.counGtRanget''A:A''l) + 1CellstNextRow. 1 ) = TextName.TextIf Opcion AL Then CellsthlextRow, 2) = ''Aianza''If Opcion-sc Then CellsthlextRow, 2) = ''Cristal''If Opcion-u Then CellstNextRow, 2) = ''Universitario''TextName.Text = ''''opcion AL = TrueT e xt N a-m e Set Fo c u s

E n d S u b

La primera instrucciôn tiene como objetivo asegurarse de que Ia hoja activa sea1 u uIa hoja Encuesta .

EI sigulente grupo de ctdigo cumple Ia misiôn de verificar que el cuadro de textono quede en blanco, y sl asI sucediera, enviaré un mensaje que indlcaré taI2

., .situaciôn no permltlendo gëabarz o recopllar Ia informaclôn. EI MétodoSetFocus enfoca el cuadro de texto TextName.EI tercer grupo de côdigo (que en este caso es una ûnica Iinea de côdigo)

3 cumple ia funciôn de buscar la primera celda disponible para registrar el valorobtenido de1 userform.EI cuarto grupo es el encargado de recopilar Ia informaclôn que figura tanto en el4cuadro de texto como en Ios botones de opctôn.EI ùltimo grupo de côdigo deja en blanco el cuadro de texto y deja seleccionada5

,, ,,POr defedo Ia opclthn Alianza Lima .

E'lecucithn d el UserFormAntes de Elecutar Ia macro en Ia hoja Encuesta, inserte el siguiente contenido:

1 . Haga clic sobre el botin lniciar encuesta. A B2. Se muestra el formulario de Ia encuesta. 1 Hintlha IEquipe 1

2

Page 246: Excel Profesional 2010

5. Repita el paso 3 para varias personas.

6. Luego de repetir el proceso, haga clic en el bot6n Cancelar.

7. Luego, tendré a la vista Ia Hoja Inicio, haga Clic en la Hoja Encuestar observarâ Iarelaciôn de personas y el equipo por quien tienen preferencia.

8. Si Iuego decide continuar con Ia encuesta Ias nuevas personas se agregaréndespués deI ûltimo ingresado.

Page 247: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Funciones VBA lnputBox, MsgBoxLa funciôn InputBox muestra un cuadro de diélogo, donde el usuario puede escribiralguna entrada y I o haga clic en un botbn. Si el usuario hace clic en el botbn Aceptar opresiona ENTRAR en el teclado, Ia funcidn lnputBox devuelve el texto ubicado en elcuadro de texto. SI el usuarlo hace clic en el botbn Cancelar, Ia funcitm devolveré unacadena vacia ('''').

: % N ota: EI botôn de ayu da se aiad e al cuadro de diélog o si es qu e especisca Iosparémetros de conteto q ue se requieren.Sinta xis

1 nputBoxtprompttatitulolE.defaultll.xposll.yposll.Arch ivodeAyudalcontextl)

Parémetro Descripciôn

Prompt Requerido. EI mensaje para mostrar en el cuadro de diélogo. La Iongitudméxima es de 1024 caracteres. Puede separar Ias Iineas mediante uncaréder de retorno de carro (Chr (13)), un carécter de avance de Iinea(Chr (10)), o una combinacitin de carécter de retorno de carro-avance deIlnea (Chr (13) & Chr (10)) entre cada IineaOpcional. EI titulo deI cuadro de diélogo. EI valor predeterminado es elnombre de Ia aplicaclôn

Default Opcional. Un texto predeterminado en el cuadro de texto

Xpos Opcional. La caja deI sistema ''distancia desde el borde izquierdo de Iapantalla. Unidad de medida'. twips *. Si se omite el cuadro de diélogo secentra horlzontalmente.

Opcional. La caja deI sistema ''dsstancia desde el borde superior de Iapantalla. Unidad de medida'. twips *. Si se omite el cuadro de dlélogoesté en posiciôn vertical de un tercio de Ia distancta entre Ia pantalla

Archivo de Opcional. EI nombre de un archivo de Ayuda de usar. Debe ser utilizadoAyuda con el parémetro de contextoContexto Opcional. EI nûmero de contexto de Ayuda para el tema de Ayuda. Debe

ser uttlizado con el parémetro de archfvo de ayuda

* Un twip es una unidad de medida que es visualmente tgual en todos los sistemas devtsuallzaciôn.1 twip es 1 / 1440 de pulgada.

Page 248: Excel Profesional 2010

p.yilCap:ulo T1:

Ejempio 1

Function mlFunciont)fnombre=lnputBoxt''Escriba su nombre)

End Function

Un cuadro de mensaje con un titulo:

Function mlFunciont)fnombre=tnputBoxt''Escriba su nombren,nusuario'')

End Function

Funciôn MsgBoxLa funcibn MsgBox muestra un cuadro de mensaje espera a que el usuario haga clic enun botbn, y devuelve un valor.La funcibn MsgBox puede devolver uno de ios siguientes vaiores:

1 = vboK Se ha hecho clic en Aceptar2 = vbcancel Se ha hecho clic en Cancelar3 = vbAbort Se ha hecho clic en Abcdar4 = vbRetry Se ha hecho clic en Reintentar5 = vblgnore Se ha hecho cllc en Ignorar6 = vbYes Se ha hecho clic en Si7 = vbhlo Se ha hecho clic en No

Sintaxis

MsgBoxtpromptl. botonesllltltulolt.Archlvodeayuda.contextol)

Parémetro Descripcibn

Prompt Requerido. EI mensaje para mostrar en el cuadro de mensaje. LaIongitud méxima es de 1024 caraderes. Puede separar Ias Iineasmediante un carécter de retorno de carro (Chr (13)), un carécter deavance de Iinea (Chr (1D)), o una combinaclôn de carécter de retornode carro-avance öe Iinea (Chr (13) & Chr (10)) entre cada Iinea

Botones Opcional. Un valor o una suma de valores que especifica el nûmero ytipo de botones para mostrar, el estilo de icono a utilizar, la identidaddeI botôn predeterminado y Ia modalidad deI cuadro de mensaje. EIvalor por defecto es 0(1 = vboKonly - botôn Aceptar sôlo

xProgramu Noti/nal de Informtiticcl X 243

Page 249: Excel Profesional 2010

pX;rIMkrœofk Office Excel profelionul

1 = vbosrancel - botones Aceptar y Cancelar2 = vbAboëtRetrylgnore - Anular, Reintentar y Omitir3 = vbYesNocancel - Si, No y Cancelar4 = vbYesNo - botones Si y No.5 = vbRetrycancel - Ios botones Reintentar y Cancelar16 = vbcriscal - Mensaje critico Icono32 = vbouestion - icono de advertencia de consultas48 vbExclamation = - Mensaje de advertencia icono64 = vblnformation - (cono Mensaje de informaciôn0 = vbDefaultButtonl - EI primer botôn es el predeterminado256 = vbDefaullButtonz - EI segundo botôn es el predeterminado512 = vbDefaultButlon3 - EI tercer botôn es el predeterminado768 = vbDefaultButlonzl - EI cuarto botôn es el predeterminado(1 = vbApplicationModal - modalldades de aplicaciôn (Ia aplicaciônactual no funcionaré hasta que el usuarto responda al cuadro demensaje)4096 = vbsystemModal - Sistema de modal (todas Ias aplicaciones notrabajarén hasta que el usuario responda al cuadro de mensaje)Podemos dividir Ios valores de Ios botones en cuatro grupos: El primergrupo (0-5) se describen Ios botones que se muestran en el cuadro demensaje, el segundo grupo (16, 32, 48, 64) describe el estilo de icono,el tercer grupo (0, 256, 512, 768) fndica qué botôn es elpredeterminado, y el cuarto grupo (0, 4096) determina Ia modalidad deIcuadro de mensaje. AI agregar nûmeros para crear un valor final parael parémetro de botones, utilice sôlo un nûmero de cada grupo

Opcional. EI titulo deI cuadro de mensaje. EI valor predeterminado es elnombre de la apltcaciôn

Archivo de Opcional. EI nombre de un archivo de Ayuda de usar. Debe serayuda utillzado con el parémetro de contextoContexto Opcional. EI nûmero de contexto de Ayuda para el tema de Ayuda.

Debe ser utlllzado con el parémetro de archjvo de ayuda

Ejem plosMsgBoxt'rliello world'')rpta=MsgBoxcEres un Programador'',4,''por favor respondal'')

Page 250: Excel Profesional 2010

p.xïl&Cap:ulo T1:

Métodos GetopenFilename, GetsaveAsFileNameSon mbtodos de! objeto Application y muestran 1os cuadros de diàlogo Abrir.. y Guardarcomo. . . de1 menû Archivo.

Sdntéxis (método GetopenFileName)

Application.GetopenFileNametFileFilter, Filterlndex, Title, ButtonText, Multiselect)

Todos los argumentos son opcionales

FileFilter Opcional. Una serie especifica con crlterios de filtro dearchivo. Ejemplo: 'Libros (*.xIs Nlsx) *.xIs' * xlsx

Filterlndex Opcional. Indice deI criterio de filtrado por defecto.Titulo Opcional. EI titulo deI cuadro de dialogo. Si se omite, el

titulo, mostraré ''Abri/'ButtonTexl Etiqueta deI botôn Abrir (SoIo para Macintosh)Multiselect Opcional. Si es verdadero, se pueden seleccionar

varios Nombres de archivos

Ei argumento Filtro de archivo determina que muestre el cuadro de dlalogo de 1osarchivos del tipo Iista desplegable. Conslste en pares de series de filtro de archivoseguido de1 comodin especificado. S1 se omite seré por defecto: ''AII Fiie(*.*) *.*''E! argumento Filterindex especifica el tipo de archivo que aparece por defecto, 'e1 titulodeI argumento es un texto que se despiiega en la barra deI titulo. Si el argumento demultiselect es verdadero, el usuario puede seleccionar varios archivos (y se devolverénen una serie)

Para probar este c6digo debe insertar un nuevo Userform e insertar un bot6n decomando y un cuadro de texto.

Page 251: Excel Profesional 2010

,.:51Mkrœofk Office Excel profesioncd

Private Sub CommandButtonl Clickt)D!m filtrox As String -Dim Filterlndex As lntegerDlm titulo As StringDim nombreArchivo As Variant'Configurar Filtro para Ia Iista de archivosfiltrox = ''Archivos de texto (* txt) A.txt '' &''Word(* doc) * doc '' &''Excel (* xls) * xIs '' &''Power Pointt''. ppt), *. ppt, '' &''Todos los archivos (* * * * '' -. ), .'Mostrar por defecto todos 1os archivosFiltrolndex = 3titulo = ''Ejemplo'''Obtener Nombre de1 archivonombreArchivo = Applicatlon.GetopenFilenametFileFùlter:=filtroxFilterlndex:=Filtrolndex, Title:=titulo)TextBoxl .'rext = nombreArchivoEnd Sub

EI método GetsaveAsFileName de Excel

Q' Despllega el cuadro de dialogo Guardar como y permite la seleccitm de unarchivo

u' Devuelve un nombre de archlvo y ruta, pero no inicia nlnguna accibn.

Sdntaxls

Application.GetsaveAsFileName (FileFilter Filterlndex Title ButtonText Multiselect)Los argumentos son 1os mismos que la funclbn anterior.Ejemplo de cômo emplear deI método GetsaveAsFilehlame de Excel.Sub GetsaveasFllenamet)Dim filesaveName As StringfilesaveName = Application.GetsaveasFilenametNleFilter'.=''Excel Files (*.x1s) *.xIs'')If filesavehlame <> False Then

ActiveWorkbook.saveAs (filesaveName)MsgBox ''EI Ilbro se guard: en'.'' & filesaveName

En d IfE n d S u b

Para probar este c6digo, insértelo en un nuevo mbdulo.

Page 252: Excel Profesional 2010

x r'&

Cap:ulo b'1:

,*g--Lt.t.'-

Preparare un Userform para simular ia venta de computadoras taI como se indlca acontin uaciôn:

1

z Vellla de P('s3456

o' Cuando se hace clic en el botbn de comando PC Minitower, se muestra Ia imagencorrespondiente, similarmente para el botbn de Ia Laptop.

1, Ademés cada botdn de comando muestra el precio correspondiente de Iacomputadora seleccionada.

iz' Se ingresa el nombre deI Cliente.r/ Se escribe Ia cantidad de computadoras compradas.

Page 253: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

=' Luego, al hacer cllc en el botôn de comando Calcular se procederé a calcular elimporte de Ia compra, y debe mostrar en Ia etiqueta Importe.

Q' E1 Bot6n de comando Seguir, Iimpia Ios controles.Q' E1 botdn de comando Salir, Cierra el Userform.

En Ia siguiente tabla se muestran ias propiedades de 1os objetos empleadosEti ueta TextBox Botôn de comandoName Iblprecio Name txtcllente Name cmdcalcular

txtcantidad cmdse uirCa tion cmdsalir

cmdpccmdl-a to

Ima e Flame Ca tton CalcularName im Pc Ca tion Ventas de PC Se uir

im La to SalirForm Pc MinitowerCa tion Venta de Com utadoras La to

Ahora, debe insertar el si uiente cbdi o V5A:Private Sub cmdpc CIIck()imgpc.l-eft = 1 32 -imgLaptop.visible = Falseimgpc.visible = TrueIblpreclo = ''1 200''E n d Su b

Prlvate Sub cmdcalcular Cpickl)Ibllmporte.captlono Valltxtcantidad.Text) * Valtlblprecio)En d S u b

Private Sub cmdcierre Clickt)Unload Me -En d Su b

Private Sub cmdseguir Clickt)txtcantidad .Text-= Emptytxtcliente.Text = EmptyIbllmporte.caption = Emptyiblprecio.captlon = Emptytxtcliente.setFocus

En d S u b

Page 254: Excel Profesional 2010

p.xïl&Cap:ulo T1:

Private Sub cmdLaptop C1ick()ImgLaptop.Top = i'imgLaptop.l-eft = 1 32imgpc.visible = FalseImgl-aptop.vlsible = Truelblprecio = '.2500..

En d S u b

Private Sub cmdEnunciado Clickt)msjel = ''Se debe seleccion-ar Ia Pc a Vender haciendo clic en el botôn Respectivo'' &vbcrt.fmsjez = ''Escribir el nombre deI cliente y Ia cantidad de Pcs a Vender'' & vbcrl-fmsje3 = ''A1 hacer clic en Calcular se muestra el kmporte de Ias Pc vendidas'' &vbcrt.fmsje4 = ''AI hacer clic en Cierre cierra el formuiario'' & vbcrl-fmsjes = ''IEmplear Ias propiedades: Visible, Height, Width. Left y Topl''msje = msje 1 & msjez & msje3 & msjezl & msjesMsgBox msje, vblnformation, ''Instrucciones''En d S u b

u . .%

Preparare un Userform para simular una reparaciôn taI como se indica a continuacitm:gk B u :) - E - r

t Taller de Reparacl'olleî2

, 10d8 illevo4557

Page 255: Excel Profesional 2010

pX;rIMkrœofk Office Excel profelionul

:./ EI Subtotal de ingresos = Revisitm + Llmpieza + Reparacitm + Envi:zf Subtotal de Egresoszz Materiales + Mano Obra + Supervisiôn/a' Ingresos = Subtotal Ingresoscl Egresos = Subtotal Egresosa' Ganancia = Ingresos - Egresosz/ Cuando se hace clic en el botbn de comando Calcularr se obtienen todos Iosresuitados

zz' EI botbn de comando Salir, Cierra el Userform.

En Ia siguiente tabla se muestran 1as propiedades de Ios objetos empleadosEti ueta TextBox Bottm de comandoName IbISTIn resos Name txtRevision Name cmdcalcular

IbIStE resos txtl-im ieza cmdse u1rIblln resos txtRe aracion cmdsalirIIE resos txtEnvio cmdpcIblGanancia txtMateriales cmdl-a to

txtManoobra Ca tion Calculartxtsu ervision Se uir

SalirForm Pc MinitowerCa tion Venta de Com utadoras La to

Page 256: Excel Profesional 2010

p.xïl&Cap:ulo T1:

Agregar Ios siguientes cbdigos:

Private Sub cmdcalcular Cjickl)Ibls-rlngresos.caption = Va-ittxtRevision) + Vaittxtt-impieza) + ValttxtReparacion) +ValltxtEnvio)lbis-rEgresos.caption = ValttxtMateriales) + ValttxtManoobra) + Valttxtsupervision)lbllngresos.caption = ValtlblsTlngresos.caption)IblEgresos.caption = Valtlbls-rEgresos.caption)lbiGanancia.caption = ValtlblsTlngresos.caption) - Valtlbis-rEgresos.caption)E n d S u b

Private Sub cmdseguir Clickt)ord = ord + 1 -txtRevision.Text = Emptytxtimpieza.Text = EmptytxtReparacion.-rext = EmptytxtEnvio.Text = EmptytxtMateriales.Text = EmptytxtManoobra.Text = Emptytxtsupervision.-rext = Emptylbls-rlngresos.caption = Emptylbls-rEgresos.caption = Emptylbil ngresos. Caption = EmptylblEgresos.caption = EmptylblGanancia.captlon = EmptytxtRevision.setFocusEn d S u b

Private Sub cmdsalir Clickt)U n Ioa d Me -En d S u b

Para agregar Ia imagen al control image:1 . Seleccione el control y Iuego en ia propiedad Plcture.2. En el panel derecho, seleccione el botbn.3. Busque Ia imagen e insértela.4. En Ia propiedad Picturesizemode, selecclone el valor de 1 .

Page 257: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesionul

1 . Segùn su criterlo f.por qué es impcdante emplear el lenguaje VBA en Excel?2. Describa brevemente el entorno de trabajo de VBA.3. Indique Ias diferencias entre propiedades y métodos.

4. &c6mo se crean 1os procedlmientos de evento y porque son importantes en eldesarrollo de casos en VBA?

5. Indique Ias principales caracteristlcas de Ias variables.

6. &por qué son necesarias 1as constantes?

7. &Qué caraderisticas puede destacar de Ias estructuras de control gue sonnecesarias para desarrollar un procedimiento de evento?

8. En qué se diferencian Ias estructuras'.:/ For - Nexto' Whiie-Do:/ Do-until

9. &por qué son importantes emplear 1os Userforms en VSA?

Page 258: Excel Profesional 2010

<. .'! ''r . - I&Cap:ulo b'I:

programu Nucienal de Informtiticcl

Page 259: Excel Profesional 2010

Capîtulo

iqtd d- j

Funciona per= alia das

@ Crear funciones bésicas personallzadas.@ Uso de controles Activex.

vlamâs te ccplrlpa?'ea con nad/e, nl a tu favor nl encontra' cada clza/ ïecibe cfe la vlda /0 g&e hamerecldo y cosecha lo que ha semtrado. Orléntatea Iograr lo mejor de ti mismo y de tu Wc/a ' cadacual tlene una (fferenle mlsiçbn para cumpllr y Ioque hace feiices a unos puede ser Ia fr/fe//ctcfadpara otroa' concéntrate .0/() en tus ventajas ybeneficlos.Laa peraonas a tu a/recfedt)r tu famllla, l&acompaheros tt/a amlstade.s clientes y conocldosno te querrân méa y nc te recordarân mejor por Ioque tienes a/no por ser quien ERF,S y por iascosas que haces y dices. Prac&ra mejorarIntername nte y supera ze en lo que haces por ypara /oa demàs' estas ao5 1as coaas q ue temerecerân prestigio respeto y aceptaciçbn.

Page 260: Excel Profesional 2010

p.yilCupikulo V11:

CREACIO' N DE FUNCIONES PERSONALIZADAS CON VBAA veces en que Ias f6rmulas que vienen por defecto en Excel no ayudan a resolver unproblema en particuiar y por Io tanto debe hacer uso de combinaciones de fôrmulas pararealizar el célculo deseado.Es entonces aqui donde es especialmente t'Itil poder crear sus proplas funcitmespersonalizadas. La gracia de esto es que Ias funclones ias podemos seguir utiljzando sies que grabamos Ia macro en el ''Libro de macros personai''.Los pasos para crear una funcitm son !os siguientes:

Page 261: Excel Profesional 2010

Nota: Si se utilkan macros, estas quedarén disponibles sôlo para Ia PC en donde se% crearon Ias macros y por Io tanto se pueden reutilizar en otros proyectos.%

Si Io que desea es que Ias macros estén sôlo en Ia planilla Excel que estén creando, paradistrlbuirla, entonces el midulo debe crearse en el proyecto de Ia planilla y no enPERSONAL.XLSB.

Uso de mödulos para funcionesUn môdulo se puede emplear para diferentes tareas, 1os mddulos son Ia parte deCUDIGO GENERAL de un proyecto. en é1 se pueden definir ''x'' funciones que se deseanque estén activas para cualquier formulario dentro deI proyecto, Incluso se puedeconfigurar para que sea él quien realice Ia primera accithn al ejecutar su aplicaciôn.

Uso de argumentos en el uso de funcionesA continuacbn se debe crear la funciôn perscmallzada. Las funciones en Visual Basic sellaman ''Function'' y pueden recibir parémetros.

Page 262: Excel Profesional 2010

p.yilCupikulo V1h

En el siguiente ejemplo crearé una funciôn que permita calcular el Volumen de unCilindro recibiendo como parémetro el radio y Ia altura:

Function voiumentByval radio As Double, Byval altura As Double)Dim area As Double'Primero calculamos el *rea deI circulo.'Aqui utilizamos Ia funcitm ''Application.pitl'' para obtener el nûmero PIarea = Application.pit) * radio & 2volumen = area * altura

End Function

Como se puede apreciar se Ilama a Ia funciôn volumen en donde se especiflcan Iosparémetros de Radio (celda A3) y Altura (celda 53). De ta1 manera que en ia celda (23 seobtendré ei volumen utilizando Ia fôrmuia personalizada.Para completar Ia fôrmula en Ias filas lnferlores, debe copiarla a Ia celda donde se debenmostrar Ios resultados.

Page 263: Excel Profesional 2010

Marque Ia casilla de verificaciôn, segûn se muestra en la Imagen.

Exportar môdulo VBA

rexpErial' mo tul'a VBAD2y vbapro yecto As VBIDE.VBPrOJ ectD2y vbaMo au lo As VBlDE.vBcgmponentPublic str Ruta a s St rlng

Set vbaproyecto = T hlsW'Jrkbogk.VBprol ectSeE vbaMo au lo = vba Fro ye cto.vBcomponents (HMadu 1c1M)strRura = T hilWor kbook Path & 'rhmc.du' o e x ert * x-n. - - F . - -CE @.*l'P aCa = 10 ' Z 1 i H -. - . E: hz 7. u E exF'Eri.LxlvbRMoaulo.Export strRuta

Page 264: Excel Profesional 2010

<. .'! ''r . - I&Cupzulo VIh

I mporlar m ôd u Io VBAr .lrrp : r'J .kr moq:u lo VE!AD.l1r vbaproyecto As VBIDE . ''JBPL'C)J ectD.llr vbaMclau lo As VBI DEI . OcgmponentPubl.l c s crRuta a s St rlng

s t rRuta = Th i JWor kboo k Pat;h & lr hmc.c:u ' o ' e;t a rt - x'z 'T. - x yl . -r : .E: 'J l'Rui t'k = '' c' : ' nt ndu 1 E 1 e )k . E r'z 'z x- '' -F . -

SeU vbapro yecto = Act ive Wgrkbcc'k.vBproy ectvbapl'o yecto.vBcompone nt S.lmpart (3Cr Ruta)

- F.K.l 11 s trRuta

USO DE CONTROLES ACTIVEX

Page 265: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

Una de Ias diferenclas con Ios controles de Excel, es que Ios controles Activex tienenmuchas més propiedades que pueden ser adaptadas.Para acceder al mendl de 1as propiedades active el control, se muestra un panel y abra elmenû de propiedadesPara el control TextBox, cuadro de texto, puede ver, que existen un gran nûmero depropiedades, como el color, la fuente y otras. La propiedad ''Linkedceil'' permite vincularel ''estado'' deI control a una celda en Ia hoja. Esta celda puede ser utilizada Iuego comoargumento en una funciôn.

En Ia esquina inferior derecha de Ia barra de1 Cuadro de Controles, està el icono ''màscontroles''. A1 activarlo tendr: acceso a muchos més controles (no todos disponibles para1as hojas de célculos).Estos controles Ie darén més versatilidad a Ios formularios userform, que tienen comocaracteristica que se muestran desde Excel al llamarlos o ejecutarios desde un botôn decomando.

Botôn de comando Activex .uEste tipo de control es uno de Ios més conocidos. Entre otras cosas, este control permiteIa ejecucibn de una macro, o marcar el inicio de Ia realizaclôn de una determlnadaactividad previamente asignada o programada.

Casillas de verificacién Activex VUna caa///a de k'er/fcac/tjp es utlllzada normalmente para capturar Informacitmprevlamente estructurada. Normalmente se presentan en grupos y es posibleseleccionar més de una opcibn. Por ejemplo, el usuario podrâ elegir uno o més de Iosdistintos depodes propuestos.

Etiqueta Activex a'tUna etiqueta contiene texto que identifica el propbsito de una celda o un cuadro de textoo muestra texto descriptivo, por ejemplo: titulos, Ieyendas o instrucciones breves.Ademés, una etiqueta puede mostrar una imagen descriptiva. Se puede usar unaetiqueta para Ia ubicaciôn tlexible de Instrucciones, para destacar texto y para indicar que1as celdas combinadas o una ubicaciôn de celda especifica no son una soluciôn préctica.

Cuadro de texto Activex ;1VUn Cuadro de Texto nos permite capturar informaciôn de Ia persona que esté utiiizando,lo cual puede ser numérica, alfabética o alfanumérica. Este tipo de control, tambjéntiene la opciôn de ser configurada como campo para el ingreso de ''clavesn, por Io queautométicamente iré reemplazando Io que vaya lngresando por asteriscos (*).Botôn de opciôn Activex ';Un but6n de opc/o en general presenta Ias mismas caracterlsticas que un grupo decasillas de verificaclôn, s6lo que en este caso no es posible seleccionar més de una

Page 266: Excel Profesional 2010

p.yilCupikulo V1h

opcitm. Por ejemplo, el usuarlo s6lo podré elegir uno de Ios distintos deportespropuestos.

Imagen Activex ,.:iUn control imagen Ie permite cargar Imégenes al userform.Un control de imagen sirve para insertar una imagen, con extensiôn: bmp, jpg o gif.También sirve para mostrar el Iogotipo de una empresa o imégenes predisesadas.

Presentaciôn y ocultaci6n de Ias formasPara cargar un formulario desde Excel, utilice el método Show () de1 objeto de unformulario de usuario, procedimiento que puede ser activado desde Excel VBA.

S intaxis:NombreFormulario .show IModall

Por ejemplo, el sigulente c6dlgo muestra un obleto de formulario en el cual, por ejemplocuando haga clic sobre el bot:n de comando un procedimiento de evento:cmdDisplayForm harà que muestre el formuiario

Private Sub cmdDisplayForm Cllck (JUserForm 1 S?lossr -End Sub

Para ocultar un formulario, manteniendo el control de Ia programaci6n, se usa H1de().

UserForm 1 . Hi6e

Tenga en cuenta que el método Hidet) no elimina el objeto deI formulario de Ia memoriadeI slstema, por tanto la forma y sus componentes afln se puede acceder medianteprogramaciôn.Para eliminar un formulario completamente de Ia memoria deI sistema, ilame al método:Unl-oad VBA (). Se emplea como sigue:

Page 267: Excel Profesional 2010

Se debe crear un formuiario con controles Activex para enviar saludos Ia persona queescriba su nombre.Para ello realice lo siguiente'.

2. Configure Ias propledades como se indica en la siguiente tabla:

Botfm deEtiqueta Cuadro de texto comando

Name Iblsaludo txtnombre cmdsaludo

cmdsalir

Caption Clic aqui

Salir

Page 268: Excel Profesional 2010

p.xïl&cupikulo v11:

3. Escriba el siguiente c6digo

Private Sub cmdsalir Clickt)Unload UserForml -E n d S u b

Page 269: Excel Profesional 2010
Page 270: Excel Profesional 2010

p.yilCupikulo V1h

1 . En un nuevo Iibro, ingrese a VBA pulsando 1as teclas AIt +F1 12. Agregar un nuevo môdulo y escriba 1as siguientes funciones

Function curiosidad ltvm As Integer) As LongDim i As Integernvm = vm + 1Sefie = '''''-- Genera Ia serie 1 , 12, 123, 1234, ....For i = 1 To nvmserie = serie & 1Next icuriosidadl = serie

End Function

Page 271: Excel Profesional 2010

!2t- 11Mkrœofk Office Excel profesioncd

3. Una vez creada ;as funciones en el Iibro, seleccionar Ia celda B7 y pulsando Iatecla (CtrI1 arrastrar hasta Ia celda B1 5 para generar Ia semilla, Iuego insertar !asfunciones como sigue:

A D

4. Una vez que ha generado Ia primera serie de valores, lo ûnico que faltarla realizares seleccionar el rango de celdas'.c7: E7

5. Ubicarse en Ia celda E7 y arrastrar hasta Ia celda E15.Se ha generado esta curiosldad matemética de obtener solo nûmeros 1

Page 272: Excel Profesional 2010

<. .'! ''r . - I&Cupzulo VIh

Continuando con Ias curiosldades mateméticas, genere una serie en donde tenga comoresultado solo nùmeros ochos taI como se muestran en Ia imagen inferior:

Curio:idod Motemçl t'Ico 2 IReyultcido jCompuestopor othox

$J ) z w- 4 7 . ' .tb =, p'id #$ f,6'.T))'7 -.I :% + : a 7f:39k? '.) t) ='.' ï'J (Vt =j. :I' 611 CFtji 1q' f/' 'i.!d

'<'.T' % I %K$ o'o :J ' '+ -4ï H PJC'JCR' IVJ ' I 7 'ë ' ( Y 9 ', ) c - % .(p ;' a F24 /5 'JPJ tix bkY' >%' X, . . .x= . . o z 4 z 4

':i 'h%' I 'ï'9T. .1.5'.4 n 7 jqj cy j- EK Stsxhio, jil %3Rt3'Sx r.t52' u'8=t'7;(.3 .RSR' r.- :2: + ( rh F'.q agjrlzmw'* I!:lG. 2.y(*

Page 273: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

1 . En un nuevo Iibro, ingrese a VBA pulsando Ias teclas AIt + F1 12. Agregue un nuevo môdulo y escriba 1as siguientes funciones

Function curiosidadztvm As Integer) As LongDim i As Integernvm = vm - 1Serie = '''''- . Genera Ia serie 9, 98, 987, 9876.....For i = 9 To nvm Step -1serie = serie & 1Next icuriosidadz = serie

End Function

Function curiosldadzmtvm As Integer) As StringDim i As Integernvm = vm - 3factor = ''''factor = ''x 9 + '' & nvmcuriosidadzm = factor

End Function

Function curlosidadzqvm As Integer) As VariantDim i As Integernvm = vm - 1SeFie = ''''For i = 9 To nvm Step -1

serie = serie & iNext i'- .-- Genera Ia serie de 1 unos--curlosidadzr = serie * 9 + nvm - 2

End Function

6. Una vez creada ias funciones. en el Iibro seleccione Ia celda 87 y pulse Ia tecla(Ctr1), arrastre hasta ia celda B 14 para generar Ia semilla. Luego inserte Iasfunclones como sigue:

Page 274: Excel Profesional 2010

x r'lw.mlCupikulo V11:

A B C D E

Page 275: Excel Profesional 2010

pX;rIMkrœofk Office Excel profesionul

*

1 . & Cuàl es la util idad de Ias f unciones personalizadas'?

2. &Qué facilidades brinda al usuario el empleo de Ios userrorms y Ios controlesActivex'?

3. Prepare Ias funciones personalizadas para hallar:EI érea del:D CuadradoL TriénguloQ' Circulog1 Trapecio

' U'' .U '.ko. ..4. Calcular el érea sombreada de la siguiente figura'. 7 '''..Datos: I :î ,EI lado deI cuadrado es L k 2zs .(Diàmetro = L ' >.... - .','''

5. Prepare Ias funciones personalizadas para resolver Ia slguiente curiosidad

,o. o .. .j c j p .; : 1 . v)' ? j,. jy..4.., i..: 7. 1 (3..1 i Q G .7a .( ';L' 'Q .z: ''J$ tG t Q (!! . .0 tt'.';s .'.à'. ,:d s à.' 7 $' rï .-'7. 't :'= . . . . .. k. .'$t ., ''u.$ q.c.1 . f.j.C'..f ? .J

'

' L T' '' r. . k t,' ! i::E /:Iq q'=. 'IL :ëi çrzh

q! t- % M: r.$ =E= 2?7) E.Ei k> . 8 t-ul 65;7 CLD :,(: t..1;) =:- =?:-( s:h ftz-.? uï-7 =U:.

j-j u'-zjl ;j y Jhtlxaot.qq yjrr ;)jl .lm qy Eii ((9) ;jLq't.'v5( t: rgj-0 iaum :!?.f J; l (is;'P.'>t' FJIL ez . 1rïh :,.1 (k )'..'F) -E7 r'ih (@F.<p a

c' 1 r-qjr .q$k.t-&!'z.,. pc rI'$ =:= =7/ EB $>. f1)V/ fS#JY.ukQXS-g' f- JL.d4y- po%'i$=I7t-'@' J4: t-zs vg' t-sz' uu to):7 u;'F '-Té '(ë' LFld21'E'' ci-sl-..z'a - .-. - & ' qau u'= .'bn '.b7 '%' - X? 4'JT-'V': tp .)7 I JIJ O =% -& != 'eD-C Q'.-fX ( 'CkL% ZV 'VZ > N=. h'2S-'t ) - es z/

Page 276: Excel Profesional 2010

p.yilCupikulo V11:

6. De Ia misma forma Ia siguiente curiosidad

Page 277: Excel Profesional 2010
Page 278: Excel Profesional 2010

HPROPI EDAD I NTELECTUAL DEL SENATIPRO H I BI DA SU REPROD UCCI ON Y VENTASIN LA AUTORIZACION CORRESPONDIENTE

AN() DE EDICIZN 2011CODIGO DEL MATERIAL 82000706