안녕하세요 초보 hobakpa입니다.
다름이 아니고 버턴클릭하면
한건의 레코드를 가지고 엑셀에다 뿌릴려고 합니다.
개인 신상기록부 아시죠 ? 이름, 성명, 기타~~~ 사진도 나오고
이런것들 모두 출력폼이 있잔아요. 신상 기록부는 아닌데 비슷한 출력폼이거든요.
물론 선도 그려야하고 음~~~ 정말 어이가 없군요.
다른 샘플예제를 많이 봤는데 보통 엑셀에 그리드형식(가로 x, 세로 y)으로 뿌리더라고요.
질문]
방식 1. 엑셀과 연결하여 데이타 뿌리고 그리기.
1. 버튼 클릭하면 엑셀과 연결과 동시에 라인을 그리고 싶습니다.
방식 2. 출력폼이 그려진 엑셀화일을 가지고는 이용할수 없는지..
2. 출력폼이 그려진 엑셀화일이 있습니다.
음그러니까 개발할때 델파이 폼상속하듯이 출력폼이 그려진 엑셀화일을 상속가능할까요?
방식 3. 이미 퀵레포트론 구연을 해놨는데 이걸 이용할수 없는지.
음 질문이 많아서......^-^; 누가 조금이라도 조언을..해주세요..혼자 이리저리 방방뛰는것도 한계가 있나봅니다.
고드름 김정입니다.
엑셀의 SHEET를 COM 객체로 연결해서 부르고
각 셀에 데이터를 넘기거나 셀의 가이드 라인을 그리거나 색칠하거나 할 수 있습니다.
try
EXCEL := CreateOLEObject('Excel.Application');
except
MessageDlg('Excel이 설치되어 있지 않습니다.', MtWarning, [mbok], 0);
Exit;
end;
EXCEL.WorkBooks.Add;
이런 식으로 EXCEL 을 Variant 로 선언한 후, COM 객체로 연결하고
EXCEL.Range['D2', 'D2'].Value := 'S/W 개인별지급현황';
EXCEL.Range['D2', 'D2'].Select;
EXCEL.Selection.Font.Name := '돋움체';
EXCEL.Selection.Font.Size := 20;
이렇게 값을 넣으실 수 있구여,
EXCEL.Selection.Borders[xlEdgeLeft].Weight := xlThin;
EXCEL.Selection.Borders[xlEdgeLeft].ColorIndex := xlAutomatic;
이렇게 선을 처리할 수 있습니다. xlThin 같은 상수가 문제인데,
저는 위의 소스들을 EXCEL Macro Edit 에서 확인했습니다.
const
xlContinuous = 1;
xlThin = 2;
xlAutomatic = -4105;
xlRight = -4152;
xlCenter = -4108;
xlLandscape = 2;
마지막으로 저장후, 종료하실 때는
EXCEL.Range['A1', 'A1'].Select;
EXCEL.workbooks[1].SaveAs( 'savefile.xls' );
EXCEL.workbooks[1].Close;
EXCEL.Quit;
이렇게 하시면 됩니다.
참고하세요.
그럼.