잘못된 형식의 엑셀파일을 열때 에러처리를 하려고 아래와 같이 코딩을
했는데, except 로 넘어가질않고 open 에서 멈추면서 '잘못된 파일형식'이라는 메세지 박스가 뜹니다.
왜 그런건지 모르겠습니다.
답변 부탁드립니다.
*************************** 소스 *******************
procedure TForm1.Button1Click(Sender: TObject);
var
ExcelApp: Variant;
begin
try
ExcelApp := CreateOLEObject('Excel.Application');
ExcelApp.WorkBooks.open('C:1.xls');
ExcelApp.visible := False;
except
on E: Eoleexception do
begin
showmessage('error');
end;
end;
end;
ole생성시 에러체크에 대한 예외처리보다 파일을 먼저 여는것도 좀 뒤로 보네구요.
아래 예를 참조해보세요.
procedure TFrmMeasureDataExcel.File_OPEN(file_name : string);
var
XL : Variant;
begin
try
XL := GetActiveOLEObject('Excel.Application');
except
on E: EOleSysError do begin
try
XL := CreateOLEObject('Excel.Application'); //엑셀을 실행
except
MessageDlg('Excel이 설치되어 있지 않습니다.', MtWarning, [mbok], 0);
XL.free;
Exit;
end;
end;
end;
XL.WorkBooks.open(file_name);
XL.visible := true;
end;
hsr////////////////////////////////////////////////////////////