![]() |
|
استراد ملف اكسل الى جدول - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : استراد ملف اكسل الى جدول (/showthread.php?tid=11924) الصفحات:
1
2
|
استراد ملف اكسل الى جدول - tahar1983 - 08-05-2022 لديا جدول اسمه etud1 واريد ان اجلب له بيانات اكسل بحيث هده البيانات تاتي تحت الاخرى مباشرة وكل مرة استدعى بيانات تاتي تحت الاخرى RE: استراد ملف اكسل الى جدول - ALG2009 - 08-05-2022 السلام عليكم تفضل https://www.youtube.com/watch?v=fDoeSSRwaKY&list=PLC6_vCD988MFmrQZ5ftXUedlLwI-UA65E&index=5 الرابط الثاني https://www.youtube.com/watch?v=Hi1Agzy1dEo&list=PL1c7L5EsigqLUDBGdq2tS02L4BPz_VfDJ&index=6 لا أدري إن كان هناك مكون أو كمبونانت يفي بالغرض المطلوب دون العناء أرجو من له علم أن يساعد RE: استراد ملف اكسل الى جدول - Ndagor - 09-05-2022 كود : implementation
{$R *.dfm}
uses comobj;
procedure TForm2.Button1Click(Sender: TObject);
var
xlApp,xlSheet,xlFile:Variant;
line:integer;
S1,S2,S3:string;
begin
xlApp:= CreateOleObject('Excel.Application');
try
xlApp.Visible := False;
xlApp.DisplayAlerts := False;
xlFile := xlApp.Workbooks.Open('C:\Users\user33\Documents\test.xlsx');
xlSheet:=xlFile.Sheets['Feuil1'];
for line := 1 to 10 do
begin
S1:=VarToStr(xlSheet.Cells[1].Item[line].value);
S2:=VarToStr(xlSheet.Cells[2].Item[line].value);
S3:=VarToStr(xlSheet.Cells[3].Item[line].value);
ShowmessageFmt('%s ; %s ; %s',[S1,S2,S3]);
end;
finally
xlApp.Quit;
end;
end;RE: استراد ملف اكسل الى جدول - tahar1983 - 09-05-2022 (09-05-2022, 01:00 PM)Ndagor كتب : اين اضع هذا الكود RE: استراد ملف اكسل الى جدول - tahar1983 - 10-05-2022 (09-05-2022, 11:44 PM)tahar1983 كتب :(09-05-2022, 01:00 PM)Ndagor كتب : اين الجدول في الكود و dbgrid RE: استراد ملف اكسل الى جدول - Ndagor - 18-05-2022 انظر الى المثال المرفق RE: استراد ملف اكسل الى جدول - tahar1983 - 19-05-2022 (18-05-2022, 10:49 PM)Ndagor كتب : انظر الى المثال المرفق شكرا ما قصدته هو جلبه الى جدول اكسس موجود مسبقا مثلا جدول الطلبة يحتوي علي 100 طالب اقوم باضافة 200 طالب في اكسل ومعلوماتهم ثم اضيفهم الى جدول اكسس الاول RE: استراد ملف اكسل الى جدول - Ndagor - 20-05-2022 حسنا يمكن استعمال المثال السابق للاستيراد بيانات اكسل و ااضافتها الى ملف اكسس ,,,بالفتراض انك تستعمل ADOQuery او ADOTable فكلاهما يقوم بنفس الشي ,,, يمكنك العمل Transaction لالغاء عملية الاضافة في حال وقوع خطا في استراد حيث يمكنك الغاء الاضافات الجديدة و البد ء من جديد بعد تصحيح البيانات الخطا في الاكسل .... ملاحظة لاتقم بتغيير الثابت -4121 فهذا يستعمله الاكسل لتحدييك اللسطر الفارغ الاخير كود : uses comobj;
procedure TForm2.Button1Click(Sender: TObject);
var
ExelFile,Dir:string;
xlApp,xlSheet,xlFile:Variant;
line,LastCorrect:integer;
begin
Dir:=ExtractFilePath(ParamStr(0));
if not PromptForFilename(ExelFile,'Excel|*.xlsx','','', Dir) then
Exit;
xlApp:= CreateOleObject('Excel.Application');
try
xlApp.Visible := False;
xlApp.DisplayAlerts := False;
xlFile := xlApp.Workbooks.Open(ExelFile);
xlSheet:=xlFile.Sheets['Feuil1'];
ADOQuery1.DisableControls();
try
LastCorrect:= xlSheet.Range['A1'].End[-4121].Row;
for line := 2 to LastCorrect do
begin
ADOQuery1.Append();
ADOQuery1.FieldByName('col1').AsVariant:=xlSheet.Cells[1].Item[line].value;
ADOQuery1.FieldByName('col2').AsVariant:=xlSheet.Cells[2].Item[line].value;
ADOQuery1.FieldByName('col3').AsVariant:=xlSheet.Cells[3].Item[line].value;
ADOQuery1.Post();
end;
finally
ADOQuery1.EnableControls();
end;
finally
xlApp.Quit;
end;
end;RE: استراد ملف اكسل الى جدول - tahar1983 - 22-05-2022 (20-05-2022, 01:51 PM)Ndagor كتب : حسنا يمكن استعمال المثال السابق للاستيراد بيانات اكسل و ااضافتها الى ملف اكسس ,,,بالفتراض انك تستعمل ADOQuery او ADOTable فكلاهما يقوم بنفس الشي ,,, يمكنك العمل Transaction لالغاء عملية الاضافة في حال وقوع خطا في استراد حيث يمكنك الغاء الاضافات الجديدة و البد ء من جديد بعد تصحيح البيانات الخطا في الاكسل ....اين جدول الاكسس وماهي اعمدته ذعلى حساب مافهمت الجدول الاول هو الجدول الاكسل المراد اضافته والكود الثاني هو الذي يقوم باضافة الجدول الى اكسس ولكن عند تطبيق الكود ضهر لي ملف اكسل وليس اكسس RE: استراد ملف اكسل الى جدول - Ndagor - 22-05-2022 الكود الاخير مجرد مثال يستعمل حقول .col1 col2 col3 قم بتعديل و بادخال اسماء الحقول الموجودة في ملف الاكسس الذي تستخدمه الامر ليس معقد. |