function TF0903005.udf_SpreadToExcel: Boolean;
var
vXls, vScheet : Variant;
FName: String;
ExcelPath : String
begin
result := false;
try
vXls := CreateOleObject('Excel.Application');
except
MessageDlg('Excel이 설치되어 있지 않습니다.',MtWarning, [mbOK], 0);
Exit;
end;
FName := 'c:\temp.xls';
vXls.Visible := True;
vXls.UserControl := False;
vScheet := vXls.WorkBooks.Open(fName); --> error
....
vXls.SaveAs(FName);
ExcelPath := ExcelPath+'\Excel.Exe '+FName;
winexec(pchar(ExcelPath),SW_SHOW);
end;
위에서 그리드에 있는 내용을 엑셀로 저장할때 temp.xls 파일이 없는경우
temp.xls 파일을 생성후 저장하려고 하는데
vScheet := vXls.WorkBooks.Open(fName); 부분에서 파일이 없다고
에러가 납니다. 빈 temp.xls를 만들면 되는데 없는경우는 에러가 납니다.
파일명일 그때그때마다 변경되어서 파일을 생성하고 저장해야하는데
잘안되네요 묻고답하기에 검색해 봤는데 잘 안되네요
부탁드립니다.
"자료실 검색해 보세요" 라는 답변은 안하셨으면 좋겠습니다.
<!--CodeS-->
if FileExists(FName) then
vScheet := vXls.WorkBooks.Open(fName)
else
vXls.WorkBooks.Add;
<!--CodeE-->