PDA

View Full Version : ارتباط با فایل Excel از طریق ADO



Syrus
دوشنبه 23 اردیبهشت 1387, 11:14 صبح
میخواهم از طریق
ADO
محتویات یک شیت از اکسل را در دیتا گرید نمایش داده و همانند یک جدول اطلاعات ان را خوانده و یا در ان ذخیره نمایم. در ضمن در بخش جستجو چیزی پیدا نکردم
تا الان توانستم یک
ADOConnection
را از طریق
ODBC
به فایل اکسل ارتباط داده و خاصیت
Connected
ان را true
کنم
اما نمی توانم چگونه بقیه کار را انجام دهم
ممنون

Syrus
دوشنبه 23 اردیبهشت 1387, 11:16 صبح
لطفا
راهنمایی در دلفی 7
و نهایتا دلفی دلفی 10

merced
دوشنبه 23 اردیبهشت 1387, 18:07 عصر
اگه جستجو كنيد خيلي بيشتر و بهتر از اين گيرتون مياد.


var
Excel: Variant;
zl, i, j : Integer;
begin
Excel := CreateOleObject('Excel.Application') ;
Excel.Workbooks.Add;
ADOTable1.First;
zl := 2 ; // شمارنده سطر
j := 1 ; // شماره ستون
for i := 0 to ADOTable1.FieldCount - 1 do
if DBGrid1.Columns[I].Visible then begin
Excel.Cells[zl , j + 1]:=DBGrid1. Columns[I].Title.Caption;
j:= j + 1 ;
end;

inc (zl) ;

while not ADOTable1.Eof do begin
j := 1 ;
Excel.Cells[zl,1] :=INTTOSTR(ZL-2);

for i :=0 to ADOTable1.Fieldcount - 1 do
if DBGrid1.Columns[I].Visible then begin
Excel.Cells[zl, J+1] := ADOTable1.Fields[i].AsString;
j:= j + 1 ;
end ; // IF ,, & for

inc(z1 ) ;

ADOTable1.Next;

end; // Of while

end ; // of procedure


var
xls,wb : OleVariant ;
i , j : Integer ;
begin
StringGrid1.RowCount := R ;
StringGrid1.ColCount := C ;

if not OpenDialog1.Execute then
Abort ;

xls := CreateOLEObject('Excel.Application') ;
wb := xls.Workbooks.open(OpenDialog1.FileName) ;
for i := 1 to R do
for j := 1 to C do
StringGrid1.Cells[i,j] := ( wb.WorkSheets[1].Cells[i,j]) ;


end ;