안녕하십니까! 고수님들...
opendailog를 사용하여 엑셀 파일을 읽어서 dbgrid에 내용을 뿌려준 다음에
그 내용을 다시 table에 저장하는 프로그램을 만들고 있습니다. 그런데 당체 모르겠습니다. 매일 매일 엑셀화일(주문명세서)은 table에 저장되어져야 합니다. 엑셀 드라이버로 odbc를 설정하게 되면 하나의 엑셀화일만 지정되는거 같은데...매일마다 odbc설정을 바꿀수도 없을것 같구요,..
좋은 방법이 있으면 한수 지도해 주시기 바랍니다. 이왕이면 더 자세히 가르쳐 주시면 좋겠습니다(어떤 콤포넌트를 어떻게 사용하는도...) 사실 전 시스템 관리자인데 대빵께서 델파이로 프로그램을 짜라고 해서 T.T
2주일 되었는데 대가리에 쥐납니다. 꼬옥 부탁드릴께요...
> 안녕하십니까! 고수님들...
> opendailog를 사용하여 엑셀 파일을 읽어서 dbgrid에 내용을 뿌려준 다음에
> 그 내용을 다시 table에 저장하는 프로그램을 만들고 있습니다. 그런데 당체 모르겠습니다. 매일 매일 엑셀화일(주문명세서)은 table에 저장되어져야 합니다. 엑셀 드라이버로 odbc를 설정하게 되면 하나의 엑셀화일만 지정되는거 같은데...매일마다 odbc설정을 바꿀수도 없을것 같구요,..
> 좋은 방법이 있으면 한수 지도해 주시기 바랍니다. 이왕이면 더 자세히 가르쳐 주시면 좋겠습니다(어떤 콤포넌트를 어떻게 사용하는도...) 사실 전 시스템 관리자인데 대빵께서 델파이로 프로그램을 짜라고 해서 T.T
> 2주일 되었는데 대가리에 쥐납니다. 꼬옥 부탁드릴께요...
ADO를 사용하시면 DBGrid에 읽어들일 수 있습니다..
다음 코딩 참고해 보세요..
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
with ADOQuery1 do
begin
close;
ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' +
OpenDialog1.FileName + ';Extended Properties=Excel 8.0;Persist Security Info=False';
SQL.Clear;
if Edit1.Text <> '' then
//원하는 레코드만큼 읽기
SQL.Text := 'SELECT TOP ' + Edit1.Text + ' * FROM [Sheet1$]'
else
//전체 읽기
SQL.Text := 'SELECT * FROM [Sheet1$]';
open;
end;
end;