[PowerBuilder] 엑셀 수식입력
String ls_title, ls_fullname, ls_filename, ls_msg
Integer li_ret, li_h, li_sub, li_footer
SetPointer(HourGlass!)
n_dwr_service_parm lnvo_parm2
Datawindow ldw_excel
ldw_excel = adw_excel
lnvo_parm2 = Create n_dwr_service_parm
ls_title = "다른 이름으로 저장"
ls_fullname = ""
If GetFileSaveName(ls_title,ls_fullname, ls_filename, "File Selection", " EXCEL File (*.xls), *.xls") <> 1 Then Return 1
If FileExists(ls_fullname) Then
ls_msg = ls_fullname + "파일이 있습니다. 기존파일을 바꾸시겠습니까?"
If MessageBox("확인", ls_msg, Exclamation!, OKCancel!, 2) = 2 Then Return 1
End If
li_ret = uf_save_dw_as_excel_parm(ldw_excel, ls_fullname, lnvo_parm2)
If li_ret = 1 Then
// Excel 구동
OleObject ole_excel, ole_sheet
ole_excel = Create OleObject
li_ret = ole_excel.connecttonewobject("excel.application")
IF li_ret <> 0 THEN
Destroy ole_excel
Messagebox("확인", "Excel 구동 중 오류가 발생했습니다.~r~nExcel Program을 확인하십시오.")
Return -1
End If
// Excel 창크기(1 : Normal, 2 : Minimize, 3 : Maximize)
ole_excel.windowstate = 1
ole_excel.Application.Visible = true
// Excel 창크기(1 : Normal, 2 : Minimize, 3 : Maximize)
ole_excel.windowstate = 3
// New Sheet Open
Try
ole_excel.Application.workbooks.opentext(ls_fullname)
ole_excel.application.workbooks(1).worksheets(1).Name = as_sheet_nm
ole_sheet = ole_excel.application.workbooks(1).worksheets(1)
long ll_m, ll_p
for ll_p = 1 to adw_excel.rowcount()
ll_m = ll_p + 1
ole_sheet.cells(ll_m,15).Formula = "= H" + string(ll_m) + " + I" + string(ll_m) + "+ J" + string(ll_m) + " + K" + string(ll_m) + " + L" + string(ll_m) + " + M" + string(ll_m) + " + N" + string(ll_m)
ole_sheet.cells(ll_m,23).Formula = "= P" + string(ll_m) + " + Q" + string(ll_m) + "+ R" + string(ll_m) + " + S" + string(ll_m) + " + T" + string(ll_m) + " + U" + string(ll_m) + " + V" + string(ll_m)
ole_sheet.cells(ll_m,31).Formula = "= X" + string(ll_m) + " + Y" + string(ll_m) + "+ Z" + string(ll_m) + " + AA" + string(ll_m) + " + AB" + string(ll_m) + " + AC" + string(ll_m) + " + AD" + string(ll_m)
ole_sheet.cells(ll_m,39).Formula = "= AF" + string(ll_m) + " + AG" + string(ll_m) + "+ AH" + string(ll_m) + " + AI" + string(ll_m) + " + AJ" + string(ll_m) + " + AK" + string(ll_m) + " + AL" + string(ll_m)
ole_sheet.cells(ll_m,47).Formula = "= AN" + string(ll_m) + " + AO" + string(ll_m) + "+ AP" + string(ll_m) + " + AQ" + string(ll_m) + " + AR" + string(ll_m) + " + AS" + string(ll_m) + " + AT" + string(ll_m)
ole_sheet.cells(ll_m,55).Formula = "= AV" + string(ll_m) + " + AW" + string(ll_m) + "+ AX" + string(ll_m) + " + AY" + string(ll_m) + " + AZ" + string(ll_m) + " + BA" + string(ll_m) + " + BB" + string(ll_m)
ole_sheet.cells(ll_m,63).Formula = "= BD" + string(ll_m) + " + BE" + string(ll_m) + "+ BF" + string(ll_m) + " + BG" + string(ll_m) + " + BH" + string(ll_m) + " + BI" + string(ll_m) + " + BJ" + string(ll_m)
ole_sheet.cells(ll_m,71).Formula = "= BL" + string(ll_m) + " + BM" + string(ll_m) + "+ BN" + string(ll_m) + " + BO" + string(ll_m) + " + BP" + string(ll_m) + " + BQ" + string(ll_m) + " + BR" + string(ll_m)
ole_sheet.cells(ll_m,79).Formula = "= BT" + string(ll_m) + " + BU" + string(ll_m) + "+ BV" + string(ll_m) + " + BW" + string(ll_m) + " + BX" + string(ll_m) + " + BY" + string(ll_m) + " + BZ" + string(ll_m)
ole_sheet.cells(ll_m,87).Formula = "= CB" + string(ll_m) + " + CC" + string(ll_m) + "+ CD" + string(ll_m) + " + CE" + string(ll_m) + " + CF" + string(ll_m) + " + CG" + string(ll_m) + " + CH" + string(ll_m)
ole_sheet.cells(ll_m,95).Formula = "= CJ" + string(ll_m) + " + CK" + string(ll_m) + "+ CL" + string(ll_m) + " + CM" + string(ll_m) + " + CN" + string(ll_m) + " + CO" + string(ll_m) + " + CP" + string(ll_m)
ole_sheet.cells(ll_m,103).Formula = "= CR" + string(ll_m) + " + CS" + string(ll_m) + "+ CT" + string(ll_m) + " + CU" + string(ll_m) + " + CV" + string(ll_m) + " + CW" + string(ll_m) + " + CX" + string(ll_m)
ole_sheet.cells(ll_m,111).Formula = "= CZ" + string(ll_m) + " + DA" + string(ll_m) + "+ DB" + string(ll_m) + " + DC" + string(ll_m) + " + DD" + string(ll_m) + " + DE" + string(ll_m) + " + DF" + string(ll_m)
ole_sheet.cells(ll_m,6).Formula = "= O" + string(ll_m) + " + W" + string(ll_m) + " + AE" + string(ll_m) + " + AM" + string(ll_m) + " + AU" + string(ll_m) + " + BC" + string(ll_m) + " + BK" + string(ll_m) +&
" + BS" + string(ll_m) + " + CA" + string(ll_m) + " + CI" + string(ll_m) + " + CQ" + string(ll_m) + " + CY" + string(ll_m) + " + DG" + string(ll_m)
ole_sheet.cells(ll_m,7).Formula = "= F" + string(ll_m) + " / 13 "
next
ole_excel.application.workbooks(1).Save()
Catch(OleRuntimeError oex)
MessageBox("확인", "엑셀 변환은 성공되었으나 파일 열기에 실패하였습니다. ~r~n 파일을 확인 하십시오.")
End try
ole_excel.DisConnectObject()
Destroy ole_excel
Else
//fail
End If
Return 1
Integer li_ret, li_h, li_sub, li_footer
SetPointer(HourGlass!)
n_dwr_service_parm lnvo_parm2
Datawindow ldw_excel
ldw_excel = adw_excel
lnvo_parm2 = Create n_dwr_service_parm
ls_title = "다른 이름으로 저장"
ls_fullname = ""
If GetFileSaveName(ls_title,ls_fullname, ls_filename, "File Selection", " EXCEL File (*.xls), *.xls") <> 1 Then Return 1
If FileExists(ls_fullname) Then
ls_msg = ls_fullname + "파일이 있습니다. 기존파일을 바꾸시겠습니까?"
If MessageBox("확인", ls_msg, Exclamation!, OKCancel!, 2) = 2 Then Return 1
End If
li_ret = uf_save_dw_as_excel_parm(ldw_excel, ls_fullname, lnvo_parm2)
If li_ret = 1 Then
// Excel 구동
OleObject ole_excel, ole_sheet
ole_excel = Create OleObject
li_ret = ole_excel.connecttonewobject("excel.application")
IF li_ret <> 0 THEN
Destroy ole_excel
Messagebox("확인", "Excel 구동 중 오류가 발생했습니다.~r~nExcel Program을 확인하십시오.")
Return -1
End If
// Excel 창크기(1 : Normal, 2 : Minimize, 3 : Maximize)
ole_excel.windowstate = 1
ole_excel.Application.Visible = true
// Excel 창크기(1 : Normal, 2 : Minimize, 3 : Maximize)
ole_excel.windowstate = 3
// New Sheet Open
Try
ole_excel.Application.workbooks.opentext(ls_fullname)
ole_excel.application.workbooks(1).worksheets(1).Name = as_sheet_nm
ole_sheet = ole_excel.application.workbooks(1).worksheets(1)
long ll_m, ll_p
for ll_p = 1 to adw_excel.rowcount()
ll_m = ll_p + 1
ole_sheet.cells(ll_m,15).Formula = "= H" + string(ll_m) + " + I" + string(ll_m) + "+ J" + string(ll_m) + " + K" + string(ll_m) + " + L" + string(ll_m) + " + M" + string(ll_m) + " + N" + string(ll_m)
ole_sheet.cells(ll_m,23).Formula = "= P" + string(ll_m) + " + Q" + string(ll_m) + "+ R" + string(ll_m) + " + S" + string(ll_m) + " + T" + string(ll_m) + " + U" + string(ll_m) + " + V" + string(ll_m)
ole_sheet.cells(ll_m,31).Formula = "= X" + string(ll_m) + " + Y" + string(ll_m) + "+ Z" + string(ll_m) + " + AA" + string(ll_m) + " + AB" + string(ll_m) + " + AC" + string(ll_m) + " + AD" + string(ll_m)
ole_sheet.cells(ll_m,39).Formula = "= AF" + string(ll_m) + " + AG" + string(ll_m) + "+ AH" + string(ll_m) + " + AI" + string(ll_m) + " + AJ" + string(ll_m) + " + AK" + string(ll_m) + " + AL" + string(ll_m)
ole_sheet.cells(ll_m,47).Formula = "= AN" + string(ll_m) + " + AO" + string(ll_m) + "+ AP" + string(ll_m) + " + AQ" + string(ll_m) + " + AR" + string(ll_m) + " + AS" + string(ll_m) + " + AT" + string(ll_m)
ole_sheet.cells(ll_m,55).Formula = "= AV" + string(ll_m) + " + AW" + string(ll_m) + "+ AX" + string(ll_m) + " + AY" + string(ll_m) + " + AZ" + string(ll_m) + " + BA" + string(ll_m) + " + BB" + string(ll_m)
ole_sheet.cells(ll_m,63).Formula = "= BD" + string(ll_m) + " + BE" + string(ll_m) + "+ BF" + string(ll_m) + " + BG" + string(ll_m) + " + BH" + string(ll_m) + " + BI" + string(ll_m) + " + BJ" + string(ll_m)
ole_sheet.cells(ll_m,71).Formula = "= BL" + string(ll_m) + " + BM" + string(ll_m) + "+ BN" + string(ll_m) + " + BO" + string(ll_m) + " + BP" + string(ll_m) + " + BQ" + string(ll_m) + " + BR" + string(ll_m)
ole_sheet.cells(ll_m,79).Formula = "= BT" + string(ll_m) + " + BU" + string(ll_m) + "+ BV" + string(ll_m) + " + BW" + string(ll_m) + " + BX" + string(ll_m) + " + BY" + string(ll_m) + " + BZ" + string(ll_m)
ole_sheet.cells(ll_m,87).Formula = "= CB" + string(ll_m) + " + CC" + string(ll_m) + "+ CD" + string(ll_m) + " + CE" + string(ll_m) + " + CF" + string(ll_m) + " + CG" + string(ll_m) + " + CH" + string(ll_m)
ole_sheet.cells(ll_m,95).Formula = "= CJ" + string(ll_m) + " + CK" + string(ll_m) + "+ CL" + string(ll_m) + " + CM" + string(ll_m) + " + CN" + string(ll_m) + " + CO" + string(ll_m) + " + CP" + string(ll_m)
ole_sheet.cells(ll_m,103).Formula = "= CR" + string(ll_m) + " + CS" + string(ll_m) + "+ CT" + string(ll_m) + " + CU" + string(ll_m) + " + CV" + string(ll_m) + " + CW" + string(ll_m) + " + CX" + string(ll_m)
ole_sheet.cells(ll_m,111).Formula = "= CZ" + string(ll_m) + " + DA" + string(ll_m) + "+ DB" + string(ll_m) + " + DC" + string(ll_m) + " + DD" + string(ll_m) + " + DE" + string(ll_m) + " + DF" + string(ll_m)
ole_sheet.cells(ll_m,6).Formula = "= O" + string(ll_m) + " + W" + string(ll_m) + " + AE" + string(ll_m) + " + AM" + string(ll_m) + " + AU" + string(ll_m) + " + BC" + string(ll_m) + " + BK" + string(ll_m) +&
" + BS" + string(ll_m) + " + CA" + string(ll_m) + " + CI" + string(ll_m) + " + CQ" + string(ll_m) + " + CY" + string(ll_m) + " + DG" + string(ll_m)
ole_sheet.cells(ll_m,7).Formula = "= F" + string(ll_m) + " / 13 "
next
ole_excel.application.workbooks(1).Save()
Catch(OleRuntimeError oex)
MessageBox("확인", "엑셀 변환은 성공되었으나 파일 열기에 실패하였습니다. ~r~n 파일을 확인 하십시오.")
End try
ole_excel.DisConnectObject()
Destroy ole_excel
Else
//fail
End If
Return 1