Está en la página 1de 24

Como automatiza una hoja de calculo de Microsoft Excel desde Visual FoxPro En esta sencilla gua en la que encontrara

tips bsicos para automatizar una hoja de clculo, muchas veces nos hemos encontrado con la necesidad de crear desde los datos de nuestra aplicacin un documento para un usuario, y por lo general siempre se utiliza Excel. 1. rear la !oja de calculo " . #anipular la hoja de calculo ". 1 $nsertar una imagen "." ombinar celdas ".% ambiar el &ormato ".' ambiar el tama(o de una &ila ".) ambiar el tama(o de una columna ".* $nsertar &ilas ".+ ,ordes ".- ambiar el color de varias columnas ".. /ormato numero ".10 on&igurar el area y &ormato de impression % 12345E3 6E E7 E8 ' Ejemplo ) 6escargar constantes reacin de la hoja de calculo 9ara poder acceder a Excel desde /ox primero tenemos que crear un objeto el cual podamos manipular a nuestro antojo. tmpsheet : ;et1bject<==,=excel.sheet=> 8uego hacemos una re&erencia a la aplicacin, la cual nos permitir manipular caractersticas de Excel como por ejemplo que no muestre las lneas de divisin de celdas 785pp : tmpsheet.application 785pp.5ctive?indo@.6isplayAeros : .&. BB2o muestra las celdas en valor 0 785pp.5ctive?indo@.6isplay;ridlines : .&. BB2o muestra las lneas de divisin 785pp.Cisible : .t. BB5plicacion visible 785pp.?orD,ooDs.5dd<> BB5grega una !oja de calculo 8uego de agregar una hoja de calculo creamos una re&erencia a esta 783heet : 785pp.5ctive3heet

5hora podemos manipular la hoja de calculo a nuestras necesidades. #anipularon de la hoja de calculo Insertar una imagen: muchas veces en nuestras hojas de calculo queremos o necesitamos inserta una imagen como por ejemplo el logo de la compa(a o etc. Esto se hace de la siguiente manera 783heet.9ictures.$nsert</E88954!<FbmpGlogo.bmpF>> .name:F9icture 1F 783heet.9ictures.$nsert<HcIGaplicacionGbmpGlogo.bmpF> .name:F9icture 1F En el anterior ejemplo insertamos una imagen, en el primer objeto le decimos a /ox que retorne la ruta completa de una imagen partir de una ruta relativa, en el segundo ejemplo asignamos la ruta de la imagen, tambiJn asignamos un nombre al objeto y as podemos cambiar las caractersticas del objeto como por ejemplo el ancho 783heet.3hapes<F9icture 1F>.?idth:100 Combinar celdas: 9ara combinar celdas podemos especi&icar un rango de celdas asi 783heet.Kange<F/1IL1F>.#erge Cambiar el formato: primero necesitamos especi&icar el rango de celdas a las cuales les deceamos cambiar el &ormato, podemos utilizar el comando ?$4! de /ox asiI ?$4! 783heet.Kange<F/1IL1F> .#erge .value:=E8 4E741 MEE 6E3E5#13 #134K5K= .!orizontal5lignment:xl enter BB5liniar al centro N .Certical5lignment:xl enter ./ont.,old:.t. ./ont.3ize:1' ./ont.2ame:O5rialObr PQ E26?$4! 8as constantes de Excel estan al &inal de la ;ua. Cambiar el tamao de una fila: 783heet.Ko@s<'>.Ko@!eight:"0

Cambiar el tamao de una columna: 783heet. olumns<F5I5F>. olumn?idth:1..)+ Ajustar el tamao a todas las columnas: 783heet. olumns<>.5uto/it Insertar filas: 783heet.Ko@s<F1I1F>.$nsert ordes: Ena &orma de insertar bordes es especi&icar un rango y luego ajustar sus propiedades segRn nuestras necesidades asiI ?$4! 783heet.Kange<F5'IM'F> .,orders<xl6iagonal6o@n>.8ine3tyle : xl2one .,orders<xl6iagonalEp>.8ine3tyle : xl2one .,orders<xlEdge8e&t>.8ine3tyle : xl2one .,orders<xlEdge4op>.8ine3tyle : xl2one .,orders<xlEdgeKight>.8ine3tyle : xl2one .,orders<xl$nsideCertical>.8ine3tyle : xl ontinuous .,orders<xl$nsideCertical>.?eight : xl4hin .,orders<xl$nsideCertical>. olor$ndex : xl5utomatic E26?$4! 1 tambiJn asiI ?$4! 783heet.Kange<F5'IM'F>.,orders<xlEdge8e&t> .8ine3tyle : xl ontinuous .?eight : xl4hin . olor$ndex : xl5utomatic E26?$4! Cambiar el color de !arias columnas: 783heet.Kange<F!I!SLILS8I8S2I2S9I9F>./ont. olor$ndex:'" Formato numero:

783heet. olumns<FEIMF>.2umber/ormat : FT,TT0F Configurar el area " formato de im#ression: ?$4! 783heet.9age3etup .9rint5rea : FU5IUMF BB5rea de $mpresion .9rint4itleKo@s : FU1IU'F BB/ilas como titulo .9rint4itle olumns : FF .8e&t!eader : FF . enter!eader : FF .Kight!eader : FF .8e&t/ooter : FB6 B4F BB9ie de pagina &echa y hora . enter/ooter : FF .Kight/ooter : FB9F BB9ie de pagina izquierdo 2umero pagina N#argenes .8e&t#argin : 785pp.$nches4o9oints<0.%.%+00+-+'01)+)> .Kight#argin : 785pp.$nches4o9oints<0.%.%+00+-+'01)+)> .4op#argin : 785pp.$nches4o9oints<0.%.%+00+-+'01)+)> .,ottom#argin : 785pp.$nches4o9oints<0.%.%+00+-+'01)+)> .!eader#argin : 785pp.$nches4o9oints<0> ./ooter#argin : 785pp.$nches4o9oints<0> .9rint!eadings : .&. .9rint;ridlines : .&. .9rint omments : xl9rint2o omments N entrar area . enter!orizontally : .t. . enterCertically : .&. .1rientation : xl8andscape .6ra&t : .&. .9aper3ize : xl9aper8egal ./irst9age2umber : xl5utomatic .1rder : xl6o@n4hen1ver .,lacD5nd?hite : .&. N$mprimir a un V .Aoom : -0 E26?$4!

En ejemplo basico seriaI NWN reo un cursor que es el que ingresare en la hoja de calculo NWN cargo el campo 2umero con aleatorios, el campo texto con sys<"01)> KE54E EK31K cur9rueba <2umero 2<10>,4exto <")'>> BB reo el curso /1K ln ontador:1 41 10 BB $ngreso 10 Kegistros aleatorios $23EK4 $241 cur9rueba<2umero,4exto> values<$24<K526<>N)00X1>,3Y3<"01)>> E26/1K5 NWN KE1 E8 1,LE41 6E E7E E8 tmpsheet : ;et1bject<==,=excel.sheet=> 785pp : tmpsheet.application 785pp.5ctive?indo@.6isplayAeros : .&. BB2o muestra las celdas en valor 0 785pp.5ctive?indo@.6isplay;ridlines : .&. BB2o muestra las lneas de divisin 785pp.Cisible : .t. BB5plicacion visible 785pp.?orD,ooDs.5dd<> BB5grega una !oja de calculo 783heet : 785pp.5ctive3heet NWN KE 1KK1 E8 EK31K E $2;KE31 E2 E7 E8 ;141 419 $2 cur9rueba 3 52 783heet.cells<KE 21<=cur9rueba=>,1>:cur9rueba.2umero 783heet.cells<KE 21<=cur9rueba=>,">:5884K$#<cur9rueba.4exto> E263 52 NWN /1K#541 6E 18E#253 4$4E81 783heet.Ko@s<F1I1F>.$nsert 783heet.cells<1,1>:=2E#EK1= BB 4itulo celda &ila 1 y columna 1 783heet.cells<1,">:=4E741= BB 4itulo celda &ila 1 y columna " ?$4! 783heet.Kange<F51I,1F> .!orizontal5lignment:Z'10- BB xl enter BB5liniar al centro N .Certical5lignment:Z'10- BB xl enter ./ont.,old:.t. ./ont.3ize:1' ./ont.2ame:=5rial= E26?$4! NWN 5E345261 E8653 783heet. olumns<>.5uto/it

Ena &orma practica a un que poco ortodoxa de manejar las propiedades y mJtodos de #icroso&t Excel es haciendo una macro en Excel y 1bserva su codigo. Enas equivalencias en codigo sonI Macro de Excel Kange<F,%I!"1F>.3elect 3election.2umber/ormat : FT,TT0.00F 5ctive?indo@ En Fox 783heet.Kange<F5'IM'F> 783heet.Kange<F5'IM'F>.2umber/ormat : FT,TT0.00F 785pp.5ctive?indo@

onstantes de #icroso&t Excel 8as constantes de Excel pueden ser guardadas en un archivo .! como por ejemplo 783.!, e integrarlas a nuestros programas con T$2 8E6E 783.!, las constantes sonI

C$%&'AE& (E E)CE* N olors T6E/$2E xl olorKojo T6E/$2E xl olor5zul

% '+

N onstants T6E/$2E xl6ialog3et,acDground9icture '." T6E/$2E xl6ialog5uto orrect '-) T6E/$2E xl6ialog/ile3haring '-1 T6E/$2E xl6ialogCba#aDe5ddin '+T6E/$2E xl6ialog5ctive ell/ont '+* T6E/$2E xl6ialog/ind/ile '+) T6E/$2E xl6ialog9roperties '+' T6E/$2E xl6ialog3ummary$n&o '+' T6E/$2E xl6ialog3cenario#erge '+% T6E/$2E xl6ialog3tandard?idth '+" T6E/$2E xl6ialog#ailEdit#ailer '+0 T6E/$2E xl6ialog3eries1rder '** T6E/$2E xl6ialog/ormat hart '*) T6E/$2E xl6ialogErrorbarY '*' T6E/$2E xl6ialogErrorbar7 '*% T6E/$2E xl6ialog3eriesY '*" T6E/$2E xl6ialog3eries7 '*1 T6E/$2E xl6ialog3eries5xes '*0 T6E/$2E xl6ialog1ptions8ists5dd ')-

T6E/$2E xl6ialog3ave opy5s ')* T6E/$2E xl6ialog/unction?izard ')0 T6E/$2E xl6ialog/ilter ''+ T6E/$2E xl6ialog9ushbutton9roperties '') T6E/$2E xl6ialog1pen4ext ''1 T6E/$2E xl6ialogEditbox9roperties '%T6E/$2E xl6ialog8istbox9roperties '%+ T6E/$2E xl6ialog8abel9roperties '%* T6E/$2E xl6ialog hecDbox9roperties '%) T6E/$2E xl6ialog9ivot/ieldEngroup '%' T6E/$2E xl6ialog9ivot/ield;roup '%% T6E/$2E xl6ialog/ormat harttype '"% T6E/$2E xl6ialog4ext4o olumns '"" T6E/$2E xl6ialog9ivot3ho@9ages '"1 T6E/$2E xl6ialog3crollbar9roperties '"0 T6E/$2E xl6ialog?orDbooD9rotect '1+ T6E/$2E xl6ialog?orDbooD4ab3plit '1) T6E/$2E xl6ialog3ubtotal reate %.T6E/$2E xl6ialog4ab1rder %.' T6E/$2E xl6ialog hart5dd6ata %." T6E/$2E xl6ialog5dd hart5uto&ormat %.0 T6E/$2E xl6ialog;allery ustom %-T6E/$2E xl6ialog?orDbooD2ame %-* T6E/$2E xl6ialog?orDbooDEnhide %-' T6E/$2E xl6ialog#acro1ptions %-" T6E/$2E xl6ialog/ont9roperties %-1 T6E/$2E xl6ialog$nsert4itle %-0 T6E/$2E xl6ialog6ata8abel %+. T6E/$2E xl6ialog#ail2ext8etter %+T6E/$2E xl6ialog/ilter5dvanced %+0 T6E/$2E xl6ialog1ptions;eneral %)* T6E/$2E xl6ialog1ptions4ransition %)) T6E/$2E xl6ialog?orDbooD$nsert %)' T6E/$2E xl6ialog hart4rend %)0 T6E/$2E xl6ialog;allery6oughnut %'' T6E/$2E xl6ialog$nsert9icture %'" T6E/$2E xl6ialog#ail8ogon %%. T6E/$2E xl6ialogKouting3lip %%* T6E/$2E xl6ialogCba9rocedure6e&inition %%0 T6E/$2E xl6ialogCba$nsert/ile %"T6E/$2E xl6ialog1ptions hart %") T6E/$2E xl6ialog5ttach4oolbars %"% T6E/$2E xl6ialog#enuEditor %"" T6E/$2E xl6ialog5ddin#anager %"1 T6E/$2E xl6ialog1ptionsCie@ %"0

T6E/$2E xl6ialog1ptionsEdit %1. T6E/$2E xl6ialog1ptions alculation %1T6E/$2E xl6ialog9ivot/ield9roperties %1% T6E/$2E xl6ialog9ivot4able?izard %1" T6E/$2E xl6ialog3cenario3ummary %11 T6E/$2E xl6ialog3cenarioEdit %0T6E/$2E xl6ialog3cenario5dd %0+ T6E/$2E xl6ialog3cenario ells %0) T6E/$2E xl6ialog?orDbooD2e@ %0" T6E/$2E xl6ialog/ill?orDgroup %01 T6E/$2E xl6ialog9lacement %00 T6E/$2E xl6ialog5ssign4o4ool ".% T6E/$2E xl6ialog hart?izard "-T6E/$2E xl6ialog3ave?orDspace "-) T6E/$2E xl6ialog?orDbooD1ptions "-' T6E/$2E xl6ialog?orDbooD opy "-% T6E/$2E xl6ialog?orDbooD#ove "-" T6E/$2E xl6ialog?orDbooD5dd "-1 T6E/$2E xl6ialog ustomize4oolbar "+* T6E/$2E xl6ialog;allery%d3ur&ace "+% T6E/$2E xl6ialog;allery%d,ar "+" T6E/$2E xl6ialog/ormat5uto "*. T6E/$2E xl6ialog#ove "*" T6E/$2E xl6ialog3ize "*1 T6E/$2E xl6ialog$nsert1bject "). T6E/$2E xl6ialogAoom ")* T6E/$2E xl6ialogEdition1ptions ")1 T6E/$2E xl6ialog;alleryKadar "'. T6E/$2E xl6ialog6e&ine3tyle "". T6E/$2E xl6ialogEdit3eries ""T6E/$2E xl6ialog/ormat1verlay ""* T6E/$2E xl6ialog/ormat#ain "") T6E/$2E xl6ialogEdit olor ""% T6E/$2E xl6ialog9rint9revie@ """ T6E/$2E xl6ialog3ho@4oolbar ""0 T6E/$2E xl6ialog3ubscribe4o "1T6E/$2E xl6ialog reate9ublisher "1+ T6E/$2E xl6ialog1bject9rotection "1' T6E/$2E xl6ialog5ssign4o1bject "1% T6E/$2E xl6ialog5pply3tyle "1" T6E/$2E xl6ialog3ave2e@1bject "0T6E/$2E xl6ialog1bject9roperties "0+ T6E/$2E xl6ialog3ho@6etail "0' T6E/$2E xl6ialog6emote "0% T6E/$2E xl6ialog9romote "0"

T6E/$2E xl6ialogEpdate8inD "01 T6E/$2E xl6ialog/ill;roup "00 T6E/$2E xl6ialog?orDgroup 1.. T6E/$2E xl6ialog;oal3eeD 1.T6E/$2E xl6ialogCie@%d 1.+ T6E/$2E xl6ialog;allery%d9ie 1.* T6E/$2E xl6ialog;allery%d8ine 1.) T6E/$2E xl6ialog;allery%d olumn 1.' T6E/$2E xl6ialog;allery%d5rea 1.% T6E/$2E xl6ialog3ort3pecial 1." T6E/$2E xl6ialog onsolidate 1.1 T6E/$2E xl6ialog3tandard/ont 1.0 T6E/$2E xl6ialog3end#ail 1-. T6E/$2E xl6ialog1pen#ail 1-T6E/$2E xl6ialog1verlay hart4ype 1-* T6E/$2E xl6ialog#ain hart4ype 1-) T6E/$2E xl6ialog5pp3ize 1+1 T6E/$2E xl6ialog5pp#ove 1+0 T6E/$2E xl6ialog hange8inD 1** T6E/$2E xl6ialog olor9alette 1*1 T6E/$2E xl6ialog3etEpdate3tatus 1). T6E/$2E xl6ialog2ote 1)' T6E/$2E xl6ialog/ormat/ont 1)0 T6E/$2E xl6ialog opy hart 1'+ T6E/$2E xl6ialog3ave?orDbooD 1') T6E/$2E xl6ialog1utline 1'" T6E/$2E xl6ialog3plit 1%+ T6E/$2E xl6ialogKeplace/ont 1%' T6E/$2E xl6ialog5pply2ames 1%% T6E/$2E xl6ialog3elect3pecial 1%" T6E/$2E xl6ialog/ormulaKeplace 1%0 T6E/$2E xl6ialog/ormat3ize 1". T6E/$2E xl6ialog/ormat#ove 1"T6E/$2E xl6ialogKo@!eight 1"+ T6E/$2E xl6ialog2e@ 11. T6E/$2E xl6ialog6elete/ormat 111 T6E/$2E xl6ialog6elete2ame 110 T6E/$2E xl6ialog opy9icture 10T6E/$2E xl6ialog5ctivate 10% T6E/$2E xl6ialog?orDspace .) T6E/$2E xl6ialogEnhide .' T6E/$2E xl6ialog9arse .1 T6E/$2E xl6ialog/ormat4ext -. T6E/$2E xl6ialog/ormat8egend -T6E/$2E xl6ialog3cale -+

T6E/$2E xl6ialog1verlay -* T6E/$2E xl6ialog#ain hart -) T6E/$2E xl6ialog9atterns -' T6E/$2E xl6ialog5ttach4ext -0 T6E/$2E xl6ialog5xes +T6E/$2E xl6ialog;ridlines +* T6E/$2E xl6ialog ombination +% T6E/$2E xl6ialog;allery3catter +" T6E/$2E xl6ialog;allery9ie +1 T6E/$2E xl6ialog;allery8ine +0 T6E/$2E xl6ialog;allery olumn *. T6E/$2E xl6ialog;allery,ar *T6E/$2E xl6ialog;allery5rea *+ T6E/$2E xl6ialog/ormula/ind *' T6E/$2E xl6ialog/ormula;oto *% T6E/$2E xl6ialog reate2ames *" T6E/$2E xl6ialog6e&ine2ame *1 T6E/$2E xl6ialog$nsert )) T6E/$2E xl6ialogEdit6elete )' T6E/$2E xl6ialog9aste3pecial )% T6E/$2E xl6ialog lear )" T6E/$2E xl6ialog olumn?idth '+ T6E/$2E xl6ialog ell9rotection '* T6E/$2E xl6ialog,order ') T6E/$2E xl6ialog3tyle '' T6E/$2E xl6ialog5lignment '% T6E/$2E xl6ialog/ormat2umber '" T6E/$2E xl6ialog4able '1 T6E/$2E xl6ialog6ata3eries '0 T6E/$2E xl6ialog3ort %. T6E/$2E xl6ialog6ata6elete %* T6E/$2E xl6ialogExtract %) T6E/$2E xl6ialog alculation %" T6E/$2E xl6ialog9rotect6ocument "T6E/$2E xl6ialog6isplay "+ T6E/$2E xl6ialog/ont "* T6E/$2E xl6ialog3et9rint4itles "% T6E/$2E xl6ialogKun 1+ T6E/$2E xl6ialog?indo@#ove 1' T6E/$2E xl6ialog?indo@3ize 1% T6E/$2E xl6ialog5rrange5ll 1" T6E/$2E xl6ialog9rinter3etup . T6E/$2E xl6ialog9rint T6E/$2E xl6ialog9age3etup + T6E/$2E xl6ialog/ile6elete *

T6E/$2E xl6ialog3ave5s ) T6E/$2E xl6ialog1pen8inDs " T6E/$2E xl6ialog1pen 1 T6E/$2E xlAero " T6E/$2E xlYes 1 T6E/$2E xlYear ode 1. T6E/$2E xlYear ' T6E/$2E xlY 1 T6E/$2E xl7Y3catter Z'1*. T6E/$2E xl7 Z'1*T6E/$2E xl?M1 %' T6E/$2E xl?9; % T6E/$2E xl?orDsheet3hort ) T6E/$2E xl?orDsheet ell % T6E/$2E xl?orDsheet' 1 T6E/$2E xl?orDsheet Z'1*+ T6E/$2E xl?orDs"/arEast "T6E/$2E xl?orDbooD4ab * T6E/$2E xl?orDbooD 1 T6E/$2E xl?#/ " T6E/$2E xl?[3 ' T6E/$2E xl?[%/#% %" T6E/$2E xl?[% 1) T6E/$2E xl?[1/#4 %0 T6E/$2E xl?[1588 %1 T6E/$2E xl?[1 ) T6E/$2E xl?L"?61 1' T6E/$2E xl?indo@s " T6E/$2E xl?ide % T6E/$2E xl?hole 1 T6E/$2E xl?eeDday2ame hars %1 T6E/$2E xl?eeDday " T6E/$2E xl?atch9ane 11 T6E/$2E xl?ait " T6E/$2E xlCisible 1" T6E/$2E xlCery!idden " T6E/$2E xlCertical Z'1** T6E/$2E xlCar9 Z'1*) T6E/$2E xlCar Z'1*' T6E/$2E xlCalues Z'1*% T6E/$2E xlCalue" T6E/$2E xlC58E T6E/$2E xlEserKesolution 1 T6E/$2E xlEp@ard Z'1+1 T6E/$2E xlEpper aseKo@8etter *

T6E/$2E xlEpper ase olumn8etter + T6E/$2E xlEpdate3ubscriber " T6E/$2E xlEpdate3tate 1 T6E/$2E xlEp Z'1*" T6E/$2E xl4riangle % T6E/$2E xl4ransparent " T6E/$2E xl4oKight Z'1*1 T6E/$2E xl4op4o,ottom 1 T6E/$2E xl4op109ercent ) T6E/$2E xl4op10$tems % T6E/$2E xl4op Z'1*0 T6E/$2E xl4oolbar,utton " T6E/$2E xl4oolbar 1 T6E/$2E xl4o8e&t Z'1). T6E/$2E xl4itle,ar T6E/$2E xl4ime3eparator 1T6E/$2E xl4ime8eadingAero ') T6E/$2E xl4iled 1 T6E/$2E xl4$/ . T6E/$2E xl4housands3eparator ' T6E/$2E xl4hin " T6E/$2E xl4hicD ' T6E/$2E xl4ext?indo@s "0 T6E/$2E xl4extCalues " T6E/$2E xl4ext9rinter %* T6E/$2E xl4ext#3613 "1 T6E/$2E xl4ext#ac 1. T6E/$2E xl4ext,ox 1* T6E/$2E xl4ext Z'1)T6E/$2E xl4emplate 1+ T6E/$2E xl4able,ody T6E/$2E xl3yllabary 1 T6E/$2E xl3Y8[ " T6E/$2E xl3um Z'1)+ T6E/$2E xl3ubtract % T6E/$2E xl3ubscribers * T6E/$2E xl3ubscriber " T6E/$2E xl3trict " T6E/$2E xl3tretch 1 T6E/$2E xl3tError ' T6E/$2E xl3t6ev9 Z'1)* T6E/$2E xl3t6ev Z'1)) T6E/$2E xl3tar ) T6E/$2E xl3tandard3ummary 1 T6E/$2E xl3tacD "

T6E/$2E xl3quare 1 T6E/$2E xl3ortCalues 1 T6E/$2E xl3ort8abels " T6E/$2E xl3olid 1 T6E/$2E xl3ingleMuote " T6E/$2E xl3ingle5ccounting ' T6E/$2E xl3ingle " T6E/$2E xl3imple Z'1)' T6E/$2E xl3ho@Calue " T6E/$2E xl3ho@9ercent % T6E/$2E xl3ho@8abel5nd9ercent ) T6E/$2E xl3ho@8abel ' T6E/$2E xl3hort 1 T6E/$2E xl3hared " T6E/$2E xl3eries % T6E/$2E xl3end9ublisher " T6E/$2E xl3emi;ray+) 10 T6E/$2E xl3emiautomatic " T6E/$2E xl3elect % T6E/$2E xl3econd ode "' T6E/$2E xl3econdary " T6E/$2E xl3creen3ize 1 T6E/$2E xl3creen 1 T6E/$2E xl3cale % T6E/$2E xlKunning4otal ) T6E/$2E xlK4/ ' T6E/$2E xlKo@4hen olumn 1 T6E/$2E xlKo@3eparator 1) T6E/$2E xlKo@s 1 T6E/$2E xlKo@$tem ' T6E/$2E xlKo@!eader Z'1)% T6E/$2E xlKo@/ield 1 T6E/$2E xlKouting$n9rogress 1 T6E/$2E xlKouting omplete " T6E/$2E xlKight,racDet 11 T6E/$2E xlKight,race 1% T6E/$2E xlKight Z'1)" T6E/$2E xlKelKo@5bs olumn % T6E/$2E xlKelative ' T6E/$2E xlKe&erence ' T6E/$2E xlKead?rite " T6E/$2E xlKead1nly % T6E/$2E xlKadar Z'1)1 T6E/$2E xlK1 1 Z'1)0 T6E/$2E xl9ublishers )

T6E/$2E xl9ublisher 1 T6E/$2E xl9roduct Z'1'. T6E/$2E xl9rinter " T6E/$2E xl9rimary 1 T6E/$2E xl9revious " T6E/$2E xl9o@er4alD " T6E/$2E xl9o@er ' T6E/$2E xl9ortrait 1 T6E/$2E xl9olynomial % T6E/$2E xl9lusCalues " T6E/$2E xl9lus . T6E/$2E xl984 1" T6E/$2E xl9lot5rea 1. T6E/$2E xl9laceholders " T6E/$2E xl9ivot4able Z'1'T6E/$2E xl9ie ) T6E/$2E xl9icture Z'1'+ T6E/$2E xl9$ 4 1 T6E/$2E xl9$ 11 T6E/$2E xl9ercent1&4otal T6E/$2E xl9ercent1&Ko@ * T6E/$2E xl9ercent1& olumn + T6E/$2E xl9ercent1& % T6E/$2E xl9ercent6i&&erence/rom ' T6E/$2E xl9ercent " T6E/$2E xl9 7 10 T6E/$2E xl9 4 1% T6E/$2E xl9art " T6E/$2E xl9aperEser ")* T6E/$2E xl9aper4abloid % T6E/$2E xl9aper3tatement * T6E/$2E xl9aperMuarto 1) T6E/$2E xl9aper2ote 1T6E/$2E xl9aper8etter3mall " T6E/$2E xl9aper8etter 1 T6E/$2E xl9aper8egal ) T6E/$2E xl9aper8edger ' T6E/$2E xl9aper/olio 1' T6E/$2E xl9aper/an&oldE3 %. T6E/$2E xl9aper/an&old3td;erman '0 T6E/$2E xl9aper/an&old8egal;erman '1 T6E/$2E xl9aperExecutive + T6E/$2E xl9aperEsheet "* T6E/$2E xl9aperEnvelope9ersonal %T6E/$2E xl9aperEnvelope#onarch %+

T6E/$2E xl9aperEnvelope$taly %* T6E/$2E xl9aperEnvelope68 "+ T6E/$2E xl9aperEnvelope *) %" T6E/$2E xl9aperEnvelope * %1 T6E/$2E xl9aperEnvelope ) "T6E/$2E xl9aperEnvelope ' %0 T6E/$2E xl9aperEnvelope % ". T6E/$2E xl9aperEnvelope,* %) T6E/$2E xl9aperEnvelope,) %' T6E/$2E xl9aperEnvelope,' %% T6E/$2E xl9aperEnvelope. 1. T6E/$2E xl9aperEnvelope1' "% T6E/$2E xl9aperEnvelope1" "" T6E/$2E xl9aperEnvelope11 "1 T6E/$2E xl9aperEnvelope10 "0 T6E/$2E xl9aper6sheet ") T6E/$2E xl9aper sheet "' T6E/$2E xl9aper,) 1% T6E/$2E xl9aper,' 1" T6E/$2E xl9aper5) 11 T6E/$2E xl9aper5'3mall 10 T6E/$2E xl9aper5' . T6E/$2E xl9aper5% T6E/$2E xl9aper11x1+ 1+ T6E/$2E xl9aper10x1' 1* T6E/$2E xl9age$tem * T6E/$2E xl9age!eader " T6E/$2E xl9age/ield % T6E/$2E xl1ver4hen6o@n " T6E/$2E xl1utside % T6E/$2E xl1ther3ession hanges % T6E/$2E xl1r " T6E/$2E xl1pen3ource % T6E/$2E xl1pen " T6E/$2E xl1paque % T6E/$2E xl1ne5&ter5nother 1 T6E/$2E xl1n 1 T6E/$2E xl18E8inDs " T6E/$2E xl18E8inD 0 T6E/$2E xl18EEmbed 1 T6E/$2E xl1&& Z'1'* T6E/$2E xl2umbers 1 T6E/$2E xl2umber Z'1') T6E/$2E xl2otYetKouted 0 T6E/$2E xl2ot9lotted 1

T6E/$2E xl2otes Z'1'' T6E/$2E xl2o3hape hanges " T6E/$2E xl2orth@est5rro@ 1 T6E/$2E xl2ormal Z'1'% T6E/$2E xl2onEnglish/unctions %' T6E/$2E xl2one Z'1'" T6E/$2E xl2oncurrency6igits ". T6E/$2E xl2o#ail3ystem 0 T6E/$2E xl2o6ocuments % T6E/$2E xl2o6ocDing hanges % T6E/$2E xl2o hanges ' T6E/$2E xl2o hange 1 T6E/$2E xl2o ap " T6E/$2E xl2o,utton hanges 1 T6E/$2E xl2o " T6E/$2E xl2ext4o5xis ' T6E/$2E xl2ext 1 T6E/$2E xl2arro@ 1 T6E/$2E xl#ultiply ' T6E/$2E xl#3613 % T6E/$2E xl#oving5vg * T6E/$2E xl#ove5nd3ize 1 T6E/$2E xl#ove " T6E/$2E xl#onth2ame hars %0 T6E/$2E xl#onth8eadingAero '1 T6E/$2E xl#onth ode "0 T6E/$2E xl#onth % T6E/$2E xl#odule Z'1'1 T6E/$2E xl#ixed " T6E/$2E xl#inute ode "% T6E/$2E xl#inusCalues % T6E/$2E xl#inimum " T6E/$2E xl#inimized Z'1'0 T6E/$2E xl#in Z'1%. T6E/$2E xl#icroso&t?ord 1 T6E/$2E xl#icroso&t3chedule9lus + T6E/$2E xl#icroso&t9roject * T6E/$2E xl#icroso&t9o@er9oint " T6E/$2E xl#icroso&t#ail % T6E/$2E xl#icroso&t/ox9ro ) T6E/$2E xl#icroso&t5ccess ' T6E/$2E xl#etric %) T6E/$2E xl#edium Z'1%T6E/$2E xl#6Y '' T6E/$2E xl#aximum "

T6E/$2E xl#aximized Z'1%+ T6E/$2E xl#ax Z'1%* T6E/$2E xl#59$ 1 T6E/$2E xl#anualEpdate ) T6E/$2E xl#anual Z'1%) T6E/$2E xl#acrosheet ell + T6E/$2E xl#acintosh 1 T6E/$2E xl8o@er aseKo@8etter T6E/$2E xl8o@er ase olumn8etter . T6E/$2E xl8o@ Z'1%' T6E/$2E xl8otus!elp " T6E/$2E xl8ong % T6E/$2E xl8ogical ' T6E/$2E xl8ogarithmic Z'1%% T6E/$2E xl8ocal3ession hanges " T6E/$2E xl8ocal/ormat" 1* T6E/$2E xl8ocal/ormat1 1) T6E/$2E xl8ist3eparator ) T6E/$2E xl8ist% 1" T6E/$2E xl8ist" 11 T6E/$2E xl8ist1 10 T6E/$2E xl8inear4rend . T6E/$2E xl8inear Z'1%" T6E/$2E xl8ine ' T6E/$2E xl8ightCertical 1" T6E/$2E xl8ightEp 1' T6E/$2E xl8ight!orizontal 11 T6E/$2E xl8ight6o@n 1% T6E/$2E xl8egend "' T6E/$2E xl8e&t4oKight " T6E/$2E xl8e&t,racDet 10 T6E/$2E xl8e&t,race 1" T6E/$2E xl8e&t Z'1%1 T6E/$2E xl8ast ell 11 T6E/$2E xl8ast 1 T6E/$2E xl8andscape " T6E/$2E xlLusti&y Z'1%0 T6E/$2E xl$ntl#acro ") T6E/$2E xl$ntl5dd$n "* T6E/$2E xl$nterrupt 1 T6E/$2E xl$nterpolated % T6E/$2E xl$nteger " T6E/$2E xl$nside " T6E/$2E xl$n&o Z'1". T6E/$2E xl$ndex .

T6E/$2E xl$mmediate9ane 1" T6E/$2E xl$cons 1 T6E/$2E xl$,eam % T6E/$2E xl!our ode "" T6E/$2E xl!orizontal Z'1"T6E/$2E xl!igh Z'1"+ T6E/$2E xl!ide % T6E/$2E xl!idden 0 T6E/$2E xl!;8 * T6E/$2E xl!airline 1 T6E/$2E xl;uess 0 T6E/$2E xl;ro@th4rend 10 T6E/$2E xl;ro@th " T6E/$2E xl;ridline "" T6E/$2E xl;rid 1) T6E/$2E xl;ray- 1T6E/$2E xl;ray+) Z'1"* T6E/$2E xl;ray)0 Z'1") T6E/$2E xl;ray") Z'1"' T6E/$2E xl;ray1* 1+ T6E/$2E xl;eneral/ormat2ame "* T6E/$2E xl;eneral 1 T6E/$2E xl/unction 1 T6E/$2E xl/ull9age % T6E/$2E xl/ree/loating % T6E/$2E xl/ormulas Z'1"% T6E/$2E xl/ormula ) T6E/$2E xl/ormats Z'1"" T6E/$2E xl/loor "% T6E/$2E xl/loating ) T6E/$2E xl/ixed?idth " T6E/$2E xl/ixedCalue 1 T6E/$2E xl/it4o9age " T6E/$2E xl/irst 0 T6E/$2E xl/ilter$n9lace 1 T6E/$2E xl/ilter opy " T6E/$2E xl/illYears T6E/$2E xl/ill?eeDdays * T6E/$2E xl/illCalues ' T6E/$2E xl/ill3eries " T6E/$2E xl/ill#onths + T6E/$2E xl/ill/ormats % T6E/$2E xl/ill6e&ault 0 T6E/$2E xl/ill6ays ) T6E/$2E xl/ill opy 1

T6E/$2E xl/ill ) T6E/$2E xlExternal " T6E/$2E xlExtended % T6E/$2E xlExponential ) T6E/$2E xlExclusive % T6E/$2E xlExcel#enus 1 T6E/$2E xlExcel8inDs 1 T6E/$2E xlExcel'?orDbooD %) T6E/$2E xlExcel'#acro3heet % T6E/$2E xlExcel'$ntl#acro3heet ' T6E/$2E xlExcel' %% T6E/$2E xlExcel% ". T6E/$2E xlExcel"/arEast "+ T6E/$2E xlExcel" 1* T6E/$2E xlErrCalue "01) T6E/$2E xlErrKe& "0"% T6E/$2E xlErrors 1* T6E/$2E xlError!andler " T6E/$2E xlErr2um "0%* T6E/$2E xlErr2ull "000 T6E/$2E xlErr2ame "0". T6E/$2E xlErr25 "0'" T6E/$2E xlErr6iv0 "00+ T6E/$2E xlE93 T6E/$2E xlEntire hart "0 T6E/$2E xlEdition6ate " T6E/$2E xl67/ ) T6E/$2E xl6K? ' T6E/$2E xl6ra@ing1bject 1' T6E/$2E xl6o@n@ard Z'1+0 T6E/$2E xl6o@n4hen1ver 1 T6E/$2E xl6o@n Z'1"1 T6E/$2E xl6oughnut Z'1"0 T6E/$2E xl6oubleMuote 1 T6E/$2E xl6ouble1pen ' T6E/$2E xl6ouble losed ) T6E/$2E xl6ouble5ccounting ) T6E/$2E xl6ouble Z'11. T6E/$2E xl6ot Z'11T6E/$2E xl6ivide ) T6E/$2E xl6istributed Z'11+ T6E/$2E xl6isabled 0 T6E/$2E xl6irect 1 T6E/$2E xl6i&&erence/rom " T6E/$2E xl6$/ .

T6E/$2E xl6iamond " T6E/$2E xl6ialog3heet Z'11* T6E/$2E xl6esDtop . T6E/$2E xl6escending " T6E/$2E xl6elimited 1 T6E/$2E xl6e&ault5uto/ormat Z1 T6E/$2E xl6ecimal3eparator % T6E/$2E xl6ebug ode9ane 1% T6E/$2E xl6,/' 11 T6E/$2E xl6,/% T6E/$2E xl6,/" + T6E/$2E xl6ay8eadingAero '" T6E/$2E xl6ay ode "1 T6E/$2E xl6ay 1 T6E/$2E xl6ate3eparator 1+ T6E/$2E xl6ate1rder %" T6E/$2E xl6ate " T6E/$2E xl6ata$tem + T6E/$2E xl6ata!eader % T6E/$2E xl6ata/ield ' T6E/$2E xl6atabase 1 T6E/$2E xl6ash6ot6ot ) T6E/$2E xl6ash6ot ' T6E/$2E xl6ash Z'11) T6E/$2E xl ut " T6E/$2E xl ustom Z'11' T6E/$2E xl urrency4railingAeros %. T6E/$2E xl urrency3pace,e&ore %* T6E/$2E xl urrency2egative "T6E/$2E xl urrency#inus3ign %T6E/$2E xl urrency8eadingAeros '0 T6E/$2E xl urrency6igits "+ T6E/$2E xl urrency ode ") T6E/$2E xl urrency,e&ore %+ T6E/$2E xl 3C?indo@s "% T6E/$2E xl 3C#3613 "' T6E/$2E xl 3C#ac "" T6E/$2E xl 3C * T6E/$2E xl ross ' T6E/$2E xl riss ross 1* T6E/$2E xl ountry3etting " T6E/$2E xl ountry ode 1 T6E/$2E xl ount2ums Z'11% T6E/$2E xl ount Z'11" T6E/$2E xl orner "

T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl T6E/$2E xl

opy 1 ontinuous 1 ontents " onstants " onsolidation % ommand " ombination Z'111 olumn4henKo@ " olumn3eparator 1' olumns " olumn$tem ) olumn!eader Z'110 olumn/ield " olumn % olor% . olor" olor1 + ode9age " losed % lipboard/ormat?[1 10 lipboard/ormatC58E 1 lipboard/ormat4ool/ace9$ 4 "* lipboard/ormat4ool/ace ") lipboard/ormat4ext 0 lipboard/ormat4able 1* lipboard/ormat3Y8[ * lipboard/ormat3tandard3cale "+ lipboard/ormat3tandard/ont "lipboard/ormat3creen9$ 4 ". lipboard/ormatK4/ + lipboard/ormat9rint9$ 4 % lipboard/ormat9$ 4 " lipboard/ormat1@ner8inD 1+ lipboard/ormat1bject8inD 1. lipboard/ormat1bject6esc %1 lipboard/ormat2ative 1' lipboard/ormat#ovie "' lipboard/ormat8inD3ource6esc %" lipboard/ormat8inD3ource "% lipboard/ormat8inD 11 lipboard/ormatEmbed3ource "" lipboard/ormatEmbedded1bject "1 lipboard/ormat6sp4ext 1" lipboard/ormat6$/ ' lipboard/ormat 3C )

T6E/$2E xl lipboard/ormat ;# 1% T6E/$2E xl lipboard/ormat,itmap . T6E/$2E xl lipboard/ormat,inary 1) T6E/$2E xl lipboard/ormat,$//' %0 T6E/$2E xl lipboard/ormat,$//% "0 T6E/$2E xl lipboard/ormat,$//" 1T6E/$2E xl lipboard/ormat,$// T6E/$2E xl lipboard % T6E/$2E xl lassic% % T6E/$2E xl lassic" " T6E/$2E xl lassic1 1 T6E/$2E xl ircle T6E/$2E xl hronological % T6E/$2E xl hecDer . T6E/$2E xl hart4itles 1T6E/$2E xl hart3hort * T6E/$2E xl hart3eries 1+ T6E/$2E xl hart$n9lace ' T6E/$2E xl hart5s?indo@ ) T6E/$2E xl hart' " T6E/$2E xl hart Z'10. T6E/$2E xl hange5ttributes * T6E/$2E xl ;# + T6E/$2E xl enter5cross3election + T6E/$2E xl enter Z'10T6E/$2E xl ategory 1 T6E/$2E xl ascade + T6E/$2E xl ap 1 T6E/$2E xl ancel 1 T6E/$2E xl,yKo@s 1 T6E/$2E xl,y olumns " T6E/$2E xl,utton 1) T6E/$2E xl,uilt$n 0 T6E/$2E xl,ottom109ercent * T6E/$2E xl,ottom10$tems ' T6E/$2E xl,ottom Z'10+ T6E/$2E xl,oth 1 T6E/$2E xl,#9 1 T6E/$2E xl,lanDs ' T6E/$2E xl,itmap " T6E/$2E xl,$// " T6E/$2E xl,elo@ 1 T6E/$2E xl,ar " T6E/$2E xl5xis "1 T6E/$2E xl5verage Z'10*

T6E/$2E xl5uto1pen 1 T6E/$2E xl5utomaticEpdate ' T6E/$2E xl5utomatic Z'10) T6E/$2E xl5uto/ill ' T6E/$2E xl5uto6eactivate ' T6E/$2E xl5uto lose " T6E/$2E xl5uto5ctivate % T6E/$2E xl5scending 1 T6E/$2E xl5rea 1 T6E/$2E xl5nd 1 T6E/$2E xl5lternate5rray3eparator 1* T6E/$2E xl5llExcept,orders * T6E/$2E xl5ll5t1nce " T6E/$2E xl5ll Z'10' T6E/$2E xl5dd$n 1T6E/$2E xl5dd " T6E/$2E xl5ccounting' 1+ T6E/$2E xl5ccounting% * T6E/$2E xl5ccounting" ) T6E/$2E xl5ccounting1 ' T6E/$2E xl5bsKo@Kel olumn " T6E/$2E xl5bsolute 1 T6E/$2E xl5bove 0 T6E/$2E xl51 1 T6E/$2E xl'6igitYears '% T6E/$2E xl%63ur&ace Z'10% T6E/$2E xl%69ie Z'10" T6E/$2E xl%68ine Z'101 T6E/$2E xl%6E&&ects" 1' T6E/$2E xl%6E&&ects1 1% T6E/$2E xl%6 olumn Z'100 T6E/$2E xl%6,ar Z'0.. T6E/$2E xl%65rea Z'0.T6E/$2E xl"'!our locD %% N onstants 783 "000 T6E/$2E xl5utomatic Z'10) T6E/$2E xl enter Z'10T6E/$2E xl8e&t Z'1%1 T6E/$2E xl#edium Z'1%T6E/$2E xl2one Z'1'" T6E/$2E xl9rint2o omments Z'1'" T6E/$2E xl ontinuous 1 T6E/$2E xl6o@n4hen1ver 1 T6E/$2E xl9aper8etter 1

T6E/$2E xl8andscape T6E/$2E xl4hin T6E/$2E xl4hicD T6E/$2E xl6iagonal6o@n T6E/$2E xl9aper8egal T6E/$2E xl6iagonalEp T6E/$2E xlEdge8e&t T6E/$2E xlEdge4op T6E/$2E xlEdge,ottom T6E/$2E xlEdgeKight T6E/$2E xl$nsideCertical T6E/$2E xl olorKojo T6E/$2E xl olor5zul

" " ' ) ) * + . 10 11 %