![]() |
|
Excel من دلفي عبر ADO - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي التقنية (https://delphi4arab.net/forum/forumdisplay.php?fid=6) +--- قسم : دلفي و التعامل مع قواعد البيانات (https://delphi4arab.net/forum/forumdisplay.php?fid=23) +--- الموضوع : Excel من دلفي عبر ADO (/showthread.php?tid=2851) الصفحات:
1
2
|
Excel من دلفي عبر ADO - mourad123 - 04-03-2011 السلام علكيم اخيLam.Abdeldjalil اردت في بادئ الامر القيام ببرنامح فيه كل من scExcelExpor و ado لنقل البيانات ولكن فيما بعد وضعتهما كل على حدى Excel من دلفي عبر ADO - Lam.Abdeldjalil - 04-03-2011 و عليكم السلام أعتذر لأني لم أدقق جيدا في مثالك لكنه يحمل نفس فكرة الأستاذ kachwahed أي الإتصال بـ Excel ولا يحتوي على ما سميته بـ "التحويل من excel الى paradox بواسطة ado " ؟؟ Excel من دلفي عبر ADO - mourad123 - 04-03-2011 السلام عليكم نعم اخيLam.Abdeldjalil Excel من دلفي عبر ADO - aymen1968 - 12-07-2011 السلام عليكم: لمن أراد معرفة الإتصال عن طريق ADO بالإكسل 2010 كود: PHP كود : varExcel من دلفي عبر ADO - manoubi77 - 26-01-2013 السلام عليكم هل يمكنك اضافة خاصية البحث في قاعدة البيانات و شكراا Excel من دلفي عبر ADO - محمد شعبان - 06-04-2015 بارك الله فيكم جميعا Excel من دلفي عبر ADO - memoz - 06-04-2015 السلام عليكم هذا تابع يقوم بتحويل محتويات datasource الى ملف word كود : procedure create_file(filnam:string;mnth,yer,mntq,kem,aml:string);
var
WordApp, NewDoc, WordTable: Variant;
iRows, iCols, iGridRows, jGridCols: Integer;
begin
try
WordApp := CreateOleObject('Word.Application');
except
Exit;
end;
WordApp.Documents.Open(filnam);
// WordApp.Documents.Add;
NewDoc := WordApp.ActiveDocument;
WordApp.ActiveDocument.Range.Font.Name := 'Times New Roman';
WordApp.ActiveDocument.Range.Font.size:= 10;
WordApp.ActiveDocument.Range.Bold := True;
WordApp.Selection.range.ParagraphFormat.Alignment :=wdAlignParagraphright;
iCols :=frm_kafel_to_kfl.DataSource1.DataSet.RecordCount+1;
iRows := 12;
WordApp.Selection.Range.pagesetup.rightmargin:=10;
WordApp.Selection.Range.pagesetup.leftmargin:=10;
WordApp.Selection.Range.pagesetup.TopMargin:=150;
WordApp.Selection.Range.pagesetup.BottomMargin:=150;
frm_kafel_to_kfl.ProgressBar1.Min:=0;
frm_kafel_to_kfl.ProgressBar1.max:=(frm_kafel_to_kfl.DataSource1.DataSet.RecordCount+1)*12;
frm_kafel_to_kfl.ProgressBar1.Position :=0;
WordApp.Selection.TypeText(' السلام عليكم');
WordApp.Selection.TypeText(#13#10#13#10);
WordApp.Selection.TypeParagraph;
WordApp.Selection.TypeText(' السلام عليكم ('+mnth+') السلام عليكم ('+yer+') السلام عليكم ('+mntq+') السلام عليكم ('+kem+') السلام عليكم('+aml+')');
WordApp.Selection.TypeText(#13#10#13#10);
WordApp.ActiveDocument.Range.Bold := true;
WordTable := NewDoc.Tables.Add(WordApp.Selection.Range, iCols, iRows);
NewDoc.Tables.Item(1).Columns.Item(1).SetWidth(25,0);// م
NewDoc.Tables.Item(1).Columns.Item(2).SetWidth(45,0);// السلام عليكم
NewDoc.Tables.Item(1).Columns.Item(3).SetWidth(70,0);// السلام عليكم
NewDoc.Tables.Item(1).Columns.Item(4).SetWidth(50,0);// السلام عليكم
NewDoc.Tables.Item(1).Columns.Item(5).SetWidth(50,0);// السلام عليكم
NewDoc.Tables.Item(1).Columns.Item(6).SetWidth(50,0);// السلام عليكم
NewDoc.Tables.Item(1).Columns.Item(7).SetWidth(80,0);// السلام عليكم
NewDoc.Tables.Item(1).Columns.Item(8).SetWidth(85,0);// السلام عليكم
NewDoc.Tables.Item(1).Columns.Item(9).SetWidth(130,0);// العنوان
NewDoc.Tables.Item(1).Columns.Item(10).SetWidth(85,0);// السلام عليكم
NewDoc.Tables.Item(1).Columns.Item(11).SetWidth(70,0);// السلام عليكم
WordTable.Borders.Item(wdBorderLeft).LineStyle:=wdLineStyleSingle;
WordTable.Borders.Item(wdBorderRight).LineStyle:=wdLineStyleSingle;
WordTable.Borders.Item(wdBorderTop).LineStyle:=wdLineStyleSingle;
WordTable.Borders.Item(wdBorderBottom).LineStyle:=wdLineStyleSingle;
WordTable.Borders.Item(wdBorderVertical).LineStyle:=wdLineStyleSingle;
WordTable.Borders.Item(wdBorderHorizontal).LineStyle:=wdLineStyleSingle;
WordTable.Cell(1,1).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,1).Range.Font.Size := 10;
WordTable.Cell(1,1).Range.Font.Bold := true;
WordTable.Cell(1,1).Range.Text :='م';
WordTable.Cell(1,2).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,2 ).Range.Text :='رقم استمارة اليتيم';
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(1,3).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,3 ).Range.Text :=' السلام عليكم';
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(1,4).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,4 ).Range.Text :=' السلام عليكم';
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(1,5).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,5 ).Range.Text :=' السلام عليكم';
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(1,6).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,6 ).Range.Text :=' السلام عليكم';
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(1,7).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,7 ).Range.Text :=' السلام عليكم';
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(1,8).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,8 ).Range.Text :=' السلام عليكم';
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(1,9).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,9 ).Range.Text :='ا السلام عليكم';
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(1,10).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,10 ).Range.Text :=' السلام عليكم';
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(1,11).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,11 ).Range.Text :='ا السلام عليكم';
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(1,12).Range.Paragraphs.Alignment := 4;
WordTable.Cell(1,12 ).Range.Text :=' السلام عليكم';
if iCols>1 then
frm_kafel_to_kfl.DataSource1.DataSet.First;
for jGridCols := 2 to iCols do
begin
WordTable.Cell(jGridCols,1).Range.Paragraphs.Alignment := 4;
WordTable.Cell(jGridCols,1 ).Range.Text :=inttostr(jGridCols-1);
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(jGridCols,2).Range.Paragraphs.Alignment := 4;
WordTable.Cell(jGridCols,2 ).Range.Text := frm_kafel_to_kfl.DataSource1.DataSet.FieldByName('y_id').AsString;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(jGridCols,3).Range.Paragraphs.Alignment := 4;
WordTable.Cell(jGridCols,3 ).Range.Text := frm_kafel_to_kfl.DataSource1.DataSet.FieldByName('y_f_name').AsString;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(jGridCols,4).Range.Paragraphs.Alignment := 4;
WordTable.Cell(jGridCols,4 ).Range.Text := frm_kafel_to_kfl.DataSource1.DataSet.FieldByName('y_l_name').AsString;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(jGridCols,5).Range.Paragraphs.Alignment := 4;
WordTable.Cell(jGridCols,5 ).Range.Text := frm_kafel_to_kfl.DataSource1.DataSet.FieldByName('f_name').AsString;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(jGridCols,6).Range.Paragraphs.Alignment := 4;
WordTable.Cell(jGridCols,6 ).Range.Text := frm_kafel_to_kfl.DataSource1.DataSet.FieldByName('y_mather').AsString;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(jGridCols,7).Range.Paragraphs.Alignment := 4;
WordTable.Cell(jGridCols,7 ).Range.Text := frm_kafel_to_kfl.DataSource1.DataSet.FieldByName('y_birth_date').AsString;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(jGridCols,8).Range.Paragraphs.Alignment := 4;
WordTable.Cell(jGridCols,8 ).Range.Text := frm_kafel_to_kfl.DataSource1.DataSet.FieldByName('m_mobil').AsString;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(jGridCols,9).Range.Paragraphs.Alignment := 4;
WordTable.Cell(jGridCols,9 ).Range.Text := frm_kafel_to_kfl.DataSource1.DataSet.FieldByName('m_address').AsString;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(jGridCols,10).Range.Paragraphs.Alignment := 4;
WordTable.Cell(jGridCols,10 ).Range.Text := frm_kafel_to_kfl.DataSource1.DataSet.FieldByName('istlam_date').AsString;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(jGridCols,11).Range.Paragraphs.Alignment := 4;
WordTable.Cell(jGridCols,11 ).Range.Text := frm_kafel_to_kfl.DataSource1.DataSet.FieldByName('mst_f_name').AsString;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
WordTable.Cell(jGridCols,12 ).Range.Text := '';
frm_kafel_to_kfl.DataSource1.DataSet.Next;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.Position +1;
Application.ProcessMessages;
end;
WordApp.ActiveDocument.Range. InsertAfter(#13#10' السلام عليكم أ السلام عليكم السلام عليكم ' );
WordApp.Selection.range.ParagraphFormat.Alignment :=wdAlignParagraphLeft;
frm_kafel_to_kfl.ProgressBar1.Position :=frm_kafel_to_kfl.ProgressBar1.max;
Application.ProcessMessages;
NewDoc.Saveas(filnam, False) ;
WordApp.Quit(False);
end;Excel من دلفي عبر ADO - خالد على22 - 12-04-2015 kachwahed كتب : شكرا على المقال أخى imex=1 للسماح بنصوص و أرقام (بيانات مختلفة الأنواع) فى نفس الحقل أو العمود imex=0 لا تسمح إلا بنوع واحد من البيانات فى العامود الواحد جرب بنفسك و ستعرف خالص تقديرى |