ࡱ> |t   !"#,%&'()*+-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXY[\]^_`ibcdefghZjklmnopqrsvwxyz{~Root EntryF z8Book `CompObjj_VBA_PROJECT2z8 z8  FMicrosoft Excel 5.0 WorksheetBiff5Excel.Sheet.59q FPBrushPBrushPBrush9qBM6(ֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽMBD00A58162 F2z8 z8233cab842 /433cab842$y633cab843aB2( Ty( X( \( ` (  d( h( * l( 4 p($ @ t(0 J xB(< T |(H ` (T j (` t (l B(x ( er( e ( ( he( (  t( ua( h( ( ( ( G(   ( (, * (8 4 (D @ (P J (\ T D(h ` T (j 0 0X8 ,X |T <@<x0(H 4 \ @t\ H ,$   8DLxP< P p  ,  `  T`p \ H (   `t| Xd8Dh lH@l l  , 4 Lx PD L@  $  $ x  t 8 T|hh d D l t  X `  p \ d $L <0 pP|\h D 4h l   dTH ,`  $ ( 0 < (T   4x 8 P  h t ME::&(08@$H4l846 D2\N (08@HPX`hpxJ4<D\dlt (08@\dlt| (08@HPX`hpx (08@HPX`hpxiTRRh``` *:@DHLPTX\`dhlptx|  $(,048<@DHLPTX\`dhlptx|  $(,048<@DHLPTX\`dhlptx|;?S/K ( @ (J G{($T ec(0` _E(<j(Ht p (T (`fo(le.(x(((( ec((he( bl("($st(&( ((*us( ,os(*. ( 40ce(,@2(8J4(DT6)(P`8(\j:nt(ht<pe(t>ti(@Fi(B(DSt(F5(H"(JTo(LDa(NyM(PIn(R(TLi(V( X(Z(( \s (4*^ho(@4`(L@b(XJd(dTfM(p`h#(|jl(tn(p4(r<(tB(vD(xY(z#(|(~(( (  Y( ($e(0 (<(H  (T*(`4(l@(xJ(Tq u u`` j  t(( (,B(8 (D(P(\(h(t((((er( He(p( ol(*ot(4ns(@(J(T(` B(j((t (4(@(L&N(X(`d* (p:(|>(@(D(H(L(P(T( XB(\( `(*d(4h( @l(Jp($Tt(0`xB(<j|(Ht(T(`(lPe(xlt((((ys(kb(ut((n(( (ec( (*he( 4bl(,@B(8Jst(DT(P`B(\jus(htos(t (ce((((B(nt(pe(ti(Fi( ((( (((  (4*$r(@4((L@,(XJ0di(dT4 (p`8(|j<(t@(D(H(L(Pts(T(XB(\ng(`(d( h ( lt ( pns($ t(0 x(< |(H (T *(` 4(l @(x J( T1( `( j( t( ( ( ( ( =( ( ( ( ( (, (8 (D I(P (\  (h (t * ( \( f( p( |U( B( ( ( ( ( R ( 4 ( @ a( J ( T (( ` (4 j $(@ t ((L ,(X 0(d 4m(p 8(| <( @( D( H( L( P (08@HPX`hpx (08@HPX`hpx     ( 0 8 @ H P X ` h p x                      ( 0 8 @ H P X ` h p x                      ( 0 8 @ Orientation Info from Map TableY Y  foY MaY $eIncidental info from MapTable.Y 0 (Gets the 1st editable row of the sectionY < +Gets the 1st editable column of the sectionY H 'Gets the total # of rows in the sectionY T *Gets the total # of columns in the sectionMapping for date.Y ` %Identifies the row/column # for datesY lY xY Y Y GThese are the standard set of expense type fields user can choose from.Y *Y heY  #Y luY  tY Y Y inY daY Y  %Y ,fiY 8Y DY PapY \Y hY tY Y Y Y Y Y Y Y Y Y CThese are the standard set of pay type fields user can choose from.Y Y Currency fields.lY BY Y ( Other fields.Y 4n Y @Y LY XY dY pY |Y Y Y Y Y Y Y Y Y Global Object DeclarationsY heY Y  Global Paths/FilenamesY Y $Y 0Y <Y HY TY `Y lY x Global ArraysY Y Y  InternationalY Y Y   MiscellaneousY ,Y 8Y DY PY \Y hY tY Y Y Y Y Y Y Y Y Y Y Y Y Y ThY (e Y 4Y @etY Ly Y XieY dY phoY |omY Y Y Y enY Y Y Y Y Y Y .Y  n Y Y $Y 0Y <Y HY TY `Y lY xY Y Y Y Y Y Y GlY bjY Y nsY heY Y Y  GlY ,atY 8enY DY PY \Y hY tY Y Y Y Y Y alY sY Y Y Y InY Y Y Y (Y 4Y @elY LsY XY dY pY |Y Y Y Y tiY MaY MsY tY Y AcY gY  kOY  \Y  Y $ Y 0 Y < xY H Y T #Y ` pY l IY x Y  Y  Y  Y  Y  Y  Y  Y  Y  #Y  Y  idY  SaY  Y  ltY , TuY 8 dY D Y P SaY \ nuY h FeY t Y  hY  lY  sgY  Y  Y  stY  ptY  Y  rY  mbY  DeY  Y  raY  Y ( Y 4 Y @ Y L Y X Y d Y p ceY | PEY  Y  BY  raY  _EY  eY  BY  ioY  peY  enY  BY  FiY  ExY  ixY $ CY 0 Y < tCY H ToY T CY ` lCY l DaY x ngY  CY  InY  Y  Y  TY  Y  Y  Y  Y  Y  GY  Y  ;Y  Y , 'Y 8 Y D Y P Y \ gNY h  (NH, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$ $p(H6h Hh, pX$!$p(H6h Hh, pX$"$p(H6h Hh, pX$#$p(H6h Hh, pX$$$p(H6h Hh, pX$%$p(H6h Hh, pX$&$p(H6h Hh, pX$'$p(H6h Hh, pX$($p(H6h Hh, pX$)$p(H6h Hh, pX$*$p(H6h Hh, pX$+$p(H6h Hh, pX$,$p(H6h Hh, pX$-$p(H6h Hh, pX$.$p(H6h Hh, pX$/$p(H6h Hh, pX$0$p(H6h |Hh, pX$1$p(H6h xHh, pX$2$p(H6h tHh, pX$3$p(H6h pHh, pX$4$p(H6h lHh, pX$5$p(H6h hHh, pX$6$p(H6h dHh, pX$7$p(H6h `Hh, pX$8$p(H6h \Hh, pX$9$p(H6h XHh, pX$D$p(H6h THh,L "(8Hhx[MjMB_2M  B  M,7_2 B_2MM,7 B,7dM M 7h2,,$|$p(x<6h4 6 xh, ||hX Rx,f,r:, |4|Xh Rx,h,t,,`pvH`pXv(<,pX$vHd @p(h6x j| Rhx,pX$vHd @p(6*,`,`fH$`hH`nH `pH,X^>,`jH$`lH`rH `tH ,X^,,<,,vH(,X^,< 2(8Hhxh2,,$|$p(x<6h4 6 xh, ||hX Rx,f,r:, |4|Xh Rx,h,t,,`pvH`pXv(<,pX$vHd @p(h6x j| Rhx,pX$vHd @p(6*,`,`fH$`hH`jH `lH,X^>,`nH$`pH`rH `tH ,X^,,<,,vH(,X^,< 2(8H( ,K<6<,Xy,,|$p(6 ,p$P|$p(<64 6 ,Pb\rpLb\rDL,|`$Ppp$Lp$p(6 N,,Hb\r`Db\rpDL, |$Hp`$Dpp$p(6 N,,@b\r`<b\rpDL,|$@p`$<pp$p(6 N,,8b\r`4b\rpDL,|$8p`$4pp$p(6 N,,0b\r`,b\rpDL,|$0p`$,pp$p(6 N,,`$p(6 N,LPp(H6h Hh, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H.,,($, phv( pxhH, ph$vd @p(86( N8,j(h 8vrxD,j$8,ph$vd @p(6( $8(,jhN,,,vH,`pxv(`phhT, ph$vd @p(6( N,jh (vrxD8,$f:,h,xv`dphh,jj$8R,h,jj$8h R,jh,,ph$vd @p(6( jj$8(,h,,,v,jhR,`d,(`$,j`$8,ph$vd @p(6( `$8(,,,v,< >44HX(8,, p$:$p(6p Pp, p$;$p(p6 Lp, p$<$p(p6 Hp, p$=$p(p6 Dp, p$>$p(p6 @p, p$?$p(p6 <p, p$@$p(p6 8p, p$A$p(p6 4p, p$B$p(p6 0p, p$C$p(p6 ,p,L@p ,,$|$p(x<6h4 6 xh, p$ $p(h6x  hx, p$ $p(h6x hx, p$ $p(h6x hx, p$ $p(h6x hx, p$$p(h6x hx, p$$p(h6x XHhxH, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H6h 8NH,j8|XH Rh,X^ ,X^, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H6hhx ,, ,$z$p(j6 Nj,,d@p(j1$$Z$J$:$z$p(*6   * @ T j*,:R,|*vjjvj *j,,f:@JfZ@,:^,<,,d@p(1$J$Z$z$$:$p(6   * @ T 6* ,p(16 6 6* ,p(16 6 6* :j*,:9,:$J$p(16 6 ,:$J$p(16 6 ,jj:N,`d>,:,jvj^ ,`p:$J$p(6 j|Z*z Rj,v,v,rJ:R,`p:$J $p(6j `pZ$z$p(6 *6t j*,,`p:$J $p(t6* `pZ$z$p(6 6j t*,,`p:$J$p(t6 t,:^,:,,,v,,:$p(t6 Nt,j:Rt ,d| ,,x|,,|l,t|pl,f:@J!fZ@tpzt,: Rt,<,,hf: ,Jvd|p:hD,|dH,,dh,Jv4dp:hT,j4pJjd:t($vj4h,v4,,d`r:,:Rt,\|vtjtvj* t*,XdP,f:@JfZ@tt,:^,<,,d:^>vtTjtP,:Rt,:^,<,,P,L,:,jvj^, ,H|:jtD|J`pZ$z$p(6 *@|jjj6d(<|8|p$p(`6 t*j`p,v,v40,f @,0f @,,T0Hr^,T|,(|`jPpf@`p,^,<,,v,v4$,f @,$f @,,T|,(|`jPpf@`p,^,<,,v ,rR`,vvr&,,vvr,r,,j`,v,vdDz,$p(`6 N`,^,<` NDD$DTP4dLL`pt*jxfH,,r,R,^,<,,^,<"H ,, P,X,`,,`T,H`4,,,(,0,~p,|l,zt,xx,v|,t,r,p,n,l,h,h,f,d,b,`,\,^,Z,X,V,T,R,P,N,L,J,H,F,D,B,@,>,<,:,8 ,6,4,2,0,.,, ,(,&$,$<,"0, ,,,,,,@, x,H,T, D,0T4,08(,|,X``,L,8,,dt,\, P,p0b,l ,d, ,h,,,,*,&,,,(,0*,0,,`0F`,@,,,,:4`,,,(,,*0d \LD@<8$ hA"AAAgAK *\Rffff*1fbbeb094b*\Rffff*1ebbeb094bm*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#5*\Rffff*1dbbeb094b*\Rffff*1cbbeb094bm*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#6m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#0m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#1~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#0~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81*\Rffff*1abbeb094b*\Rffff*1bbbeb094b$ 8  f    , P  | H   r 8  h, y: **  ,   *,  h* -     8|  K 49 @#  8 F < ,   T,  .`< `M  jLot nc  o  b* 8 88DD (  p0Xt(   * @ T   * @ T ( pXd( H(  H  H H   * @ T  D  * @ T   p t   H | \|\T d $p \J8 ` 4 T(  `   |dpX   ` d P Z      METp`2N(N *N8N$F\N0TN<bNH P.PPBD H T `hl pxP|&F hPB  ,4DDXP 2t&\00X ltx|T<H H(DD `t Rh<B, p 2| 2@   $,, <HP T`Vd  T8  0<$@"TPh ,H 2$  8 2tD *x 0    0:       8 X<     T < @H $B  *l      N R8 &  *l       @  ,  @  L  ` l p    &   P (  <NLL6@ ` pP|BH* .(<DL"P ^d@ 2  6   ( (P,&|NL 6lD PBTX`hHp*." ^@  $2,  H6P  ltx| , P*4PL`L P"dhpPxH@@@@,@DL\@x@:&B@@@@0@H@`@x:@@@@@@ @8@P@h@@@@@@@@(@@@X@p@@@@@@@@0@H@`@x@P($@FPP"@@@,@D@\@t@@@@P,@lPN<ZDNN@ LH 4 H !P !Bp!t!|!!!,!.!:!*!! R"$"4"8" <"&D":X"*p"" "" &" "0""# R# $#,# 0# 4# <# H# ,X# l# R### ##P#,$0$P$D`$$$ $P$" %<$%H8%*T%(Ll%%*%(L%%*%(L%&* &(L8&`&*d&(L|&& &&&&I*************************************************************************'Title: CreateExpenseReport functionCreated: 10/2/96 daw Modified:Purpose:Arguments: Returns: Called by:I************************************************************************* $ '+ ' rg' eI************************************************************************* Title: ReadMapTable functionCreated: 9/30/96 daw Modified:@Purpose: User selects from a dialog box which template to use.Arguments: Returns: Called by:I*************************************************************************8YXYdaYp B@ &Need to find map for selected template$ B@ =Check to make sure mapping table exists for selected template @  4 * J @ T % '  T  @  $`  $` '  j  *  '  t A@j ' rgGo to template map table @  4 * J @ T % ! ' ! ! ! ' ! ! !  ' #9'  % ! '  % ! ' #  '  A ' B $ ! $  j D%If current section is not List format $ '@D#Day/Date: TRUE if row, FALSE if col $ 'TD*Day/Date: TRUE if fixed, FALSE if variable @te $ ! $ !  '\` $ ! $ !  'g $ ! '&'' !q'g@ A* $4 B@ B@'`$@ 'gOIf the number of spreadsheets exceeds 5, then ask user if they want to continuean      ' ! $j '!  J ErfgJ j' T   `  j `  JagDateArray(j) = aMasterDateArray(j + ((ngDatesOnTemplate - 1) * (w - 1))) `  T   $  ` +j ` 'g'+Test for the existance of the template file$  @$j '`  J  @  $`  $` '$  ` '  t A@j ' 'rgJ  @$t '=Open the template  g' edrgLo 'JA ,Place header info on all templates generatedRLoops through each line in the map table - populating each section of the template'  B@    $ !   d *  ( $ '@C#Day/Date: TRUE if row, FALSE if col $ 'JC'Expense Type: TRUE if row, FALSE if col @$  J$  @ J   @   t A@j  F' f rrigle $ 'T;6Day/Date: TRUE if fixed label, FALSE if variable labelri $ '`;:Expense Type: TRUE if fixed label, FALSE if variable label' T$  `$    @   t A@j or' ngrf gpe A  !0If current section calls for listing of expenses $ ' ` Else $ '**$ '**g**  ' ** ** T ** ( **' **e**I*************************************************************************"Title: GetOrientation functionCreated: 9/26/96 daw Modified:HPurpose: Determines orientation of each section of the expense report. fEArguments: nRow - The current row on the map that we are to read from/ sType - 'Day/Date' or 'Expense Type'Ca:Returns: TRUE if row, FALSE if column, NULL if not found Called by:Calls:I*************************************************************************YY Y  *$ %4 B@  ''  a' ' g'   $ ! $   $ !*'G 'GGGGP' nGGG GP**' **j**r**g** **' If no orientation was founde**I************************************************************************* Title: GetLabelType functions Created: 9/26/96 daw Modified:GPurpose: Determines label type of each section of the expense report. fEArguments: nRow - The current row on the map that we are to read from/ sType - 'Day/Date' or 'Expense Type'>Returns: TRUE if fixed, FALSE if variable, NULL if not found Called by:Calls:I*************************************************************************8YXYd Yp  *$ %4 B@  ''  a' ' g'   $ ! $   $ !*'G 'GGGGP' nGGG GPd' j**r**g** **' If no label type was determinede**I*************************************************************************#Title: GetSectionMap subroutinealCreated: 9/26/96 daw Modified:FPurpose: Sets global variables for everything in the current sectionEArguments: nRow - The current row on the map that we are to read from Called by:Calls:I*************************************************************************YmnYapILook at what data will be used (always in 10th-48th columns in MapTable). *$ %4 B@ $ ! ' $ ! ' $ ! 'j $ ! 't' $ ! '' $ !  ' $ ! '' $ ! ' $ ! 'J J ` E'_E'f $ ! ' $ ! ' $ ! ' $ ! ' $ ! ' $ ! ' $ ! '  $ ! 'T $ ! '  $ ! '* $ ! '4 $ ! '@ $ ! 'J $ ! 'T !$ ! '` "$ ! 'j #$ ! 't $$ ! ' %$ ! ' &$ ! ' '$ ! ' ($ ! ' )$ ! ' *$ ! ' +$ ! ' ,$ ! ' -$ ! ' .$ ! ' /$ ! ' 0$ ! ' 1$ ! '  2$ ! ' 3$ ! '* 4$ ! '  5$ ! '4 6$ ! '@ 7$ ! 'J** 8$ ! 'T** 9$ ! '`** D$ ! '**k**I*************************************************************************"Title: GetHeaderMaps procedureCreated: 1/20/97 dawPurpose:fi?Arguments: nRow - Row in the map table where the headers reside** Modified:I************************************************************************* :$ ! 'j ;$ ! 't <$ ! ' =$ ! ' >$ ! ' ?$ ! ' @$ ! '** A$ ! '** B$ ! '** C$ ! '**k**I*************************************************************************%Title: BuildExpenseArray functionCreated: 10/08/96 dawl Modified:IPurpose: Build an array that stores the row/col position and all of theG expense types that will roll together. Format is as follows: uT 1st unique Row/Col 2nd unique Row/Col 3rd unique Row/Col ...xpH Expense 1 Expense 2 Expense 4xpH Expense 3 Expense 5eaesEArguments: nHeaderRow - Row in the map table where the headers reside. nRow - Current row in the map tableBReturns: TRUE if array built successfully, FALSE if unsuccessful Called by:I*************************************************************************8YX Yd!Yp Y| *t 4 * 4 $ ! 't t t$ t+t $ ! +t  ' qtg   *  $ ! 't t t$ t'j'  ` j t ` $t '  ` $t]`  ''j $ !  ` +t' qjgt ` ! j 'j * j@t t j+t** $ !  j+tg**g** **e**I*************************************************************************%Title: PlaceHeaderInfo subroutineCreated: 12/20/96 dawon Modified:=Purpose: Sets header info from Options dialog onto template Arguments: Called by:Calls:I*************************************************************************   ( ( J$ %4 B@  j t @ j t$ ( D Header1 infog   J  $ ( D Header2 infog   T  $ ( D Header3 infog   `  $ ( D Header4 infog   j  $ ( D Header5 infog ( rakj)For Applications*#3m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#5~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81*\Rffff*1abbeb094bp  ** j    \ll | V (t L" ,(4   ou|  C ** " "X Xhhx j *H" N    8    xF ( , Cɀ\`D\ j  TTlL L# t B95B. Bx(, <_(j \LLl|Lt  | XhHx (\~(D`jt`jt `t T `tLD,x MEHbTxNN *N8N$FN0TZN< V$X*|<TFH2VB4 4< px V"*DDTVB 8@HPX &\:h    $x      N $ 8, &D PX\`8d"Bx & &V$8TdVB@D@HJd:| &V"* L\xVB@  &D $hP  t  "B   &  V & H Ld V R V\ <   V Bp <t *  &  ,  V   0 L \ x V B    L XB2,,d8,`d:F,d:,``,` bHr,``dlF,`,`d`,j`d,|,` dHn,``dlF,`,`d`,j`d,,,`d,,`d,,f| ,h D  l Xl h x ` ,, H2,@p46|46|>, H.,@p|46J6|,,H4 |,, |$@p6 , @p<6 N,|$@p6 N,@p46,H4 ,,$@p6N,|xt |d$@p6 |xtd,8,4,d@d@ d@@pd46 `tNd,,$@pd6 Nd,hL tx|dHh, pX$0$p(H6h |Hh, pX$1$p(H6h xHh, pX$2$p(H,,,|$@p6p <p,h,l |$@pp6 Plp,$|\$@pp6Np,\$@pp6 Np,hT lpjz,b,`Z,`,,j$jjZ00:00:05z$@p26@jz2,vV, |j2fZ@z"jz",Z$@p",,l,,$@pz6Nz,|$@pz6j <zj&,8,4,rZRj,,dv`^V,0`RN,J`FB(|z$@pj6  RNJFBjz,b,`Z,`,,j$jjZ00:00:05z$@p26@jz2,vV, |j2fZ@z"jz",Z$@p"6 N",Z,0,,|2$@p"6 "2,d@d @ d@@p"<6 T`jtN",,Z$@p"6 N",@p"462N",h ,,BFJNR"2jzp(H6h Hh, pX$$p(H6h Hh, pX$$p(H6h Hh, pX$$p(H6x,,H D,D Rv,^,,^,,< :xv xX`PL `0@4`|tp ` ``D*$H<,8(@@" K ~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#0m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#6m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#4m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic .  .  V$$|>6V8,VB04<D L X d p|   &   &(HXt  O*******************************************************************************Title: FileExist Function$Created: 10/08/96 Douglas A. Weitz6Purpose: Tests to see if a file or directory exists Modified:MArguments: sPathName - string expression that specifies a drive and directory? sFile - String expression that specifies a file name ,Returns: TRUE if found, FALSE if not found cO*******************************************************************************SE,   v' ( IF file doesn't exist then FALSE'j `( ELSE TRUE'j geO*******************************************************************************=Title: OpenFile Function'#Created: 7/13/95 Douglas A. Weitz= Arguments:=Returns: Workbook name if successful, FALSE if unsuccessfulModified: 8/9/95 dawPurpose:=O*********************************************************************************Declare VariablesY**Y**Y' ( $ ! $t A@ A@   *   J  T  j ( {'   R4* J00:00:05 B@@   @ A@j ! ( t't cg4   (  ` j t B@Tg ( e: !'t eO*******************************************************************************=Title: CloseFile FunctionCreated: 7/13/95 dawPurpose:?Arguments: sPathName  sFileName bSaveLogical sPasswordC Modified:O******************************************************************************* ( $ ! $Erf    ( $ %' (  eO*******************************************************************************Title: SaveFile Function| #Created: 7/13/95 Douglas A. WeitzCPurpose:Arguments: sPathNameC sFileNameC nFileFormat sPasswordModified: 6/5/96 dawO******************************************************************************* (   `   ( A@ A@ 2 `  t B@' ( eO*******************************************************************************Title: NewWorkbook Function Created: 7/17/95 dawFPurpose: Creates a new workbook. The new workbook becomes the activeP workbook. Takes 1 argument: either (1) a string specifying a templatenaK for the new workbook, or (2) a constant to create a new workbookO containing a single sheet. If argument is omitted, a new workbook is=6 created with the default # of blank sheets.Arguments: vType Modified:O*******************************************************************************me t  (   B@C ( !'eO*********************************************************************************Title: NewTab FunctionCreated: 7/17/95 dawPurpose:+Arguments: nTabTypeC Modified:O*******************************************************************************   * !4B@  @a !JB@xgeO*******************************************************************************Title: BubbleSort FunctionCreated: 10/27/95 daw8Purpose: Sorts an array of data using an N **2 method.r0Arguments: aArray() - Array of data to be sortedO nOrder - 0 to sort in Ascending order; 1 to sort in Descending Order&Returns: Sorted array (as a variant)Modified: 2/20/97 dawO*******************************************************************************xYYY4a33cab843ARc33cab843 Oe33cab843YUPV,t,h,L6$$VZ6F`D00\0,`0 0<*$0X0<000T0d0P0L00`000h`00t0p0l<F`|00<8< 8*0000@04`000, ,$`0:0*,008<84H0D@x (rAAAA #A A$A(tK ~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#0m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#3*\Rffff*1bbbeb094b*\Rffff*24bbeb094b*\Rffff*23bbeb094b*\Rffff*22bbeb094b*\Rffff*1fbbeb094bm*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#1*\Rffff*21bbeb094bm*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#6m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#0*\Rffff*1dbbeb094b*\Rffff*1abbeb094b~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81*\Rffff*20bbeb094b P 8l4]  dJ,X  X|*  *r  * T84  tF\, d8  ( TT 4   ME<THKxDN* **N8FN$FN0Z\x.VR PtX\\xZX0HV^(ZZ$X(|:L@DZ" & &,@ T>`,x::.  2t*L0`tx:|6F.  2t *D 0X u $(TFTr>\>,,,|$p8(6N,L > 4 ,,,d,d@p8(6N,$|$p8(6pJ6Tp,$|$p8p(6Jlp,|$tl, Auto_Open$tl`,l, Picture 78$dlgExchangeRate$p8p 6j6\t6p\,$|$p8\(6pJ6\p,$|$p8\(6N\,LT  l\pD,, CURRUSER.TXT,  , h, DN, ft,bp, DZ,,,,,H<D t,p86@,p86<,p$p868,,p8 6`,p8 6,p86\,p86X,p86T,p86PjL,p86H,p86D,p86@,p86<,p$p868,p$p864,p$p860,,,(,p^$, , DlTEMPLATEPl,,Dl EXPENSE.HLPPl, EXPENSE.TXT, MAPTABLE.XLS, LOCAL.XLS, EXCHANGE.TXT,LDlVZ F6`,VPV,f&@p,,,$p86N,^>vjP,^>vjP,d,L&l6,,,$p86N,$p86N,r,Rn,5 : |p``,fp@``,L,,p^>^ZvZ`j`PZ,,p^>^ZvZ`j`PZ,rp,pR`,ZV|v`j`vFjF6ZV `F6,VPV,fp@f&@6F6F,L,,&^>^VvV6j6PV,&$|p$p866N6,p$|&$p86<6F4 6F,r&,&R6,VZ|Fv6j6`vjVZ F6`,VPV,f&@pf@6F6F,L,,&^>^VvV6j6PV,&$|p$p866N6,,,,6j6,&R6,,6j6,&R6,,,|r&,&R6,x,t,L,,prp&R6T,l|&$p86<6 N6,p8636jN6,,&^>^VvV6j6PV,&^>^VvV6j6l p :t 6  *      .  , 8 bL            2  "     :8 :P h  p | Z $ ( 8( ` x Z "   & : : , 4 Z8 " (   $Z4"",",",",",$,@H",t",",",(6(6,(6T |  4  6  4Z8&*N8"PtZB "  H .8 hxD Z($*L6xZ"48"X|.JF  8pH@6\lZp(*" D\Zl"2S/////////////////////////////////////////////////////////////////////////////////// Project Name: IGUANABuild #: 0.2 Test(Last Update: 11/25/97 Douglas A. WeitzP 11/25/97 daw - USER.TXT file is now read one line at a time. This avoids theL problems w/ using commas and any other punctuation in theI 'Options' dialog box. (mOptionsDialogBox!ReadUserFile)R 11/25/97 daw - New subroutine added that checks the Expense file to see if anyU key words are being used as data parameters. If true, this routineU modifies the keywords in the data file and in the code by adding aT 'pe_' prefix to the affected keywords. (Module2!CheckExpenseFile)R 11/25/97 daw - Error in the logic when checking the advanced filtered data forB currencies. Changed 'If (ngElements > 0)...' toO 'If (ngElements > 1)...'. The old way would always result inX the function returning TRUE. (mCurrencies!CheckForMultipleCurrencies) 09/18/97 daw -S///////////////////////////////////////////////////////////////////////////////////S***********************************************************************************Title: Auto_Open Function"Created: 6/3/96 Douglas A. Weitz4Purpose: Automatically create/print Expense ReportArguments: ECalls: Globals, OpenFile, AddHeaders, SetDatabase, ExpenseDialog,9 IsolateRecords, CreateExpenseReport, AutoClose Modified:S***********************************************************************************  A ( (%Test for the existance of 'LOCAL.XLS'  4$j ' 55y:  4'  A@j e ttag  4$t 'A  4$'(Test for the existance of 'MAPTABLE.XLS'  *$j ' J J  *  $`  $` '  ` '  t A@j t g  *$t ' *$ ( *$ %4 .'Test for the existance of the data file   $j ' J J    $`  $` '  ` '  t A@j tg   $t ' $ (AAAdds headers to the data file A $ ' E*f(Invoke the InternationalCurrency routine4$4' Ef\Invoke IsolateRecords routine to only work with records identified in the Expense dialog box@A@ $ ' JAJTATlet hgt tJ J$ B@ `B@jmeg**Close MapTable & data file  *$'  $'AT  A@ **kS***********************************************************************************Title: Auto_Close Function"Created: 6/3/96 Douglas A. Weitz2Purpose: Clean house before closing program downArguments: Modified:S***********************************************************************************88A (  *$'  $'AtvakS***********************************************************************************Title: Globals procedure"Created: 6/3/96 Douglas A. WeitzPurpose:Arguments: Calls: GetDataPath Modified:S***********************************************************************************dd !'Hdefines variable !'Hdefines variable !'Hdefines variable !'Hdefines variable !'Hdefines variable !$'Hdefines variable !'Hdefines variable !'Hdefines variable !'Hdefines variable !' Hdefines variable  %'Hdefines variable  %'Hdefines variable  %'Hdefines variable'*'4' '  TEMPLATE'$'    EXPENSE.HLP'  EXPENSE.TXT'  MAPTABLE.XLS'* LOCAL.XLS'4 EXCHANGE.TXT'TkS***********************************************************************************Title: GetDataPath Function#Created: 11/6/96 Douglas A. WeitzGPurpose: Reads a file that contains the path location of EXPENSE.TXT.Arguments: Returns: Path of text file Modified:S***********************************************************************************YY CURRUSER.TXT'* A@ A@    *v'(If path file has been found then read it {{'4   * 4 4  4R**g  'eS***********************************************************************************"Title: CreateToolbar procedure#Created: 1/17/97 Douglas A. Weitz0Purpose: Creates a toolbar for the applicationArguments: Modified:S*********************************************************************************** '4defines variableMake sure toobar is deletedtAtBuild and show toolbar  @B@T $@!JB@ $@%J 9 Auto_Open9`m Picture 78dlgExchangeRate %j%tB@ $@%JB@  $@(kS***********************************************************************************"Title: DeleteToolbar procedure#Created: 1/17/97 Douglas A. WeitzPurpose: Deletes a toolbarArguments: Modified:S*********************************************************************************** $@B@kLpj@P`p@@P,@@d @ lstCategories$h@6`N@,D,, lstCategories$h6TN,d|$lp,<6 N,@,@dph`l,@$$lp,P6@ @@P@,@`,@b@<j@0N@,@dph ,@@$0P@@@P,@@d @ lstCategories$h@6`N@,@ Z,L" 0`p@P,,dExpense$lp, 6pjhp,d|$lp,p<6 Np,$`$lp,p6  p,`,$`optAllCategories$hp6 Np,,p`h@.,`^,@,f $` lstCategories$hp6Np,$` optAllDates$hp6 Np,$` txtEndDate$hp6Np,`$ txtEndDate$hp6 Np,`$lp,p6Np,hp \,`$lp,p6Np,\`Rp,`,h,,pXjpNp,`RpF,bp` ,,TP<USER.TXT8 Z<8, `, `, `, `, `, L|`, ,pXjpNp,,Hr`\,\`Rp,,pDjp\,\`Rp,,`,hx@P8<p`pP" (<D4tT <$$,$v`$l$$F$0$P` `D$@4$$<T@$T p b$h$$*\$* $$, HL$X(8 d`AAA"A"A  K m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#5*\Rffff*1fbbeb094b*\Rffff*24bbeb094bm*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#6m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#0*\Rffff*1dbbeb094b*\Rffff*25bbeb094b~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#0*\Rffff*22bbeb094b*\Rffff*1abbeb094b~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..T  DD 0@P`p#K7$ARV8,,d@$lp,6JN,L 8 ,, lstCategories$h6pp,b,`ph@,d @p`RNp,@,d @` lstCategories$hp6@p,d,,@",@<P<,@d:@<P<,Criteria$ |`$lp,p<64 6 p,@d:r`h,@`p$ $ Trip$lp,6 6 p,z,,`Database$d| $lp,<6p`6$d@Criteria$lp,$lp,6R p,BB,`$$ Criteria$lp,6 6 , optAllDates$h6 ` R,`@d:r h,@ $$ `Trip$lp,6 6 ,z,,`Database$d| $lp,<6`6$d@Criteria$lp,$lp,p6*R p,`$$ Criteria$lp,6 6 , optEndDate$h6 ` Rh, optEndDate$h6 ` R, txtEndDate$h6, :TD,f @`0f@,, ,h,,PBB,,,r RZ@,f @`0f@,, ,h,,, ,h.$ ,@P$$<pd:,, lstCategories$h6~p~,dH,nphN,d @p~nRN~,d,@,d @n lstCategories$h~6@~,,N",dHH@,4fn@0f>@~,~,>^,<,,~(j~N~,> R~@,$f>@n0f@~,~,>^,<,,>^,<r:N^~,,,^8,L,,,^8,LV,, optAllDates$h6p  R`p,$ txtEndDate$h`6N`,$ txtEndDate$h`6 N`, optEndDate$h`6p  R`p:,$ txtEndDate$h`6 N`,,LPV`p^~VrVvFP~N^(`d(|&$ p$jFn^$p66 N6( ,,optAllCategories$h6p  R`pF,$optSelectedCategories$h`6 N`,,LP`pj,,optAllCategories$h6p  R`p,Pd,optSelectedCategories$h`6p  R`p,P,,`ph@4,P^`,`@,f $ lstCategories$h`6N`,\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81 ,   $  8 G d og D 0  or j  @*  l84|  F`,  T,8  (@b d\- p  **  Jp N om Xst HC ttx eg @~V (l@D,OHLp|  d(@  J " @ * 4 @tP  ` @@    ``lXt  p TT D, MElxz6B,NN *~^N8bN$F^N0TFN<bDHp|T~fv` [P(`PB LDP8l2@D0&BH p" $D*"< B:8X &\ h &t  :  D4<$L@dt  , @HPL,HL,xP" J8 2Xh&x"Z"&B0R,4P8*  P( " x | " *P  0X   "$ "4 D $DL p Pt 2   J( Nt     P "l *Pp ,F   P & H d t    P " &J B8:X$Nx:P(<XhxP"  P&`P"L PXP\,BHH`PB  :$FX |"0"0^0 (04 8 D0P dlp t|P(N(<x0P B \`hpx$F"0"0^  "($8@L"V$0t`&d &:X&J>$$d0tx`:X$NT>x$J D 0    (,0 HTX@\* 0  P&LtDP"`2dx|Y@Y@,I*************************************************************************!Title: ExpenseDialog functionCreated: 10/2/96 daw Modified:Purpose:Arguments: Returns: Called by:I*************************************************************************DdExpense %j.2Determine how many Categories are in the data file $ B@ $ ! '=Run the routine that places the sorted list into the list boxA )Set the Categories option button to 'All' optAllCategories %(  |   + U  lstCategories %(#Set the Date option button to 'All'  optAllDates %( txtEndDate %( txtEndDate %(  ( ! ' ( ' **rg3Need to invoke ReadUserFile to get global variablesnc$4'*Cr */3>Create USER.TXT file (in case anything has changed) Overwrite!{'4  USER.TXT 4 4** 4C 4** 4C 4** 4 j C 4Rpl$4'*g$@' Validation Ef#$J' Validation** Ef**' eI*************************************************************************&Title: BuildCategoryList procedureCreated: 1/16/97 dawBPurpose: Takes the categories from the data file and places themF alphabetically into the list box on the Expense dialog box.Arguments: Called by: Modified:I*************************************************************************Y lstCategories %B@T<"Remove all items from the list box $ B@ `   $ ! +` ab$`$T'   $ +`fi $` lstCategories %B@` ltkI*************************************************************************$Title: CategoryOptions procedureCCreated: 10/6/96 daw Modified:Purpose:ndArguments: Returns:te Called by:I*************************************************************************Dim aBoolCat()ReDim aBoolCat(1 To nItems)toptAllCategories %! ch'tiooptSelectedCategories %! a'trrg  un t +I C  lstCategories %(kI*************************************************************************+Title: ChooseFromCategoryList procedureFiCreated: 10/31/96 daw Modified:DPurpose: If user selects/deselects an item in the list box and theatG optionbutton is set to 'All', the button is set to 'Selectedrk Categories'.sLArguments: Returns: Called by:I*************************************************************************optAllCategories %!  optSelectedCategories %( gkI************************************************************************* Title: DateOptions procedureypCreated: 10/5/96 daw Modified:Purpose: Arguments: Returns: Called by:I*************************************************************************@ optAllDates %!  txtEndDate %( txtEndDate %(  optEndDate %! a txtEndDate %( gkI*************************************************************************!Title: CreateButton procedureCreated: 10/7/96 daw Modified:Purpose:Arguments: Returns:id Called by:I*************************************************************************l'tkI************************************************************************* Title: PrintButton procedureCCreated: 10/7/96 daw Modified:Purpose:Arguments: Returns:C Called by:I*************************************************************************'tkI*************************************************************************&Title: ValidateCategories functionCreated: 10/7/96 daw Modified:<Purpose: Make sure at least one category has been selected Arguments: BReturns: TRUE if at least 1 item is selected; FALSE if otherwise Called by:I*************************************************************************YCYat41) Make sure at least one category has been selectedt lstCategories %!''ac  C $  'C @`is lstCategories %% +`g C Di t t A@j D'@errg$'le   t A@j D'@okrg'@eI*************************************************************************!Title: ValidateDates functionCreated: 10/10/96 daw Modified:HPurpose: Validates the dates that have been chosen and builds an array"5 of valid dates spanning from start to end.Arguments: *Returns: TRUE if valid; FALSE if invalid Called by:I*************************************************************************(YH YTY`tCYlie lstCategories %!'t'   $t @`( lstCategories %% +`  'g $`'  `$`'9Find the First Date => DMIN() for all selected categoriesCriteria *$ %4 B@ * ` $` Trip$% ( A Database $ !`% Criteria$ %'pDMIN to get start date******************************* T'*******************************CCriteria$% B@ 0Clear Criteria optAllDates %! 8Find the Last Date => DMAX() for all selected categories** `** $` Trip$% ( 0A CDatabase $ !`% Criteria$ %*'rDMAX to get start dateCriteria$% B@ 4Clear Criteriase optEndDate %! a71) If End Date, make sure a valid date has been entered> optEndDate %!  txtEndDate %!' $4**  t A@j C'J*r` dgEndDate = vDate T'kgg92) Make sure txtEndDate > first date. If not, alert user   If Start Date > EndDate  t A@j |'JCrgg'J eI************************************************************************* Title: ExpenseHelp procedureCCreated: 10/28/96 daw Modified:>Purpose: Display help topic for the ExpenseReport dialog boxArguments: Called by:I*************************************************************************  B@J()k,>$ lstTemplates$ 6N,L(.N~` ^,,$txtName$ 6N,$ txtDepartment$ 6N,$txtPhone$ 6N,$ txtProject$ 6N,$ txtBillTo$ 6N, lstTemplates$ 6TN,,,L0 j,0R 6,f0@Pf@ @ @,P,L,,dOptions$p$ 6j ,,$p$6N,  ,R,L,, lstTemplates$ 6,$h`,|P$d @ lstTemplates$ 6@0 R ,0,,,$`j,0R 6,f0@Pf@ @ @,P,,0$p$ 6N ,0txtName$  6@ @,0 txtDepartment$  6@ @,0txtPhone$  6@ @,0 txtProject$  6@ @,0 txtBillTo$  6@ @,0 lstTemplates$  6@ @,0lstLocalCurrency$  6@P @, j , j ,0$p$ 6N ,LL`p @<84*>,@$ DHLPTX\`dhlptx|*T` ` `8TF `@ *$0( PA!  !6A8K ~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#0*\Rffff*1dbbeb094bm*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#1m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#3m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#6m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#0*\Rffff*25bbeb094b*\Rffff*1abbeb094b~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFF (:$4`"<"vOr,,6,d@$p$6JN,L,f@|fl@\\,LTr \d,, | |p` fP&,`^>NJvJPjPPJ, |$$d@`lt080c.LocalCurrency.$p$P6p 6 Pp,>NJvJP jPPJ,`^>NJvJPjPPJ,  ,,`,h fd JPp,lstLocalCurrency$ t6TNt,lstLocalCurrency$ t6,,b,,USER.TXT`Z,`|,`|,`|,`|,`|,`|,`,,h* v,|| v,x| v,t| v,p|v,l|v,h|v,d|v,`|v,\|X,,|v,|v,|v,|v,|v,|v,|v,|v,|v,| v,| v,|| v,x| v,t| v,p|v,l|v,h|v,d|v,`|v,\|v,X|v,T|v,P|v,L|v,H|v,D|v,@|v,<|v,8|v,4|v,0|v,,|v,(| v,$|!v,v@btjt,lstLocalCurrency$ t6TNt,lstLocalCurrency$ t6Nt, |d$lstLocalCurrency$ t6Nt,LLX0&&`" t,,dOptions$p$ 6pj p,,,lUSER.TXThpd4lhdNp,4Jb,,|T$ lstTemplates$ p6Np,T,h,,b8,dUSER.TXTh8Zdh,8,8,8,8,8,8,8,|$TtxtName$ p6Np,|$T txtDepartment$ p6Np,|$TtxtPhone$ p6Np,|$T txtProject$ p6Np,|$T txtBillTo$ p6Np,|$T lstTemplates$ p6Np,T,h\ dhlpP @, j,,,, *.XLT~,b,j~n R^\,`v,v~^j^`nN^,^~,`d,,vb^j^,n lstTemplates$ ^6N^,^j^,n^,n lstTemplates$ ^6^,>vN`pnh,|nvNd @> lstTemplates$ ^6 R^,^,,,vNz,`r>RDICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81 D`d8 j pt8   d2 \   d  # P4* 4h 4** 48) 8DH; "p tt F l! 4  T   b P  DpC,CWQ   $ <,8$$~ 4 '  N 00 `<  HMETp`tsz#Ny *86N$FN0TBN<bTNH CP(Px*P" X\Dd & <"F"2l,`hlpFx 0 &<$B0>T @t >"B&T   &(P,2| >TPd"4>$D @0 BP @p 8P,@\l*.PP@,P"    ( .0  `  l Bx    "     ":  ,  8 "B@ d 2ft     0Z  P &D l F  : $ 4 LD J B P Bp t | D R     X ,<"DD hpt,x$J        $>D$Dd@ B @"D P2h* T,BLLP\" 0@P`p 0@P`p$<&>N@&HP* 8>T:*P$Btx $D  $P(2xPP$hV.:P4`PB*: 6p$8\:x  P& >@P" 2,@D0H\`I*************************************************************************"Title: OptionsDialog procedureCreated: 10/5/96 dawPurpose:Arguments: $Calls: InitializeOptionsDialog() Called by: Modified:I************************************************************************* Y,dOptions %j.At ( ! ' Etf5Check to see if dialog has been filled out correctly.'io lstTemplates %!'ay  Ma @ lstTemplates %%'nMqg ?If ogOptionsDialog.DropDowns("lstTemplates").ListIndex = 0 Thenor ti   A@j g (_Set global variablesHetxtName %!'@d txtDepartment %!'JtxtPhone %!'TJu txtProject %!'` txtBillTo %!'j lstTemplates %!'@iulstLocalCurrency %!'jnl$'C j$'lt (ltkI*************************************************************************,Title: InitializeOptionsDialog procedureedCreated: 5/19/97 dawPurpose:asArguments: Called by: OptionsDialog()8Calls: BuildTemplateList(), BuildLocalCurrencyList()** Modified:I*************************************************************************D.Initialize dialog box (by blanking things out)txtName %( txtDepartment %(txtPhone %( txtProject %( txtBillTo %( lstTemplates %B@TAACkI*************************************************************************&Title: BuildTemplateList procedureCreated: 5/19/97 dawPurpose:Arguments: $Called by: InitializeOptionsDialog()'Calls: BubbleSort(), ReadUserFile() Modified:I 05/29/97 daw - Fix for Excel97; Once lstTemplate caption has been set,I loop thru list to see if there's a match. If no match,% clear the caption.I*************************************************************************pYYYYC(Load Template list (read from directory) A@ A@   *.XLTv'' ] @C $  +v'C  '$$T'  lstTemplates %($4'' lstTemplates %!'C   @ lstTemplates %%at'qg  E lstTemplates %(fkI************************************************************************* Title: ReadUserFile functiontiCreated: 10/6/96 daw?Purpose: Reads from the USER.TXT file to set global variablesniArguments: 4Returns: TRUE if successful, FALSE if unsuccessfulPr Called by: Modified:E 11/25/97 daw - USER.TXT file is now read one line at a time. ThisD avoids the problems w/ using commas and any other c; punctuation in the 'Options' dialog box.I************************************************************************* Y,esY8dOptions %j.LThis is where we check to see if ID file is there. If it exists, we read it A@@ A@   USER.TXTv'  j '@ @ lstTemplates %(Po'4 Oriog D&Read from file to set Global variables{'4  USER.TXT 4 4 @ 4 J` 4 Tje 4 ` 4 j 4 @ 4RPopulate Options Dialog( @txtName %(** J txtDepartment %( TtxtPhone %( ` txtProject %( j txtBillTo %( @ lstTemplates %(Ar'4s:enoI*************************************************************************+Title: BuildLocalCurrencyList procedurem Created: 1/29/97 dawPurpose:**Arguments: $Called by: InitializeOptionsDialog()*Calls: BubbleSort()NModified: 05/19/97 daw - Routine moved from mCurrency to mOptionsDialogCode.;Modified: 03/18/99 vl - Added Euro to the currency list.**FModified: 11/08/99 vl - Added 9 new countries to the currency list.FModified: 11/26/99 vl - Fix error when 'Options' button is pressed.I*************************************************************************PY! 4+ @+ J+ T+ `+ j+ t+ + +  +  +  +  +  + + + + +cy + +al +  +In +ow * +l \+ed f+on p+ |+cy +** +** +** +**  +** R!+**$$T'lstLocalCurrency %B@T lstLocalCurrency %(riHInitialize dropdown list to local currency defined in Localization tablern lstLocalCurrency %(ccksfI*************************************************************************#Title: WriteToUserFile function**Created: 5/19/97 daw8Purpose: Writes the new variables to the USER.TXT file@Arguments: 4Returns: TRUE if successful, FALSE if unsuccessful**$Called by: InitializeOptionsDialog()** Modified:I*************************************************************************Yti{'4  USER.TXT 4 4 @ed 4 J n 4 Toc 4 `at 4 j 4 @ur 4Rp,'wree I*************************************************************************,Title: WriteToLocalizationTable functionstCreated: 5/20/97 dawJPurpose: If the selected currency does not match the local currency thatI was defined during startup, then write the new currency to the localization table.OArguments: sCurrency - The currency that was selected from the lstLocalCurrency( dropdown listbox..L4Returns: TRUE if successful, FALSE if unsuccessful** Called by:.Calls: OpenFile(), SaveFile(), CloseFile() Modified:I*************************************************************************  0/  4$t ' lt080c.LocalCurrency.$% (  4 $'Ca  4$' ' g**'**e**I************************************************************************* Title: OptionsHelp procedure Created: 10/28/96 dawMo8Purpose: Display help topic for the Options dialog box lArguments: Called by: Modified:I*************************************************************************Y<  Resume Next  B@Jt   t A@j kTP8, Lpe_j<d<,L$t$pd6 Nd,dv`h^4v,`hrL``hHrt6dL,L$t$pd16 6$ d$J,,L$t$p$16d 6 $d,,`dpL$t$p$16d 6 $d,x<p$16 N$,L$t$p$16d 6 $d,v4,l\$T,pe_$$,L$t$p$6 N$,dv`f^ ,`hL,L$t$p$16d 6 $dJ,,L$t$p$16d 6 $d,,`fpL$t$p$16d 6 $d,v ,$|L$p$16 N$P,l\ T<,pe_  ,L$t$p$6 N$,dv`d^,L$t$p$16d 6 $d,`fpL$t$p$16d 6 $d,`d., |L$p$16 N$,v*,P\,v`8,LP\<8$d8,, f@HjN,`,`dH,D|x,`fH,@|x,`hH,<|x,`jH,8|xh,`lH,4|xD,`nH,0|x ,`pH,,|x,,jx,H88 x \rDVX,rxv$|pfj6xp(FV$d@t 6 V,rfRb\rvDFT,rxv$Z,,f$|v$pV<6F4 VF,vCriteria$|f$pF<6V4 FV,v$|f$pF<6V4 FV,d:,vv6`pfh@,j6R,f:,v,rvfRFb\rDVX,rxv$|pfj6xp(FV$d@t 6 V,rfRb\rvDFT,rxv$d@tpfj6xp(F$tV 6 FV,,rfRpb\rvDFX,l|v$tpfj6xp(F$pd@tV 6 FV,rfRpb\rvDFT,l|v$pd@tpfj6xp(F$tV 6 FV,,t ,fv`ph,j8,fvlph,jj8,lJ,,rxv$vd @f$ DATE$p6F 6 F,=h=lh|V$vd @f$EXPENSE$p6F 6 FV,d`Tb,\|v$vd @f$PAYMENT$p6F 6 F,dXTr,<>\|V$vd @f$PAYMENT$p6F 6 FV,dTTb,v$vd @f$PAYMENT$p6F 6 F,v>,P,Database$t$Ld@fCriteria$p  ($C) XYU,,Criteria$|$p<6p4 6 p,Criteria$ Trip$pp6` $p46P6p`P,L`P`pp6 *P`,@Criteria$|0$pP<6`4 6 P`,0Database$=, !Database|`$pP466P<,,|$p<6 N,pDatabase$ Trip$p6` $p46P6`P,p$$pP16` $0$@Database$p6 *P`,@Criteria$|0$pP<6`4 6 P`,0Database$=, !Database|`$pP466P,P`,L,P` & ,,$p6N,|$p<6 N,Criteria$|$p<6p4 6 p, |$ TRIP$pp6 Np,|$ DATE$pp6 Np,|$EXPENSE$pp6 Np,|$PAYMENT$pp6 Np,(|$CURRENCY$pp6 Np,L|$AMOUNT$pp6 Np,|$VENDOR$pp6 Np, |$ CITY$pp6 Np,|$ ATTENDEES$pp6 Np,|$ NOTE$pp6 Np,|$ ID$pp6 Np,|$pp<6 Np,$$pp6 Np,$d@pp1$$`$P$@$$p60   * @ T 6 p0, @Trip$pp1$p04660p, @Trip$p06p6 0p, |P$ @Trip$p06 N0,|$P$`$ @Trip$p06p 6 0p,|$P$`$ @Trip$p06p 6 0p,|$P$`$ @Trip$p06p 6 0p,(|$P$`$ @Trip$p06p 6 0p,L|$P$`$ @Trip$p06p 6 0p,|$P$`$ @Trip$p06p 6 0p, |$P$`$ @Trip$p06p 6 0p,|$P$`$ @Trip$p06p 6 0p,|$P$` $ @Trip$p06p 6 0p,|$P$` $ @Trip$p06p 6 0p,L& 0pp  6` 6  `(@$d@0 lt040c.Tue.$p  6` 6 | `(@$d@0 lt040cP,,|$p<6 N,$t$p6d d,dv`^`,`dpt$$pd6 d,l\,l\(Tf,pe_((,(|L$`hpt$$pd6 Nd,l\j<8F$pV6jzFV,jz fj,rfRjR,xz|pfj6xp(j$vd@tF 6 FP,,xzvd@tpfj6xp(j$tF 6 F,,,f$v$Criteria$pj6 6 j,v8,v6,Z,<VZRHH&6Zz$$jFV 04$Dh,@<TxP\LHHDX@`<l`LTFdh| (P8t p0#%AK ~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#0m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#4*\Rffff*1fbbeb094b~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81*\Rffff*1abbeb094b   X at *** 4* @ DJ \ hT ` j da t     4   ^(& ldA  `  ( 2 > *`L 8  8<l  F l X,8P 5 ( LL( 6 $0TH<@*x t`  ^    ppz p ,p ZZ <  * @ T H<   * @ T H^ *0`` P  *0 ,  ME<THNN`N *N8N$FN0 %P,P| PBHLT\dlt|F"TF( (Hp,:.(T@2 (T`:.(T@2(T0X \h x    $\` Dd 8z @ 8z  X`P|  .(N$ ,L(Nx &X   P$PtF.F d Pt B  "          ( 0 8 @ H P X  \ d Ph *  P PT R $  4 PD "      $ !"#%&'()*+,-./0123456789:;=>?@ABKDEFGHIJ<LMNOPQRSTUWXYZ[\e^_`abcdVghijklunopqrstfvwxyz{|}~     2 >  D   .  L 8Fl *   (4 B (\@H| @H  2F ($8 :@` . (4B$ h@Ht @H  @F <(.L*t (4> @H( @Fh 8<  P&HpPP@XhPx" &2"VB B8DPDlFDDBFB@ 244DRX"^N B8,PB|$`$`$`$`$`$$`H$`l$`$`$`P&PxN80@PP`"N24(\6~|F"V> `Pd& ,<PL""V4 I*************************************************************************%Title: GatherExpenseData functionCreated: 10/09/96 daw Modified:Purpose: Arguments:Returns: Called by:Calls:I************************************************************************* Y,+Y8CYDYPPY\/YhCYtYY4YY@Y J$ %4 .tCriteria *$ %4 . $ %4 . j'J- 1 J4Loop thru all dates $j'44Get the current date t'@ 4$'*&Write current date to Expense template @ XIf Date orientation is by row4 4 j  t% ( @ aX$ElseIf Date orientation is by column 4 t  t% ( g@ @ XIf Date orientation is by row* * t  t% ( @ aX$ElseIf Date orientation is by column * t  t% ( g B@ ` ` @ ` $t'TPopulate the criteria  *  ` $t'   Eqf 4 DATE$% ( Z Range("EXPENSE").Offset(k, 0).Value = "=" & Chr(34) & "=" & sExpense & Chr(34)= =   EXPENSE$% ( ` ` E PAYMENT$% ( f ` j E<>  PAYMENT$% ( f ` t E PAYMENT$% ( f  A Set the criteriaDatabase % Criteria$ %'^DSUM to get dataPlace data in report  @<If Date orientation is by row  j  T t% ( `4$ElseIf Date orientation is by column  T t  t% ( ggClear CriteriaCriteria$% B@ ` ` ''eI*************************************************************************Title: DayOfWeek functionCreated: 10/28/96 daw Modified:?Purpose: Determines the day of the week for the date provided'Arguments: dDate - Date to be evaluated@Returns: A 3-character string representing the day of the week Called by:I*************************************************************************Y4 4$' GP j'*GP t'*GP '*GP '*GP '*GP '*GP '*j* *'eI*************************************************************************$Title: CheckExpenseFile functionCreated: 11/25/97 dawIPurpose: Checks the Expense file to see if any key words are being usedJ as data parameters. If true, this routine modifies the keywordsK in the data file and in the code by adding a 'pe_' prefix to the** affected keywords.Arguments: Modified:I*************************************************************************Y$Y0 Y<YHYT $ B@ $ ! '2YM  2  $ ! '> >  GP< Keyword 'Currency' is being usedpe_  ' <New name  2 $ ( <Replace w/ new keyword HGP<Keyword 'End' is being usedpe_ H'H<New name$ B@ <Select cell A1 `  2 <'FOR Loop thru total # of 'End's in file T `  ` 2  % ! '(<Determine # of rows in data set` % ! '(<Determine # of rows in data setg ( % B@ < Move to 'End' H ( <Replace w/ new keyword % B@ <move to top of next data set ` <NEXT ` GP< Keyword 'Expenses' is being used pe_ ` '` <New name$ B@ <Select cell A1 `  2 <'FOR Loop until get to 'Expense' keyword `   % ! '(<Determine # of rows in data set`** % ! '(<Determine # of rows in data setg0/ ( % B@ <Move to top of next data set ` <NEXT ` ( <Replace w/ new keyword GP<Keyword 'Trip' is being usedl.pe_ ' <New name$ B@ <Select cell A1 `  2 K$FOR Loop until get to 'Trip' keyword % ! '(<Determine # of rows in data set ( % B@ <Move to top of next data set `  E ( f<Replace w/ new keyword ` daj k I*************************************************************************Title: AddHeaders procedureCreated: 10/09/96 daw Modified:IPurpose: Adds headers to the 'Expenses' section of the data sheet. ThisI will be used for the Database/Criteria/DSUM gathering of data.Arguments: Returns:da Called by:I*************************************************************************l Call Globals** (** *$ B@ Criteria *$ %4 B@ ba TRIP$(  DATE$( it EXPENSE$( PAYMENT$( **  CURRENCY$( ** AMOUNT$( * VENDOR$( 4 CITY$( ns @ ATTENDEES$( J NOTE$( T ID$( $ B@ $ B@  `  * J @ T % B@ ifTrip  !B@n HInsert a blank line. This isolates the Master Expense List from the rest of the data fileTrip$!B@ &Add headers to the Master Expense List Trip$( ** Trip$% ( Trip$% ( Trip$% (  Trip$% ( Trip$% ( * Trip$% ( 4 Trip$% ( @ Trip$% ( J Trip$% ( T Trip$% ( kI************************************************************************* Title: SetDatabase procedure` Created: 10/09/96 daw Modified:HPurpose: Sets the database on the data sheet and have the Criteria tab2 in 'MAPTABLE.XLS' reference it as well. Arguments:Returns: Called by:I************************************************************************* Call Globals` GSet the named range 'Database' for the Expense section of the data file $ B@ DatabaseTrip$!  !B@Sort the records by dateor %   4*Database$B@in?On the Criteria sheet, reference the database on the data sheet# Criteria *$ %4 B@ Database=  !Database !B@kXTI************************************************************************* Title: SetCriteria procedureCreated: 10/09/96 dawel Modified:Purpose:FO Arguments:Returns:wo Called by:I************************************************************************* Call Globals nCriteria *$ %4 B@ (CriteriaTrip$!  !B@k1033cab843 L1233cab844C21433cab844 ]51633cab844mn\,vxrj\| flD ,`d,`,p|$vLd @p 6\ `8 \, p|$vLd @p 6\ `8 \,,vL,,t,pld,`l2,t ,h,`ld> d,,,t ,p,$$|$ $p 6\ 6  \,p 16\  Rl \,vL`d:rh,$$p 16\ 6l jL`R \lR,vf:rh.,$$p16 6\ j8Rl \,$$p16 6\ z ,jz\| R X|T||\j RlDZjz\|J:* fX|P|  RD6X|L|zj RZ6J,``Hrj`lrDJJ,H|$vd@j$tJ 6 NJ,`,`p,,j$$pJ16Z 6 $vd@Dd@tz 6 JZz,j$$pJ16Z 6 $vd@@d@tz 6 JZz,j$$pJ16Z 6 $vd@<d@tz 6 JZz,j$$pJ16Z 6 $vd@8d@tz 6 JZz,j$$pJ16Z 6 $vd@4d@tz 6 JZz,j$$pJ16Z 6 $vd@j:d @tz 6 JZz,j$$pJ16Z 6 $vd@0d@tz 6 JZz,j$$pJ16Z 6 $vd@,d@tz 6 JZz,j$$pJ16Z 6 $vd@(d@tz 6 JZz,j$ $pJ16Z 6 $vd@$d@tz 6 JZz,`d,,,,v,,,vLJ,j$$pJ16Z 6 JZ,,,j^,< f B88,<Lz@@JZz:Z \l< '(, t   v d 4 | 'L `   vz pj Z J ': r`x88 h`0lLfdPb`T\<XHd\V`Xhp|*  `,($ t@D48AK m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#2~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#0kb $$XLx,,pld,d,^4,(RpC:Rpld~C ~,R~ C:R[-1]C)~,`rl,`|n,d^,`bH,,|n```T^~VrVvFP~N^,`d,|&$ p$jFn^$p66 N6, =SUMl~,l|^$ p&$vFd @p66 ~6^,~,,L xF$$~6^,, rR,p $$$p6`6 `,$p$$p`16 6P6@`P,p^ ,,L`P`B,,|$p6 ,dHpT$D$ppt$pd$p6 64 6 4,p416 4,pld,`pD$pT$p4$`pd$pt$p$p6$6 4$,D CopyRange$p4$p$466$4,d $D$T$p$646 $4,D$T$p$164 6 $d$p6 $4,DAnchor$p41$p$466$4,DAnchor$p$$T CopyRange$p46$4,D$p$6N$,d$D@$pT$p$64 6 t$4,l , ll0tD, llpD,jD $&,Dvjh,`pTlpDj($4$d$p$`pt$p$p$`ldp$p$p$p6t6 4t,v,jt,,,,j t,`plpj(t$$pT$`pD$pT$p4$`pdjt$$pd$p$p6D64TD,,,d,d,,`plpdj(DTjtTt,vv,d$pD6 ND,`,<lB&,,DTt$4ZDg jZDg0ZDg * ^,,v$|$pf<6V4 fV,t , |v$pV6f 66 FVf,v$$p66 N6,b,f:,`d8`R,`d:`R,vv&jFh,,v`pvh,v&d @v$p66V j8Rf6V,v&d @v$p66V rxzfv&d @$p6 rxDv6V,`d,,,,v,v&,`,<:^2((&F$$v6Vf ,,,|$|$pl<6\4 l\,$||$p\<6l4 \l,,dH,pvL|p|h,@, p|$vLd @p*\Rffff*1ebbeb094bm*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#5~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81*\Rffff*1abbeb094b4   $   $ e L  t   Jda Pu  s: Tw    `1  D  @ D \  t I    D  Pj*L T4D I 48D$ ` j t  a DP$,@t( (|thd(` L (t' L t p pvF  & ' ~` P` n vz @(4((' p^   v*  V$p|4 F 6 ,PME0F</ND#N,>N *3N8T6N$ P,P|@DH0xPB( $,4<FDF`(|V ..*8(H R\ R| 8    <X@ "R<$V (b4D\jx*6  (Ph,Ph|RhRh RhtZxPh$NhtThPh h x |        @     P & @ J\ N  , < L N\ L D J< , P B     ( H0 Fx F  B 4,@`p$X 4     P0`LB>X*PB48@HPX<`6t(j ,,(b $HJl&l$`.n &2$&dXL ("  X$ |0  X04 8 @H8Lh &x P* (N8:P"D&H pJ|P P(D`pP" (<D4tT <, (FJ .t<lptxI*************************************************************************&Title: GenerateListFormat functionCreated: 10/10/96 dawPurpose::Arguments: nHeaderRow - Header row number in the Map Table= nRow - Current section row number in the Map TableBReturns: TRUE if array built successfully, FALSE if unsuccessful Called by:Modified: 4/21/97 dawI*************************************************************************,tlYtYDYCYYYHYC J$ %4 .t $ %4 .PtO(1) Read all expense types that have been selected to be reported into an array'_ 4 * 4 $ 'tC t$ t  ' @t $ ! +t $ !  +tg 1(2) Figure out if need to create an overflow area$`' j  '  tB@ Aj   $t'TgR(3) Step thru data file record by record and compare current expense type w/ array B@ j'J $ % B@ ! ] j % ! $j ` t % ! ` $t % ! '(   ` `    ` j  ` t  J    J t% ( T'J J'jg % ! J  t% ( tSend 'Trip' field to template % ! J t% ( tSend 'Date' field to template % ! J t% ( tSend 'Expense' data to templated  % ! J  t% ( tSend 'Payment' data to template % ! J  t% ( tSend 'Country' data to template  % ! J ` $t t% ( tSend 'Amount' data to templatex % ! J 4 t% ( tSend 'Vendor' data to template % ! J @ t% ( tSend 'City' data to template % ! J J t% ( t"Send 'Attendees' field to template % ! J T t% ( tSend 'Note' field to template J 'Jirqgg ` qg 4 % B@ ' eI************************************************************************* Title: CountRecords functionntCreated: 11/7/96 dawDPurpose: Counts the number of records in the database that fit the**G current criteria. This works list sections of template only.daArguments: &Returns: The number of records found Called by: Modified:H 07/11/97 daw - Re-wrote the routine to make sure minDate and maxDate.F were taken into account. This corrects the unwanted> overfloat regions in multiple page reports.C 10/21/97 daw - dMaxDate was incorrectly being decremented by 1.**% Removed the error.I*************************************************************************$YDYP.Y\YhgoYttaBSet oCriteriaSheet = Workbooks(sgTableFile).Worksheets("Criteria") $ %4 . ?Can go to data file to figure out how many records are involved B@  $! ! '@ $ B@ ' t'@ j$j' j$j' - 1)   ` @ $ ! ` $t $ !  $ !   'Tiqe:g gre ` rf ti '`enI*************************************************************************)Title: CreateOverflowSection functionCreated: 11/7/96 dawEPurpose: Creates an overflow section for the current section on the template.ti<Arguments: nRecords - # of rows needed for overfloat section8Returns: the starting row for the new overflow section** Called by:$Calls: CreatePageBreak procedure Modified:I*************************************************************************Y$Y YB@Y Y   ( 0(1) Get the dimensions of the range to be copiedng j t$ % ! B@ ! ' j  '  t$  t$ $!B@ CopyRange  !B@(2) Find the new overflow area $ %B@ $ % ! $ B@ 1Anchor  !B@(3) Copy Anchor$ CopyRange$B@er (on,(4) find 1st data cell for new overflow area @ t$ % !  'E(5) Make sure overflow section can accomodate the rest of the records    '    '*       $   t$    t$ $!B@  ' ` ' "Will need this value for remainderg *   $   t$   *  t$ $!B@g**`**' '*g**   * '  A4eP ( ro 'teI*************************************************************************$Title: CreatePageBreak procedureCreated: 11/7/96 daw Modified:HPurpose: Finds the end of the default user template and creates a page**3 break only if 'bgOverflow' flag is FALSE* Arguments:Returns:f Called by:I*************************************************************************Set the page break if necessary** ** $ %B@ * J % !(@pr'egkCrI*************************************************************************!Title: AddSubtotals procedureCreated: 4/21/97 dawPurpose:**Arguments: nStartRow -Returns: Modified:I*************************************************************************PYp`Y| Y Y]CYj j  't' (R jC:R j  C'`R T C:R[-1]C)'j  ^  ,~' E  'f     $'  '**   $ ( =SUM `, j  $ ( g k EN.OLB#Visual Basic For Applications*#1~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81*\Rffff*1cbbeb094b*\Rffff*1abbeb094bD * <H(  **D #  td l1     * ea d&  Po * 4* @ *X J 88#  **  ** J **  F   ` j : d8,**d(@L(4((@ (< 0 $x h PX gN H  8   4ME<TH~NNAN *(BN8TEN$F`@N0P(PxLF,\<N*P$"tx 24   (,$\4X\"Vt> 2@P&hPFNX,PB48@HPX`$Ld  8"4"4"4"4("4L"4p"4"   (P,$|2   < \ Pl B          0 H  X ` Pd ,  N :P  J < , < T Nd 2 P B8 < D NX t Px .  P*dP"6T\d"TlFad  MU X2r,,Criteria$D|$Hpx<6h4 6 xh,`xX$$$Hph6 Nh,X$$HphNh,X$$Hph$f p$H$Hpx$Hp8hx8, b\,vd @tt,Lxr8hxD$Hp$$ TDATE$Hpd6$d,,,Criteria$D|$Hpt<6d4 td,$|$Hpd<6t4 dt,t , >=`xd$D$4$ TDATE$Hpt6$ 6 t$d, 4<=XxD$$$$ TDATE$Hpd6t 6 dt$,,4$D$Hp$$ TDATE$Hpd6$d,TExtract$4$D$Hpd$Hp$46t6$dt,4 EXTRACT(TRUE)$Hp^,t ,D$T$4Criteria$Hp$6d 6 $d,L$dt   `1  D  @ D \ l,,@d:,` 0t$$Hp|6l@|l,<Dll|,, BdB,,` ,`bH, , `,vf@,b, `BB , B,h ,,,<r|Rl8Jr\<r<LR,D6 , B,h,,4,8f<@` 0v ,j ,l|L4|Arguments: CReturns: An integer indicating the total # of templates needed toay6 display all of the data the user requested. Called by:Calls: Modified:G 10/21/97 daw - Fixed the count of nDateElements (has to do with the*+ array starting at zero).@ I*************************************************************************dYTi j 'Jiq J  %@'@ eteI*************************************************************************'Title: IsolateUniqueDates procedure ECreated: 4/18/97 dawIPurpose: Retrieve all unique dates from the data file that fall between# the Start and End dates.Arguments: Called by: Modified:I*************************************************************************/Need to get all unique dates from the data fileYYTEY%Criteria *$ %4 .TE $ %4 .Populate the criteria B@ >= DATE$% ( <= DATE$% ( A  $ DATE$B@ Extract$  !B@ EXTRACT(TRUE)A@TClear Criteria B@ Criteria$% B@ tek I*************************************************************************$Title: IsolateAllDates procedure #Created: 4/18/97 dawIPurpose: Calculate all dates that fall between the Start and End dates.:Arguments: nDays - Total # of days (including Start & End) Called by: Modified:I*************************************************************************YY(Criteria *$ %4 B@ $ ( $ .`$   $ $.j(h E j `B@tf k  P"DHPX"T`F `L<2~  D>4BzL*Z &XP &pN&$LP\B"TF $0`DL :< P&X\ P0J,x P"  F  4 @@  X 4x   I*************************************************************************#Title: IsolateRecords procedureCreated: 11/1/96 daw Modified:Purpose: Arguments:Returns: Called by:Calls:I************************************************************************* Y,Y8YDDCriteria *$ %4 . $ %4 .Populate the criteria B@ `PZ Range("Trip").Offset(i + 1, 0).Value = "=" & Chr(34) & "=" & agCategories(i) & Chr(34)= = $`   Trip$% ( <=   Date$% ( A Filter the data B@  $ Trip$ Trip$% $B@ $ ! .J Criteria % JDatabase$B@L Set the databaseB@Database J!  !B@**Clear Criteria B@ DCriteria$% B@ e:kI*************************************************************************Title: RecordCount function fCreated: 1/21/97 dawPurpose: T Arguments:GReturns: Integer that represents the total # of records found for ther  categories selected.Mo Modified:I*************************************************************************\Y| YYn Criteria *$ %4 . $ %4 .Populate the criteria B@ `Z Range("Trip").Offset(i + 1, 0).Value = "=" & Chr(34) & "=" & agCategories(i) & Chr(34)= = $`   Trip$% ( A Database % Criteria$ %'Clear Criteria B@ Criteria$% B@ D 'eI**************************************************************************Title: RemoveIsolatedRecords procedureCreated: 5/20/97 dawDPurpose: Remove records that have been isolated from the main data Arguments: Called by:Calls: Modified:I*************************************************************************Y $ %4 . B@  $ ! B@ Set the original database   O X5,,$|$p |<6l4 |l,t ,$ $p l6| 6 l|,Database$ Trip$p l6\ $p |46L6l|\L,Ld L\l| 6 6 P0 dt , <=x$jT$$ Date$p 6 6  ,vT4,,tCriteria$|$p d<6T4 dT,$|t$p T<6d4 Td,t ,vDd:rth$,=  =|TjDd |t$jD$$ Trip$p 6 6 P  Td,vD$D,,Database$t$d@Criteria$p $p 6,t ,$t$Criteria$p 6 6 ,j,h2($$4D$$ TdL,,Criteria$|$p t<6d4 td,$|$p d<6t4 dt,t ,vTd:rh4:,= 0=|djTt | $jT$$ Trip$p 6 6 P0 dt , <=x$jT$$ Date$p 6 6  ,vT4,,t ,$ $p  $ Trip$p $$ Trip$p 6 $p d6  d,$ $p 6 ,$Criteria$t$vd @Database$p 6 ,Database$v6 $p 466,t ,$$Criteria$p 6 6 ,LL.$$4DT$$0 dtPF  (AsAK ~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#0*\Rffff*1fbbeb094b~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81*\Rffff*1abbeb094bh4 \@,  **  ,  P &   |  FD  `\ 8D8t,(,  T   D $ | l  \ J 0L $4 4 4   ME*$JNxMN(N iP*P|DatabaseTrip$!  !B@k|6 N|,\$llblExchangeRate2$|6 N|,,LT |v@,,txtExchangeRate$z6jZJ R:zj,J>,,JtxtExchangeRate$:6ZN:,,j2,8,2tp,2,8 lblCurrency26|:$Z6P6:Z,2,8 lblRate26|:$Z6P6:Z,,0,,JtxtExchangeRate$:6Z Rj:ZH,JtxtExchangeRate$:6Z$4:Z,,Lz@6:Zjz,,,(||$Hp 6 |,L|l$Hp |<6 N|, lTrip$Hp |6 6\ 6< L,|\<,l$ $ LTrip$Hp ,6< 6 ,<,Lv,d:r h, vjh,vd @ $Hp ,16< 6\ ,<\,vd @ $Hp ,16< 6\ ,<\,j,8l| ,L RvjhP,,jvz0phJP,j$Hp 6 N,jz,:d @Hp 1$$:$*$$j$Hp  6   * @ T h ,hRB,$*$Hp 6 N,Hp 16  f ,$*$Hp 16 6 : f 8,$Hp 16 6 ,$*$Hp 16 6 ,,,jz,:d @Hp 1$*$:$j$$$Hp 6   * @ T 6 ,,jz,8Hp 16 N,jz,8$*$Hp 16 6 ,vzJ,|$$Hp 46`P,^>v jhP,LJZz  ,,$Hp 6N,,rh,hR,L,^>vjhP,jvz0phJ,j$Hp 6 N,jz,:d @Hp 1$$:$*$$j$Hp  6   * @ T h ,hf,jz,:d @Hp 1$*$:$j$$$Hp  6   * @ T 6  ,$*$Hp 16 6 jz,8 ,,vzJ*,^>v jhP,LJZz @,,X, dlgSummary$Hp z 6jj.zj,Z$ lblSummary1$j6Nj,$Z lblSummary2$j6Nj,$Z lblSummary3$j6Nj,$Z lblSummary4$j6Nj,,d:rZJ,jJZ j,Z:,,Z:,,dvj:^6,,,d`ddv`^2,`pZ jJj,,`,8,`,8,ll|zvj jj"zj",ll|jv" j"zj"z,v2.,l|Z$ lblSummary`|"$j6P"j,l|Z$ lblSummary`f|"$j6P"j,v6.,@|$ZlblLocalCurrency$"6N",Z$Hp "6N", ,L* :J"jz,, lstCurrencies$6| 2|,2d@ lstCurrencies$|6|,l|l@||\ R,l1$\txtExchangeRate$|6N|,\$ltxtExchangeRate$|6 N|,\$llblExchangeRate1$|6 N|,\$llblExchangeRate2$|6 N| ,,2,8\txtExchangeRate$|6N|,\$ltxtExchangeRate$|6 N|,\$llblExchangeRate1$p$:$Hp 6 N,:v8d:rhd,j8`pj:$J $Hp 6 ,v,$`p$: $Hp 6 $`pJ$Z$Hp $j$Database$Hp  6  ,`p$$Hp 6 6 6 : 0 ,0,,0dr0dHr`dp:$J$Hp 6 @|Zj f D6*X,0,,0dv,v0phjf,`pj$$Hp 6 j:n ,vj,vb4jh,v0phJF,j$hj,8N,vJ,,0dH ,, ,,,,hfL8.*JZjz`$$ *z,,,p,ljh,hR,h,d, h,hR,,h,, optConvertNo$6` p RP`,h,`,\,P h,hpRP,<,X,v@0pph Z,j@,8p RP",pj@,8,v@ ,T,P,h" 0@P` \ R,n,l|L|<"8PLl($4`0P``DT4T8< Td8~F*hpp*,X\@ H@A  AAK m*\G{000204F3-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\SYSTEM\VBAEN.OLB#Visual Basic For Applications*#1*\Rffff*1dbbeb094b~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#0*\Rffff*1abbeb094b*\Rffff*23bbeb094b*\Rffff*20bbeb094b(  ( (L  $ x DX  ,p(*0D(42 4 P5  @ 7 ses: % , y:T **| ** J  j*/  h8T'   I D ! tF\v (    *D TD ] p@b@h: J T ` (j tD  ` m `pd#  ~.  Vh  V xp hLtt4 x@   @  < _O  * @ T   * @ T H   p P,D 8  T J :  z   z  j  Z ` LX@4v  * @ T   * @ T `  * @ T   * @ T Vz 8J   * @ T   * @ T `  * @ T j   * @ T 4MEvNJ\NPN *vTN80`N$FN0TzcN<bNHp'T~`nN`eNl:fNx08@PH24DTPdB0     $ 08<,P@lt |,N Z4XFJTdVt6XJ\V6Z8B2,RJ@8@xBB(X V$``,B,"  (Z  H P d  :t           P < \ x    P " $N "<8 \ P` :    0 @ PP " $L  , ,  (L$ $HL  p x "6  4T   2X.T<l p x44&F $@ P$8tN"PPt"<2$\"T8 \tHHB H " 0 H@\ ` h &p|P.,DTPd",P &<@"D(X 2f.b(H*H(TXP\. J0P|P" $B(*LL*x(D$<$>$> 0R$$<T$>x$>P*D`pP" $,4H<"@\"@"@"@    080,@p""22 &R,V @&FH &p |Z4*VH,Z"P &T`(d:,V XXd$\ : Z 2d * X >!\!t!Z!"! &!!$!" ,"8"H":L"d"h"","V" "4#:# 8,# @d#|##X##:#$X# $:$$&^`$:$$P$2$(%DD%%%%P%"&2&(&P,&4|&&F&','<'PL'"'2'''Y #Y  Y Y LY xoRY oEY  I*************************************************************************+Title: InternationalCurrencies functionCreated: 12/4/96 dawPurpose:Arguments: .Returns: TRUE if successful, otherwise FALSE Called by: Modified:I*************************************************************************'4$$By default, the outcome will be TRUEA$@'@ ErfAJT ! ' '4rg optConvertNo %! ErfA`Aj ! ' ETf**At**  *E $ E + f AAeS***********************************************************************************e:.Title: CheckForMultipleCurrencies functionCreated: 12/4/96 daw?Purpose: Checks the current data file for multiple currenciesmeArguments: DReturns: TRUE if more than 1 currency is detected, otherwise FALSEed Called by: Modified:O 05/20/97 daw - Changes because ltLocalCurrency is used (which is set in the / Expense Options dialog box).**R 11/25/97 daw - Error in the logic when checking the advanced filtered data forC currencies. Changed 'If (ngElements > 0)...' to * O 'If (ngElements > 1)...'. The old way would always result in(0/ the function returning TRUE.%S*********************************************************************************** Y Y ` $ B@ $B@    4 * J @ T % B@  % ! '* *  * % ! Trip$! ' $ (  $ (  ` $`  $ (    $ !  $ Database$B@ $ ! ! !  '* * L *  *  $ ! ** * t * ni  *ti $ !  + 96$$T'  *s:  $ + Mo :'@** *a'@**g**`**'@**g**e**I*************************************************************************5Title: InitializeInternationalDialogBox procedureCreated: 12/4/96 dawPurpose:**Arguments: Called by: Modified:I*************************************************************************dlgInternational %j.  optConvertNo %( **k**I*************************************************************************4Title: InitializeExchangeRateDialogBox proceduregrCreated: 12/4/96 dawPurpose: Arguments: Called by: Modified:I*************************************************************************dlgExchangeRate %j.lstCurrencies_Click (%Blank out all labels in Summary group   lblCurrency  %(lblRate  %( Load Currency list box lstCurrencies %B@Tcy  * $  lstCurrencies %B@`  $  lblCurrency  %(** $ lblRate  %(angRa at * cmdMore %( `awcmdMore %( gs: lblLocalCurrency %(: '4 4 lstCurrencies %(ArokexI*************************************************************************1Title: ApplyExchangeRatesToDataFile procedureCreated: 12/5/96 dawPurpose: Arguments: Called by:HModified: 2/28/97 daw Mileage expense types are excluded from exchangeC rate conversion.!I*************************************************************************Y Y,Y8` YD YP!   (  $ B@ Trip$! ! !  'Trip$% B@  ** `  ** ` % ! ' ** ` % ! ' $   `  % ! Pu `  % ! 'no $ 'y:  ':  `  % ( **g** ` ** ** ( **k**I*************************************************************************(Title: lstCurrencies_Click procedurehaCreated: 1/26/97 dawPurpose:Arguments: Called by: Modified:I*************************************************************************hYY(Y Load arraytxtExchangeRate %!'`etxtExchangeRate %!'**g**  4+ **"Place current selection in Summary 4  4$  lblCurrency 4 %(Cr 4$ lblRate 4 %(megs:A>txtExchangeRate %! txtExchangeRate %! (4ocgCrkI*************************************************************************'Title: LocalCurrencyCheck procedure**Created: 1/29/97 dawPurpose: Arguments: Called by:DModified: 05/20/97 daw - Using ltLocalCurrency. Selection of localngI currency only occurs in Expense Options dialogI*************************************************************************Y% lstCurrencies %!'4 4 lstCurrencies %%'   at1txtExchangeRate %(txtExchangeRate %( lblExchangeRate1 %( lblExchangeRate2 %( ` 4$ txtExchangeRate %(txtExchangeRate %( lblExchangeRate1 %( lblExchangeRate2 %( g**k**I*************************************************************************#Title: DisplaySummary procedurelSCreated: 1/28/97 dawPurpose:2Arguments: Called by: Modified:I*************************************************************************YYnDY(JY4TY@YLYXAt dlgSummary %j. q lblSummary1 %(  lblSummary2 %(U lblSummary3 %(ti lblSummary4 %(( '  '`%'g  lL'J'T `      `  Eqf** ` $ '`** ` $ 'j** J ` $` 'J T j $` 'Tat ` Fi J lblSummary  %(ou T lblSummary   %( es lblLocalCurrency %(fa ( B@  k S*************************************************************************************-Title: ReadExchangeRatesFromFile Function#Created: 3/24/97 Douglas A. WeitzIfPPurpose: Load exchange rates from file to array and use them as default valuestr& for the new expense report.Arguments: Modified:S***********************************************************************************p (!If file isn't found, exit routine  T$j ' Etf(2) Match entries  T$t '  ***$B@  $   4 * J @ T % 'Ex sT $   4 * J @ T % B@  % ! + gan ed  T$'k S***********************************************************************************,Title: WriteExchangeRatesToFile Function**#Created: 3/24/97 Douglas A. Weitz QPurpose: Save last exchange rates used in a file so they can be used as default7 values when a new expense report is created.sArguments: Modified:S*********************************************************************************** (B@If file isn't found, create it  T$j '  *$'`  T$t 'g (2) Match entries  *$B@  $   4 * J @ T % ' $ B@ ! il % ! E  % B@ f % B@ g` $   4 * J @ T % B@ g $  ( p $  % ( 4x = SaveFile(sgCodePath, sgExchangeFile, xlText, "")g   T`  B@ed  T$'k**I*************************************************************************+Title: ExchangeRateDialogHelp procedure**Created: 12/4/96 daw=Purpose: Display help topic for the ExchangeRate dialog boxArguments: Called by: Modified:I*************************************************************************  B@J:kI*************************************************************************.Title: ConvertCurrencyDialogHelp procedureCreated: 12/4/96 daw@Purpose: Display help topic for the ConvertCurrency dialog box**Arguments: Called by: Modified:I*************************************************************************  B@Jthklo1833cab84401a33cab844dirPBOle  6` 6   `,@$d@0lt020c.Continue.$p  6` 6  `,@$d@0lt020c.CannotAccess.$p  6` 6  `,@$d@0lt020c.NotFound.$p  6` 6  `,@$d@ 0lt020c.MapTableNotFound.$p  6` 6  `,@$d@0lt020c.MakeSure1.$p  6` 6   `,@$d@0lt020c.MakeSure2.$p  6` 6  `,@$d@0lt020c.PleaseSelect.$p  6` 6  `,@$d@0lt020c.PleaseSelect2.$p  6` 6  `,@$d@0lt020c.NoRecords.$p  6` 6  `,@$d@0lt020c.InvalidEndDate.$p  6` 6  `,@$d@0lt020c.EndDateMsg.$p  6` 6  `,@$d@0lt020c.HelpAccessMsg.$p  6` 6  `,@$d@ 0lt020c.CheckOrientation.$p  6` 6  `,@$d@0lt020c.MapTable.$p  6` 6  `,@$d@0 lt030c.Dot.$p  6` 6  `,@$d@0 lt030c.Dash.$p  6` 6  `,@$d@0lt030c.Period.$p  6` 6  `,@$d@0 lt030c.Colon.$p  6` 6  `,@$d@0 lt030c.Paren.$p  6` 6  `,@$d@0lt030c.EndParen.$p  6` 6  `,@$d@0lt030c.Quotes.$p  6` 6  `,@$d@0lt030c.Apostrophe.$p  6` 6  `,@$d@0lt040c.Sunday.$p  6` 6  `,@$d@0lt040c.Monday.$p  6` 6  `,@$d@0lt040c.Tuesday.$p  6` 6  `,@$d@0lt040c.Wednesday.$p  6` 6  `,@$d@0lt040c.Thursday.$p  6` 6  `,@$d@0lt040c.Friday.$p  6` 6  `,@$d@0lt040c.Saturday.$p  6` 6  `,@$d@0 lt040c.Sun.$p  6` 6  `,@$d@0 lt040c.Mon.$p  6` 6  `,@$d@0 lt040c.Tue.$p  6` 6  `,@$d@0 lt040c.Wed.$p  6` 6  `,@$d@0 lt040c.Thu.$p  6` 6  `,@$d@ F6QOZQFX0pFFF,,$p 6N,,p Localizations$|$p <6`4 6 `,p$p `6 N`,d@p `1$$P$@$0$p$p 6   * @ T `,j0R  ,d,,d@p  1$@$P$p$$0$p `6   * @ T 6  `,p  16`*0 `,,@$d@0lt010c.Application.$p  6` 6  `,@$d@0lt010c.Welcome.$p  6` 6  `,@$d@0 lt010c.Quit.$p  6` 6  `,@$d@0 lt010c.Open.$p  6` 6  `,@$d@0 lt010c.Close.$p  6` 6  `,@$d@0lt010c.SaveClose.$p  6` 6  `,@$d@0 lt010c.Save.$p  6` 6  `,@$d@0lt010c.Working.$p  6` 6  `,@$d@0lt010c.PleaseWait.$p  6` 6  `,@$d@0lt010c.PercentDone.$p  6` 6  `,@$d@0lt010c.NotFound.$p  6` 6 | `,@$d@0 lt010c.File.$p  6` 6 x `,@$d@0lt010c.Attempt.$p  6` 6 t `,@$d@0 lt010c.Of.$p  6` 6 p `,@$d@0 lt010c.To.$p  6` 6 l `,@$d@0 lt010c.Trys.$p  6` 6 h `,@$d@0lt010c.NewWorkbook.$p  6` 6 d `,@$d@0lt010c.Computing.$p  6` 6 ` `,@$d@ 0lt010c.PopulatingSection.$p  6` 6 \ `,@$d@0lt010c.Overfloat.$p  6` 6 X `,@$d@0lt010c.SendHeader.$p  6` 6 T `,@$d@"0lt010c.ToolButton1Caption.$p  6` 6 P `,@$d@0lt020c.NotRun.$p  6` 6 L `,@$d@0lt020c.Platform.$p  6` 6 H `,@$d@0lt020c.CancelChanges.$p  6` 6 D `,@$d@0lt020c.NotYet.$p  6` 6 @ `,@$d@0lt020c.NotDone.$p  6` 6 < `,@$d@0lt020c.NotExist.$p  6` 6 8 `,@$d@0lt020c.NotOpen.$p  6` 6 4 `,@$d@0lt020c.GlobalError.$p  6` 6 0 `,@$d@0lt020c.NoMemory.$p  6` 6 , `,@$d@0lt020c.NotSave.$p  6` 6 ( `,@$d@0lt020c.Create.$p  6` 6 $ `,@$d@0lt020c.Worksheets.$p 0 lt040c.Fri.$p  6` 6  `,@$d@0 lt040c.Sat.$p  6` 6  `,@$d@0lt050c.January.$p  6` 6  `,@$d@0lt050c.February.$p  6` 6  `,@$d@0 lt050c.March.$p  6` 6  `,@$d@0 lt050c.April.$p  6` 6  `,@$d@0 lt050c.May.$p  6` 6 | `,@$d@0 lt050c.June.$p  6` 6 x `,@$d@0 lt050c.July.$p  6` 6 t `,@$d@0lt050c.August.$p  6` 6 p `,@$d@0lt050c.September.$p  6` 6 l `,@$d@0lt050c.October.$p  6` 6 h `,@$d@0lt050c.November.$p  6` 6 d `,@$d@0lt050c.December.$p  6` 6 ` `,@$d@0lt060c.Australia.$p  6` 6 \ `,@$d@0lt060c.Austria.$p  6` 6 X `,@$d@0lt060c.Belgium.$p  6` 6 T `,@$d@0lt060c.Brazil.$p  6` 6 P `,@$d@0lt060c.Canada.$p  6` 6 L `,@$d@0lt060c.Denmark.$p  6` 6 H `,@$d@0lt060c.Finland.$p  6` 6 D `,@$d@0lt060c.France.$p  6` 6 @ `,@$d@0lt060c.Germany.$p  6` 6 < `,@$d@0lt060c.HongKong.$p  6` 6 8 `,@$d@0lt060c.Iceland.$p  6` 6 4 `,@$d@0lt060c.Ireland.$p  6` 6 0 `,@$d@0 lt060c.Italy.$p  6` 6 , `,@$d@0 lt060c.Japan.$p  6` 6 ( `,@$d@0lt060c.Luxembourg.$p  6` 6 $ `,@$d@0lt060c.Australia.$p  6` 6   `,@$d@0lt060c.Netherlands.$p  6` 6  `,@$d@0lt060c.NewZealand.$p  6` 6  `,@$d@0lt060c.Norway.$p  6` 6  `,@$d@0 lt060c.Spain.$p  6` 6  `,@$d@0lt060c.Sweden.$p  6` 6   `,@$d@0lt060c.Switzerland.$p  6` 6  `,@$d@0lt060c.UnitedKingdom.$p  6` 6  `,@$d@0lt060c.UnitedStates.$p  6` 6  `,@$d@0 lt060c.India.$p  6` 6  `,@$d@0lt060c.Indonesia.$p  6` 6  `,@$d@0 lt060c.Korea.$p  6` 6  `,@$d@0lt060c.Malaysia.$p  6` 6  `,@$d@0 lt060c.PRC.$p  6` 6  `,@$d@0lt060c.Philippines.$p  6` 6  `,@$d@0lt060c.Singapore.$p  6` 6  `,@$d@0lt060c.Thailand.$p  6` 6  `,@$d@0lt060c.Taiwan.$p  6` 6  `,@$d@0 lt060c.Euro.$p  6` 6  `,@$d@0lt070c.Airfare.$p  6` 6  `,@$d@0lt070c.Breakfast.$p  6` 6  `,@$d@0 lt070c.Bus.$p  6` 6  `,@$d@0lt070c.BusinessMeals.$p  6` 6  `,@$d@0lt070c.CarRental.$p  6` 6  `,@$d@0lt070c.Dinner.$p  6` 6  `,@$d@0lt070c.Entertainment.$p  6` 6  `,@$d@0 lt070c.Fax.$p  6` 6  `,@$d@0 lt070c.Gas.$p  6` 6  `,@$d@0 lt070c.Gifts.$p  6` 6  `,@$d@0 lt070c.Hotel.$p  6` 6  `,@$d@0lt070c.Incidentals.$p  6` 6  `,@$d@0lt070c.Laundry.$p  6` 6  `,@$d@0 lt070c.Limo.$p  6` 6  `,@$d@0lt070c.Lodging.$p  6` 6  `,@$d@0 lt070c.Lunch.$p  6` 6  `,@$d@0lt070c.Mileage.$p  6` 6  `,@$d@0 lt070c.Other.$p  6` 6  `,@$d@0lt070c.Parking.$p  6` 6  `,@$d@0lt070c.Postage.$p  6` 6  `,@$d@0 lt070c.Snack.$p  6` 6  `,@$d@0lt070c.Subway.$p  6` 6  `,@$d@0lt070c.Supplies.$p  6` 6 | `,@$d@0 lt070c.Taxi.$p  6` 6 x `,@$d@0lt070c.Telephone.$p  6` 6 t `,@$d@0 lt070c.Tips.$p  6` 6 p `,@$d@0 lt070c.Tolls.$p  6` 6 l `,@$d@0 lt070c.Train.$p  6` 6 h `,@$d@0 lt080c.Yes.$p  6` 6 d `,@$d@0 lt080c.No.$p  6` 6 ` `,@$d@0 lt080c.Both.$p  6` 6 \ `,@$d@0lt080c.DayDate.$p  6` 6 X `,@$d@0lt080c.ExpenseType.$p  6` 6 T `,@$d@0lt080c.Continued.$p  6` 6 P `,@$d@0lt080c.OverfloatMsg.$p  6` 6 L `,@$d@0lt080c.Marker.$p  6` 6 H `,@$d@0 lt080c.Total.$p  6` 6 D `,@$d@0lt080c.Criteria.$p  6` 6 @ `,@$d@0lt080c.Database.$p  6` 6 < `,@$d@0lt080c.LocalCurrency.$p  6` 6 8 `,@$d@0lt080c.Prepaid.$p  6` 6 4 `,@$d@0 lt090c.Trip.$p  6` 6 0 `,@$d@0 lt090c.Date.$p  6` 6 , `,@$d@0lt090c.Expense.$p  6` 6 ( `,@$d@0lt090c.Payment.$p  6` 6 $ `,@$d@0lt090c.Currency.$p  6` 6   `,@$d@0lt090c.Amount.$p  6` 6  `,@$d@0lt090c.Vendor.$p  6` 6  `,@$d@0 lt090c.City.$p  6` 6  `,@$d@0lt090c.Attendees.$p  6` 6  `,@$d@0 lt090c.Note.$p  6` 6   `,@$d@0 lt090c.ID.$p  6` 6  `,@$d@0lt090c.Expenses.$p  6` 6  `,@$d@0lt100c.Template1.$p  6` 6  `,LFF  ` $(,048<@HLPTXD\`xdhlpt||xtplhd`\XTPLHD@<840,($    $(,048<@DHLPTX\`dhlptx||xtplhd`\XTPLHD@<840,($    $048<@X(,\`DHLPTdhlptx||xtplhd`\XTPLHD@>   A"K ~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#0*\Rffff*1abbeb094b~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81` pF<  rs ,0 $ P `p `   * @ T   * @ T P @    * @ T 0    * @ T  8ME RFNP(PxLN 0PhPLT Pt" &(Z,L dpxN|64j0f0,d`,d.d2h,d0fH2jx4j0h,d0f<*bl*b,d4j2h$:pX2h2j:r8.fL0h|6l.f0f 0hD 0ft 4j 0h 0f .f8 2jh 0h 4l 0h 8p0 2hh 2h 4l 6l 2h< 6np 2j 6l 8p 0hL | ,b ,d .f .d.dL0h|.f2j.f(.fX0f2h0h.f0hL,b|,b,b,b,b,,bX,b0f0h.d$.dT,b,d,d.f2h80fl0h0h2h0fH0fx.f.f0f0f8.fh0f0h0f0f(.dX.d2j2h4j 2jT.f.d.f4j6lL4l.d2h.d0hL,b|4j2h0h.f@,dp0f2h,b6lD2h|.f6l,b,bD.dp.d4j0f,d40f`.d0f.d0f 0fP.d.f0h,d2h<,dp.d.d,b *bD ,dp 0f 4j 2h!4l4!.fh!.d!0h!0h!6l("0f`"",d",d"0f"0f,#0h\#.f#.f#,d#2h$,dL$*bx$0h$2h$% %I*************************************************************************"Title: Localizations procedureCreated: 3/5/97 dawEPurpose: Determines the locale (language/country) version of Excel,H sets an offset variable, and reads the localized text strings! into variables.Arguments: Called by: Auto_Open()IModified: 03/18/99 vl - Added ltEuro to the countries offset variable.FModified: 11/08/99 vl - Added 9 new countries to the currency list.NModified: 11/26/99 vl - Fix bug with error when 'Options' button is pressedI************************************************************************* Y,J (  Localizations 4$ %4 B@ $ B@    4 * J @ T % ' .A'`.   4 * J @ T % B@ !* '%glt010.Messages.01 lt010c.Application.$% ! ' lt010c.Welcome.$% ! '  lt010c.Quit.$% ! '  lt010c.Open.$% ! '  lt010c.Close.$% ! '01 lt010c.SaveClose.$% ! '01  lt010c.Save.$% ! '  lt010c.Working.$% ! ' lt010c.PleaseWait.$% ! ' 01 lt010c.PercentDone.$% ! '* lt010c.NotFound.$% ! '4  lt010c.File.$% ! '@ lt010c.Attempt.$% ! 'J  lt010c.Of.$% ! 'T.C  lt010c.To.$% ! '`  lt010c.Trys.$% ! 'j lt010c.NewWorkbook.$% ! 't lt010c.Computing.$% ! '' lt010c.PopulatingSection.$% ! '' lt010c.Overfloat.$% ! '$ lt010c.SendHeader.$% ! ' lt010c.ToolButton1Caption.$% ! ' lt020.Alerts. lt020c.NotRun.$% ! ' lt020c.Platform.$% ! ' lt020c.CancelChanges.$% ! '02 lt020c.NotYet.$% ! '02 lt020c.NotDone.$% ! ' lt020c.NotExist.$% ! '  lt020c.NotOpen.$% ! ' lt020c.GlobalError.$% ! '  lt020c.NoMemory.$% ! '* lt020c.NotSave.$% ! '4 lt020c.Create.$% ! ' lt020c.Worksheets.$% ! ' lt020c.Continue.$% ! ' lt020c.CannotAccess.$% ! '@ lt020c.NotFound.$% ! 'J lt020c.MapTableNotFound.$% ! 'T lt020c.MakeSure1.$% ! '` lt020c.MakeSure2.$% ! 'j lt020c.PleaseSelect.$% ! 't lt020c.PleaseSelect2.$% ! ' lt020c.NoRecords.$% ! '' lt020c.InvalidEndDate.$% ! ' lt020c.EndDateMsg.$% ! ' lt020c.HelpAccessMsg.$% ! '% lt020c.CheckOrientation.$% ! ' lt020c.MapTable.$% ! 'lt030.Punctuation.  lt030c.Dot.$% ! '  lt030c.Dash.$% ! ' lt030c.Period.$% ! '03  lt030c.Colon.$% ! '03  lt030c.Paren.$% ! '0. lt030c.EndParen.$% ! ' lt030c.Quotes.$% ! '  lt030c.Apostrophe.$% ! 'lt040.DaysOfWeek. lt040c.Sunday.$% ! '  lt040c.Monday.$% ! '* lt040c.Tuesday.$% ! '4 lt040c.Wednesday.$% ! '@04 lt040c.Thursday.$% ! 'J lt040c.Friday.$% ! 'T. lt040c.Saturday.$% ! '`  lt040c.Sun.$% ! 'j  lt040c.Mon.$% ! 't  lt040c.Tue.$% ! '  lt040c.Wed.$% ! '  lt040c.Thu.$% ! '  lt040c.Fri.$% ! '  lt040c.Sat.$% ! ' lt050.Months. lt050c.January.$% ! ' lt050c.February.$% ! '  lt050c.March.$% ! 'y.  lt050c.April.$% ! '$  lt050c.May.$% ! '  lt050c.June.$% ! '  lt050c.July.$% ! ' lt050c.August.$% ! ' lt050c.September.$% ! ' un lt050c.October.$% ! ' lt050c.November.$% ! '  lt050c.December.$% ! '*lt060.Countries. lt060c.Australia.$% ! '406 lt060c.Austria.$% ! '@ lt060c.Belgium.$% ! 'J lt060c.Brazil.$% ! 'T06 lt060c.Canada.$% ! '`06 lt060c.Denmark.$% ! 'j lt060c.Finland.$% ! 't lt060c.France.$% ! '06 lt060c.Germany.$% ! ' lt060c.HongKong.$% ! ' lt060c.Iceland.$% ! ' lt060c.Ireland.$% ! '  lt060c.Italy.$% ! '  lt060c.Japan.$% ! ' lt060c.Luxembourg.$% ! ' lt060c.Australia.$% ! ' lt060c.Netherlands.$% ! ' lt060c.NewZealand.$% ! '06 lt060c.Norway.$% ! '  lt060c.Spain.$% ! ' lt060c.Sweden.$% ! ' * lt060c.Switzerland.$% ! ' lt060c.UnitedKingdom.$% ! '  lt060c.UnitedStates.$% ! '*  lt060c.India.$% ! '\ lt060c.Indonesia.$% ! 'f  lt060c.Korea.$% ! 'p$ lt060c.Malaysia.$% ! '|  lt060c.PRC.$% ! ' lt060c.Philippines.$% ! ' lt060c.Singapore.$% ! 'ne lt060c.Thailand.$% ! ' lt060c.Taiwan.$% ! '07  lt060c.Euro.$% ! 'Rlt070.Categories. lt070c.Airfare.$% ! '4 lt070c.Breakfast.$% ! '@ 07  lt070c.Bus.$% ! 'J lt070c.BusinessMeals.$% ! 'T lt070c.CarRental.$% ! '`  lt070c.Dinner.$% ! 'j  lt070c.Entertainment.$% ! 't 07  lt070c.Fax.$% ! '  lt070c.Gas.$% ! '  lt070c.Gifts.$% ! '   lt070c.Hotel.$% ! '  lt070c.Incidentals.$% ! ' lt070c.Laundry.$% ! '  lt070c.Limo.$% ! ' lt070c.Lodging.$% ! '  lt070c.Lunch.$% ! '  lt070c.Mileage.$% ! '  lt070c.Other.$% ! ' lt070c.Parking.$% ! ' lt070c.Postage.$% ! '  lt070c.Snack.$% ! ' ! lt070c.Subway.$% ! ' lt070c.Supplies.$% ! '  lt070c.Taxi.$% ! '* lt070c.Telephone.$% ! '4  lt070c.Tips.$% ! '@  lt070c.Tolls.$% ! 'J $  lt070c.Train.$% ! 'T $lt080.Miscellaneous.  lt080c.Yes.$% ! '`  lt080c.No.$% ! 'j  lt080c.Both.$% ! 't lt080c.DayDate.$% ! ' lt080c.ExpenseType.$% ! ' lt080c.Continued.$% ! '  lt080c.OverfloatMsg.$% ! ' lt080c.Marker.$% ! ' %  lt080c.Total.$% ! ' % lt080c.Criteria.$% ! ' lt080c.Database.$% ! ' lt080c.LocalCurrency.$% ! ' 4 lt080c.Prepaid.$% ! ' lt090.Headers.  lt090c.Trip.$% ! '  lt090c.Date.$% ! ' lt090c.Expense.$% ! ' lt090c.Payment.$% ! ' lt090c.Currency.$% ! ' lt090c.Amount.$% ! ' lt090c.Vendor.$% ! '*  lt090c.City.$% ! '4 lt090c.Attendees.$% ! '@   lt090c.Note.$% ! 'J  lt090c.ID.$% ! 'T ! lt090c.Expenses.$% ! '` lt100c.Template1.$% ! 'j 'k d: 12/4/96 daw?Purpose: Checks the current data file for multiple currenciesArguments: DReturns: TRUE if more than 1 currency is detected, otherwise FALSEnt Called by:Calls: BubbleSort()0IModified: 05/20/97 daw - Changes because ltLocalCurrency is used (whichA is set in Expense Options dialog box).I************************************************************************* Y,YX $ B@ $B@    4 * J @ T % B@ $  % ! '* *  * % ! Trip$! ' , $ ( .  $ ( 0 ` $`  $ ( .   $ !  $ Database$B@ $ ! ! !  '* *  *  *  $ ! . *  * .  * $ !  + $$T'  *h  $ + . Ca'@ *a'@g`'@ge &4 &E* &@ &T4 & &@ & &} &qr &? &7 & & &bkt  &# &ܪ &w4 &6f& &G 2 &L@ & P &,@Z &"xb &yj &t & &3 &Q &\ & &{ &{  &g|  &jm` &b G{v f f@ ` T |j & nc0 6 n@@ aCF X L R eP` Zh Ojt Ma̠ | @  yPrp ` ipK~j R %T [ |4 U e0vt  ;ID ` } $len.͆ 8fGF5 @LKRXf1hf9v&!&'mna**/fT*ʜtД`dfm"j6fZHMZYq`UUfO p@xBJi*Pv=@AryXj$*b$;Q8a]jj&ti 0I<FrUXd`%@JhMap v~en%@gj44<id*}**f;4"'.r48aB:J,T `axhpCxrX*'ngM4VLap0$g*icV  ! cӀ ek(4@enuV&Xdlix%`fw %N>RSo|24ij{[G_5 \.utޛ8`Jo5XUpj) J  n XV,,$|$ pz<6 Nz,$ pz6 Nz,d@ pz1$j$Z$J$:$$ p*6   * @ T 6 z*,:$J$ p16* 6z *z,dr:dHrJZ$j$ p16* 6z |  fD6*z, Trip$ p6 ,|J$`p$: $ p6 N,|J$`p$:$ p6 N,:v d:rhd,j `pj:$J $ p6 ,v,$`p$: $ p6 $`pJ$Z$ p$j$Database$ p 6  ,`p$$ p6 6 6 : ,,brdHr`dp:$J$ p6 |Zj f D6*\,,dv,vphjf,`pj$$ p6 j:n ,vj,vbj,vphJD,j$j8N,vJ,,dH ,, ,,,,hfV8.*JZjz`$$ *zd*T ,0$ 0AAAK *\Rffff*1dbbeb094b*\Rffff*23bbeb094b~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#0~*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#1*\G{00020813-0000-0000-C000-000000000046}#1.0#9#..\..\..\..\..\MSOFFICE\EXCEL\XLEN50.OLB#Microsoft Excel 5.0 Object Library*#81*\Rffff*1abbeb094b @ . 6/8 P d /5   ,oN@ @ _ @z   * @ T   * @ T j xZ lJ `: T*  T   d $  X  X    T ME ,ON :P4PFJL\P|HPBdhp2x,RH@@HB`Bx(X V$^0,TBl,$ (Z  4 8D d l t  I*************************************************************************.Title: CheckForMultipleCurrencies functionCreateLHs`d|Ne niaK><ncƿ?x4 p&a~.tPpF8&@JX%`Yj tJ۪MJ fa&@*&u4tr <&ᭀ &"&B.&en<&'mH+`Rix*`1?@ABseltSaveCloseltSaveltWorkingltPleaseWaitltPercentDoneltCannotFindltFileltAttemptltOfltToltTrysltNewWorkbookltComputingltPopulatingSectionltOverfloatltSendHeaderltToolButton1Caption ltNotRunltPlatformltCancelChangesltCreateltWorksheetsltContinueltNotYetltNotDoneltNotExistltNotOpenltGlobalErrorltNoMemoryltNotSaveltCannotAccessltNotFoundltMapTableNotFoundltMakeSure1ltMakeSure2ltPleaseSelectltPleaseSelect2ltNoRecordsltInvalidEndDateltEndDateMsgltHelpAccessMsgltCheckOrientationltMapTableMsgltDotltDashltPeriodltColonltOpenParenltCloseParenltQuotesltApostropheltSundayltMondayltTuesdayltWednesdayltThursdayltFridayltSaturdayltSunltMonltTueltWedltThultFriltSatltJanuaryltFebruaryeltMarchltAprilltMaysgltJuneltJulyltAugustltSeptemberltOctoberltNovemberltDecemberltAustralialtAustrialtBelgiumltBrazilltCanadaltDenmarkltFinlandltFranceltGermanyltHongKongltIcelandltIrelandltItalyltJapanltLuxembourgrltMexicoiltNetherlandsltNewZealandltNorwayeltSpainltSwedenltSwitzerlandltUnitedKingdomltUnitedStatesultAirfareltBreakfastltBusltBusinessMealsltCarRentalltDinnerMltEntertainmentltFaxltGasltGiftstMltHotelltIncidentalsltLaundryltLimoltLodgingltLunchltMileageltOtherltParkingltPostageltSnackltSubwaygltSupplieseltTaxioltTelephoneltTipsgltTollsltTrainltYesltNoltBothaltTotalltDayDateltExpenseTypeltContinuedltOverfloatMsggltMarkerltCriteriaPltDatabaseryPltLocalCurrencyltPrepaidltTripltDateltExpenseltPaymentltCurrencyltAmountiltVendoreltCityltAttendeesltNoteltIDltExpensesltTemplate1Module1CreateExpenseReportReadMapTableiaMasterDateArrayrinHeaderRowActivateCellsSelecttFrFindWhatAfterActiveCellltLookInxlFormulastLookAttxlWholeSearchOrderxlByRowsiSearchDirectionxlNextaMatchCaseChrMsgBoxvbOKnRowsInTablelCurrentRegionRowsCountnSectionsInTablernColsInTableOffsettBuRownFirstRownLastRowGetHeaderMapsbFlagUCaseValueGetOrientationGetLabelTypeGatherAllDatesWorksheetsNumberOfTemplatesvbCancelwjFileExistOpenFilePlaceHeaderInfonSectionCounterApplicationStatusBarIsNullltMapTableGetSectionMapGenerateListFormat(BuildExpenseArrayGatherExpenseDatanRowsTypenStartColnEndColnColWorkbooksColumn@nListsPrepaidsListngEntertainmentMapnMaxItemsnMaxSizevContentsIsNumerickmFileFunctionssPathNamesFilesFileNamebReadOnlysPasswordnCounternFileNumbernMaxCountDisplayStatusBar*IsErrorWindowsChDriveChDirOpenTestOpenOK:WaitNowOpenlfilenameReadOnlypassword9ActiveWorkbookNameCloseFilebSaveLogicalCloseSaveFileanFileFormatDisplayAlertsSaveAs.FileFormatNewWorkbookvTypeAddtemplateNewTabnTabTypexlWorksheetSheetsxlChartChartsBubbleSortlaArrayLnOrdernIndexavTempnNextElementZEROASCENDING_ORDERDESCENDING_ORDERAutoRoutinesAuto_OpenGlobalsScreenUpdatingvbOKOnlyLocalizationsVisibleAddHeadersSetDatabaseDisplayExpenseDialogExpenseDialogFinishInternationalCurrenciesIsolateRecordsAuto_ClosepCreateToolbarActiveSheetPrintPreview DeleteToolbarThisWorkbookPathoStartupPathLibraryPathLeftoOperatingSystemVersionPathSeparatorUserName OrganizationNameInternationalxlCountrySettingxlDecimalSeparatorxlThousandsSeparatorGetDataPathsPathsNamenFileIDToolbarsToolbarButtonsButtontOnActionDialogSheetsPicturesaCopyePasteFaceDeleteumExpenseDialogCodenItemsNormal_Formatting?Normal_GeneralRoutines@Normal_GetDataANormal_GetData_1BNormal_mEssbaseCNormal_modFileFunctionsDNormal_modToolbarENormal_Module1FNormal_Module1 (2)GNormal_MultiLayerHNormal_PrintSQLINormal_QuickInputJNormal_QuickInput_1#K Normal_QuickInput_AutoOpenModuleLNormal_QuickInput_GetDataMNormal_SystemPriceN8 ``i̜̙3f3333f3ffff333ff333f33f33BBB mDeclarationsZ AutoRoutinesModule1DModule2 mListCodeModule4Module5 mExpenseDialogCode{!mOptionsDialogCode"Module3e$ mCurrency%mFileFunctions=& mLocalization&dExpenseM0dOptions=dlgInternational&CdlgExchangeRateYZ dlgSummary    Worksheet&Tools&WindowChart&Tools&WindowVisual Basic Module&Tools&Window\ Palm Computing B _VBA_PROJECTCategoryOptions$ChooseFromCategoryList'ConvertCurrencyDialogHelp CreateButton DateOptionsDisplaySummary$ExchangeRateDialogHelp ExpenseHelp"ExpenseOptionsDialog!lstCurrencies_Click OptionsHelp PrintButton=<<G@"1Arial1Arial1Arial1Arial1Arial1Helv1 MS Sans Serif1Courier1 MS Sans Serif1Times New Roman1Helv"$"#,##0_);\("$"#,##0\)"$"#,##0_);[Red]\("$"#,##0\) "$"#,##0.00_);\("$"#,##0.00\)%""$"#,##0.00_);[Red]\("$"#,##0.00\)5*2_("$"* #,##0_);_("$"* \(#,##0\);_("$"* "-"_);_(@_),))_(* #,##0_);_(* \(#,##0\);_(* "-"_);_(@_)=,:_("$"* #,##0.00_);_("$"* \(#,##0.00\);_("$"* "-"??_);_(@_)4+1_(* #,##0.00_);_(* \(#,##0.00\);_(* "-"??_);_(@_)#,##0\ "F";\-#,##0\ "F"#,##0\ "F";[Red]\-#,##0\ "F" #,##0.00\ "F";\-#,##0.00\ "F"%"#,##0.00\ "F";[Red]\-#,##0.00\ "F"96_-* #,##0\ "F"_-;\-* #,##0\ "F"_-;_-* "-"\ "F"_-;_-@_-63_-* #,##0\ _F_-;\-* #,##0\ _F_-;_-* "-"\ _F_-;_-@_-A>_-* #,##0.00\ "F"_-;\-* #,##0.00\ "F"_-;_-* "-"??\ "F"_-;_-@_->;_-* #,##0.00\ _F_-;\-* #,##0.00\ _F_-;_-* "-"??\ _F_-;_-@_-0.0 0.00_)0.0_)0_) 0.000_)0.000 #,##0.0;;; #,##0.000#,##0.0_);\(#,##0.0\)#,##0.000_);\(#,##0.000\) 0.0000_) yyyymmddm/d/yy\ h:mm\ AM/PM"$"#,##0;\-"$"#,##0"$"#,##0;[Red]\-"$"#,##0"$"#,##0.00;\-"$"#,##0.00!"$"#,##0.00;[Red]\-"$"#,##0.0030_-"$"* #,##0_-;\-"$"* #,##0_-;_-"$"* "-"_-;_-@_-*'_-* #,##0_-;\-* #,##0_-;_-* "-"_-;_-@_-;8_-"$"* #,##0.00_-;\-"$"* #,##0.00_-;_-"$"* "-"??_-;_-@_-2/_-* #,##0.00_-;\-* #,##0.00_-;_-* "-"??_-;_-@_-                + )   +      +   +     , *   ,      ,   ,                                Comma_AutoCloseModuleComma_AutoOpenModuleComma_AutoOpenModule_1 Comma_changesComma_CostD &APage &P"F??>   &APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetterwKw %''''"dX??> d  &APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetterwKw %''''"dX??> d  &APage &P"dX??> d  &APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetterwKw 4''''"dX??> d  &APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetterwKw %''''"dX??> d  &APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetterwKw %''''"dX??> d  &APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetter @ 4''''"dX??> d  &APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetter$) 4''''"dX??> d  &APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetterwKw %''''"dX??> d  &APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetter  4''''"dX??> d  &APage &P"dX??> d  &APage &P"dX??> d   ((  dMbP?_*+%i&APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetterwbT04 %''''"dX??U i>@]d ?,A@@CExpense Report ]4> CC( @D$ cC9k9Z64Create... ]~4 > CC(D$pPD99 Z64Print... 3q2IZ9]\4>CC(D$Cancel 4]4> CC( TE$OcmdExpenseOptionsD99 Z6Options... 'D _2]z4> CC(E$hdE99Z6Help NN']f2! A@ FFG(F Categories]   %9A@@FF"aFoptAllCategoriesp (F99Z6Alla ]  $%9A@@G,G"S(FoptSelectedCategories F9 99Z6Selected CategoriesS ] 0I9 A@"G G lstCategories  "   42\2  dMbP?_*+%i&APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetter optVariable %''''"dX??U i>@]l>4A@@6WExpense Report Options Sumrders]X3= CC(W$ OK ubleorder]\3 =CC(W$Cancel rencStyle ]z3= CC(8X$hW9 IHelp lic derlin]\2 A@ \]\   A@@XnName: Sizeecreas]n  0  A@>YTYtxtNameName, First and Last]b  A@@ YdDepartment: Fil d Arc]  0  A@Z2Z txtDepartment"Department,.?/[{]}=+-_)(*&^%$#@!~`]`  A@@ ZpPhone No.: cts ing To]b 0 A@ZZtxtPhone:Phone]^  A@@F[rProject: rt MuleOb]f 0  A@[[ txtProjectProjectb]^ A@@\bBill To: hartutoFor]d 0  A@h\r\ txtBillToBill ToF]d2' A@\\*^Template] 1"A@@/4]fSelect an Expense template from the list below:# art /toForm]#0% A@]  lstTemplatesr DATALIST.XLT SAMPLE1.XLT SAMPLE2.XLT SAMPLE3.XLT SAMPLE4.XLT TOYOTA.XLT]j)23 A@|^^LLocal CurrencyL]m/01A@_ lstLocalCurrency Australia AustraliaAustriaBelgiumBrazilCanadaDenmarkFinlandFranceGermany Hong KongIcelandIrelandItalyJapan Luxembourg Netherlands New ZealandNorwaySpainSweden SwitzerlandUnited Kingdom United States]*1.nA@@S`Select a country name from the list below or type in your local currency's country:s mCuSomCus> "   >%?  dMbP?_*+%i&APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLettercountry name from the lis %''''"dX??U i>@]~ S A@'hnInternational Currencies Expense Report &G'jjP]^)CC(n$ cmdOKOK vvvv]f-7 CC($o$ cmdCancelCancel uF^ &] ;E CC(o$hcmdHelp4o9`Help ~] R% A@@op"d.p optConvertNo#Do not convert my expense amounts. d] R% A@@pp"lo optConvertYesALet me enter the Exchange Rates, then convert my expense amounts.l] RA@@@.qThere is more than one currency incurred in your Expense Report. vj@69wB> "    E5E  dMbP?_*+%i&APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLettermore than one currency in %''''"dX??U i>@]n TB A@~Currency Exchange Rates F Pv P]S9R nA@@EVlblExchangeRate1 Enter the exchange rate for the currency highlighted in the list box. F FEFP]vl9#E%A@@ElblExchangeRate2 Exchange Rate: FPV]f 'E#R% A@$*txtExchangeRate1.2n]f&G8Q; CC($mcmdMore:99nqPMore... vV]^1>;ACC($cmdOKOK ~ t?]f<>FA CC(D$ cmdCancelCancel @@ ]DG>QA CC($hcmdHelpT99nqPHelp  ]t A 6A@@Expense Report Local Currency:  ]* BR@]* C @] FRnA@@|Enter an Exchange Rate for each foreign currency (below) to be converted in this report to the Local Currency shown above. |  ]h P6A@@fForeign Currency: @?]O6(n9 A@n lstCurrencies 9 nqnCanada United States]hN   A@G9G Picture 78@ Paint.PictureibE q   -45'  --      "System  ---   qA (ֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽֽ---'--'-- --4'_(A _(A ]jU,,. A@@0 lblCurrency1Canada B]dV-,6.A@@lblRate1n1.2 ~} ]rW/,1 A@@  lblCurrency2United States | ]TX2,4 A@@  lblCurrency3]TY5,7 A@@  lblCurrency4]bZ-/61A@@lblRate2n1y 8DD8 ]P[-264A@@ lblRate3n]P\-567A@@ lblRate4n]T]8,: A@@  lblCurrency5]T^:,G. A@@  lblCurrency6]T_:/H1 A@@  lblCurrency7]T`:2H4 A@@  lblCurrency8]Pa-86:A@@ lblRate5n]PbH,Q.A@@ lblRate6n]PcH/Q1A@@ lblRate7n]PdH2Q4A@@ lblRate8n]d e*R< A@SummaryD]T!g:5H7 A@@  lblCurrency9]P"iH5Q7A@@ lblRate9n]#mQA@@E(The Local Currency can be changed in the Expense Options dialog box) +E G#]v$n6 PA@@ lblLocalCurrencycUnited Statesg P f > "   4\\\  dMbP?_*+%i&APage &PM\\SC_SERVER_CS\HP LaserJet 5SipsXXLetterCurrencycUnited Statesg %''''"dX??U i@]l A1A@@Exchange Rate Summaryt kF^&]X!-+0CC(f$ OK tv ] +I A@@Ș lblSummary1Australia Austria Bulgaria Canada China Germany Japan Korea Nepal New Zealand Paraguay Romania Switzerland Uganda United Kingdom United States &]R( 7+I A@@  lblSummary2] &+I A@@| lblSummary31.1 1.3 1.008 3.8 ^]R 7 ?+I A@@  lblSummary4]n ! A@@$Selected local currency: &&GF]v "? A@@ lblLocalCurrencyrUnited States N VR]\   @+ A@ > "