You are on page 1of 4

!

ESTE ARCHI VO PERMI TE EJ ECUTAR FLUJ OS DE CARGA


! Y DEPOSI TA LOS RESULTADOS EN LA HOJ A1 DE EXCEL,
! ADEMAS EJ ECUTA MACROS DE EXCEL DESDE EL DI GSI LENT
obj ect O, C, f l uj os;
set S;
i nt i , n, a, i Tmp;
st r i ng nombr e, acel l , s2, s3;
f l uj os = Get CaseObj ect ( ' Bal anced. ComLdf ' ) ;

Cl ear Out put ( ) ;
C = Act i vePr oj ect ( ) ;
f l uj os. Execut e( ) ;

i f ( i Excel ) {
i Tmp = ddeOpen( ' ' , ' Excel ' , ' Hoj a1' ) ;
i f ( . not . i Tmp) {
! excel can be opened. Now cl ose and connect t o a speci f i c sheet
ddeCl ose( ) ;
i Tmp = ddeOpen( ' ' , ' Excel ' , ' Hoj a1' ) ;
i f ( i Tmp) {
I nf o( ' No Sheet 1 yet , cr eat i ng one. . . ' ) ;
i Tmp = ddeOpen( ' ' , ' Excel ' , ' Syst em' ) ;
i f ( i Tmp) {
pr i nt f ( ' Cannot open DDE t o Excel ' ) ;
} el se {
! cr eat e a nueva hoj a Hoj a1
ddeExe( ' [ New( 1) ] ' ) ;
ddeCl ose( ) ;
i Tmp = ddeOpen( ' ' , ' Excel ' , ' Macr o1' ) ;
}
}
}
i f ( i Tmp) {
Er r or ( ' Coul d not open DDE connect i on' ) ;
exi t ( ) ;
}
}
pr i nt f ( ' %s ' , ' Ha f i nal i zado l a aper t ur a del Excel ' ) ;
ddeExe( ' [ Run( " Li mpi a") ] ' ) ;
! Cl ear Out put ( ) ;

! Lect ur a de dat os en l i neas
S = Al l Rel evant ( ) ;
O = S. Fi r st mat ch( ' El mLne' ) ;
i = 3;
whi l e ( O) {
nombr e = O: l oc_name;
s3 =O: cpZone;
a = O: out ser v;
O. ShowFul l Name( ) ;
i f ( a = 0) {
i +=1;
acel l = spr i nt f ( ' F%dC1' , i ) ;
ddePoke( acel l , nombr e) ;
acel l = spr i nt f ( ' F%dC21' , i ) ;
ddePoke( acel l , nombr e) ;
s2 = spr i nt f ( ' %f ' , O: c: l oadi ng) ;
acel l = spr i nt f ( ' F%dC2' , i ) ;
ddePoke( acel l , s2) ;

! Per di das en l i neas
s2 = spr i nt f ( ' %f ' , O: c: Losses) ;
acel l = spr i nt f ( ' F%dC3' , i ) ;
ddePoke( acel l , s2) ;

! Per di das en l i nes
s2 = spr i nt f ( ' %f ' , O: m: Pl oss: bus1) ;
acel l = spr i nt f ( ' F%dC22' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: m: Ql oss: bus1) ;
acel l = spr i nt f ( ' F%dC23' , i ) ;
ddePoke( acel l , s2) ;
! Fl uj o en l i nes
s2 = spr i nt f ( ' %f ' , O: m: P: bus1) ;
acel l = spr i nt f ( ' F%dC24' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: m: Q: bus1) ;
acel l = spr i nt f ( ' F%dC25' , i ) ;
ddePoke( acel l , s2) ;

}

O = S. Next mat ch( ) ;
}




! Lect ur a de dat os en Aut ot r ansf or mador es
S = Al l Rel evant ( ) ;
O = S. Fi r st mat ch( ' El mTr 3' ) ;
i = 3;
whi l e ( O) {
nombr e = O: l oc_name;
s3 = O: cpZone;
a = O: out ser v;
i f ( a = 0) {
i +=1;
acel l = spr i nt f ( ' F%dC4' , i ) ;
ddePoke( acel l , nombr e) ;
pr i nt f ( ' %s %s' , acel l , nombr e) ;

acel l = spr i nt f ( ' F%dC32' , i ) ;

ddePoke( acel l , nombr e) ;
s2 = spr i nt f ( ' %f ' , O: c: l oadi ng) ;
acel l = spr i nt f ( ' F%dC5' , i ) ;
ddePoke( acel l , s2) ;


! RESULTADOS DE FLUJ OS Y PERDI DAS
acel l = spr i nt f ( ' F%dC37' , i ) ;
ddePoke( acel l , nombr e) ;
s2 = spr i nt f ( ' %f ' , O: m: Pl oss: bushv) ;
acel l = spr i nt f ( ' F%dC38' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: m: Ql oss: bushv) ;
acel l = spr i nt f ( ' F%dC39' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: m: P: bushv) ;
acel l = spr i nt f ( ' F%dC40' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: m: Q: bushv) ;
acel l = spr i nt f ( ' F%dC41' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: n: Ul : bushv) ;
acel l = spr i nt f ( ' F%dC42' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: n: Ul : busl v) ;
acel l = spr i nt f ( ' F%dC43' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: m: cosphi sum: bushv) ;
acel l = spr i nt f ( ' F%dC44' , i ) ;
ddePoke( acel l , s2) ;


}
O = S. Next mat ch( ) ;
}





! Lect ur a de dat os en Nodos
S = Al l Rel evant ( ) ;
O = S. Fi r st mat ch( ' El mTer m' ) ;
i = 3;
whi l e ( O) {
nombr e = O: l oc_name;
s3 =O: cpZone;
a = O: out ser v;
i f ( a = 0) {
i +=1;
acel l = spr i nt f ( ' F%dC7' , i ) ;
ddePoke( acel l , nombr e) ;
pr i nt f ( ' %s %s' , acel l , nombr e) ;
s2 = spr i nt f ( ' %f ' , O: m: u) ;
acel l = spr i nt f ( ' F%dC8' , i ) ;
ddePoke( acel l , s2) ;
}
O = S. Next mat ch( ) ;
}


! Lect ur a de dat os en Tr ansf or mador es
S = Al l Rel evant ( ) ;
O = S. Fi r st mat ch( ' El mTr 2' ) ;
i = 3;
whi l e ( O) {
nombr e = O: l oc_name;
s3 =O: cpZone;
a = O: out ser v;
i f ( a = 0) {
i +=1;
acel l = spr i nt f ( ' F%dC10' , i ) ;
ddePoke( acel l , nombr e) ;
acel l = spr i nt f ( ' F%dC28' , i ) ;
ddePoke( acel l , nombr e) ;
s2 = spr i nt f ( ' %f ' , O: c: l oadi ng) ;
acel l = spr i nt f ( ' F%dC11' , i ) ;
ddePoke( acel l , s2) ;

! RESULTADOS DE FLUJ OS Y PERDI DAS
acel l = spr i nt f ( ' F%dC28' , i ) ;
ddePoke( acel l , nombr e) ;
s2 = spr i nt f ( ' %f ' , O: m: Pl oss: bushv) ;
acel l = spr i nt f ( ' F%dC29' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: m: Ql oss: bushv) ;
acel l = spr i nt f ( ' F%dC30' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: m: P: bushv) ;
acel l = spr i nt f ( ' F%dC31' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: m: Q: bushv) ;
acel l = spr i nt f ( ' F%dC32' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: n: Ul : bushv) ;
acel l = spr i nt f ( ' F%dC33' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: n: Ul : busl v) ;
acel l = spr i nt f ( ' F%dC34' , i ) ;
ddePoke( acel l , s2) ;

s2 = spr i nt f ( ' %f ' , O: m: cosphi sum: bushv) ;
acel l = spr i nt f ( ' F%dC35' , i ) ;
ddePoke( acel l , s2) ;

}
O = S. Next mat ch( ) ;
}


! Lect ur a de dat os en Zonas
S = Al l Rel evant ( ) ;
O = S. Fi r st mat ch( ' El mZone' ) ;
i = 3;
whi l e ( O) {
nombr e = O: l oc_name;
i +=1;
acel l = spr i nt f ( ' F%dC13' , i ) ;
ddePoke( acel l , nombr e) ;
s2 = spr i nt f ( ' %f ' , O: c: GenP) ;
acel l = spr i nt f ( ' F%dC14' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: c: GenQ) ;
acel l = spr i nt f ( ' F%dC15' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: c: Tot LoadP) ;
acel l = spr i nt f ( ' F%dC16' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: c: Tot LoadQ) ;
acel l = spr i nt f ( ' F%dC17' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: c: LossP) ;
acel l = spr i nt f ( ' F%dC18' , i ) ;
ddePoke( acel l , s2) ;
s2 = spr i nt f ( ' %f ' , O: c: LossQ) ;
acel l = spr i nt f ( ' F%dC19' , i ) ;
ddePoke( acel l , s2) ;
O = S. Next mat ch( ) ;

pr i nt f ( ' %s ' , nombr e) ;
}

ddeExe( ' [ Run( "Copi a") ] ' ) ;

You might also like