지금 현재 excel폼 출력물을 만들고 있습니다.
엑셀 템플릿 파일에 매크로를 찾고 있습니다.
현재 엑셀에 출력까지 완료 된 상태...
출력 후 저장 매크로와 엑셀 종료 매크로가 필요한데 찾을 곳이 없네요...
혹시 아시는 분 알려주세요~
댓글 4
-
김창훈
2007.08.09 07:38
-
강진규
2007.08.09 17:37
감사합니다. 많은 도움이 될것 같습니다.
-
강진규
2007.08.09 23:25
처리 완료 하였습니다.
save as는 sap 단에서 처리 했습니다.
CALL METHOD document->save_as
EXPORTING
file_name = filename
IMPORTING
retcode = retcode.
엑셀 창 닫는 건 매크로를 써서 했네요...
CALL METHOD document->execute_macro
EXPORTING
macro_string = 'ZGL_R3_CLOSE' " execute excel macro
NO_FLUSH = 'X'
IMPORTING
retcode = retcode.
CALL METHOD c_oi_errors=>show_message
EXPORTING
type = 'E'.
*// 엑셀 매크로
Sub ZGL_R3_CLOSE()
'
Application.ScreenUpdating = False
Call ZCLOSE
Application.ScreenUpdating = True
'
End Sub
Sub ZCLOSE()
'
ThisWorkbook.Close SaveChanges:=False
'
End Sub -
동글이
2010.08.29 06:33
님의 경험이 저한테 많은 도움이 될것 같네요.
전,,, 매크로는 잘 모르는데,,, 기존에 되어 있는 엑셀시트에 이렇게 되어 있는데요....
도움이 되실지.....
Sub R3_MACRO1()
Call R3_D1
Call R3_Print
Call close_doc
End Sub
Sub R3_D1()
Dim R3Table As Object
Set R3Table = ThisWorkbook.Container.LinkServer.Items("IT_EXCEL").Table
Dim i, j, k As Long
Dim R_COUNT As Long
R_COUNT = R3Table.RowCount
R_COUNT = R_COUNT + 8
j = 0
ThisWorkbook.Sheets(1).Cells(4, 4) = CVar(R3Table.Value(1, 6))
ThisWorkbook.Sheets(1).Cells(4, 9) = CVar(R3Table.Value(1, 7))
ThisWorkbook.Sheets(1).Cells(5, 4) = CVar(R3Table.Value(1, 8))
ThisWorkbook.Sheets(1).Cells(5, 9) = CVar(R3Table.Value(1, 9))
ThisWorkbook.Sheets(1).Cells(4, 16) = CVar(R3Table.Value(1, 24))
ThisWorkbook.Sheets(1).Cells(5, 16) = CVar(R3Table.Value(1, 23))
ThisWorkbook.Sheets(1).Cells(5, 22) = CVar(R3Table.Value(1, 22))
ThisWorkbook.Sheets(1).Cells(4, 22) = CVar(R3Table.Value(1, 21))
For i = 9 To R_COUNT
j = j + 1
ThisWorkbook.Sheets(1).Cells(i, 1) = CVar(R3Table.Value(j, 2))
ThisWorkbook.Sheets(1).Cells(i, 3) = CVar(R3Table.Value(j, 10))
ThisWorkbook.Sheets(1).Cells(i, 6) = CVar(R3Table.Value(j, 11))
ThisWorkbook.Sheets(1).Cells(i, 14) = CVar(R3Table.Value(j, 12))
ThisWorkbook.Sheets(1).Cells(i, 15) = CVar(R3Table.Value(j, 13))
ThisWorkbook.Sheets(1).Cells(i, 19) = CVar(R3Table.Value(j, 14))
ThisWorkbook.Sheets(1).Cells(i, 22) = CVar(R3Table.Value(j, 17))
ThisWorkbook.Sheets(1).Cells(i, 24) = CVar(R3Table.Value(j, 15))
ThisWorkbook.Sheets(1).Cells(i, 26) = CVar(R3Table.Value(j, 16))
ThisWorkbook.Sheets(1).Cells(i, 28) = CVar(R3Table.Value(j, 18))
Next i
End Sub
Sub R3_Print()
Dim R3Table As Object
Set R3Table = ThisWorkbook.Container.LinkServer.Items("IT_EXCEL").Table
Dim i, j, k As Long
i = CVar(R3Table.Value(1, 25))
j = CVar(R3Table.Value(1, 26))
ActiveWindow.SelectedSheets.PrintOut From:=i, To:=j, Copies:=1, Collate:=True
End Sub
Sub close_doc()
ThisWorkbook.Close SaveChanges:=False
End Sub