منتدى مصر التقني
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

التعامل مع مصنفات الاكسل فى #C ... درس (1):إنشاء مصنف أكسل

اذهب الى الأسفل

التعامل مع مصنفات الاكسل فى #C ... درس (1):إنشاء مصنف أكسل Empty التعامل مع مصنفات الاكسل فى #C ... درس (1):إنشاء مصنف أكسل

مُساهمة من طرف أحمد مناع السبت ديسمبر 21, 2013 11:31 am

بسم الله الرحمن الرحيم 

_ أهلا وسهلا بكم إخوانى الكرام ....سنبدأ فى شرح كيفية التعامل مع مصنفات الاكسل فى خلال السى شارب بعدة دروس بداية من هذا الدرس و الذى سنتعلم فيه كيفية إنشاء مصنف أكسل .


1_ فى البداية يجب أدراج المكتبة Excel object Library الى المشروع و ذلك من خلال تحديد ايقونة المشروع فى نافذة Solution Explorer ثم النقر يمين و من القائمة التى ستظهر قم باختيار الامر Add Reference

التعامل مع مصنفات الاكسل فى #C ... درس (1):إنشاء مصنف أكسل Add-Reference-1

_ سيظهر لك مربع حوارى من خلال التويب com أختر المكتبة Microsoft Excel Object Library

التعامل مع مصنفات الاكسل فى #C ... درس (1):إنشاء مصنف أكسل Add-Reference-2

2_ تحتاج إلى إضافة المرجع في شفرة المشروع من أجل استخدام كافة الأسالييب المكتبة Microsoft Excel Object Library  و يتم ذلك على النحو التالى:
الكود:
using Excel = Microsoft.Office.Interop.Excel;

3_ إنشاء مثيل جديد للكائن تطبيق Excel  وذلك بأستخدام الشفرة التالية :

الكود:
Excel.Application xlApp = new Excel.Application();
 

4_ الاعلان عن كائن مصنف أكسل Workbook و كائن ورقة عمل أكسل Worksheet

الكود:
 Excel.Workbook xlWorkBook ;
 Excel.Worksheet xlWorkSheet ;

5_ لكى نستطيع إنشاء مصنف أكسل يتم ذلك من خلال الاسلوب add التابع للكائن Workbooks ...لكن هذا الاسلوب يحتاج الى الكثير من المعلمات أو المعطيات قد تتجاوز 15 معلمة ونحن بحاجة إلى تمرير كل هذه paramters الى هذا الاسلوب ....لكن وبدلا من ذلك نستطيع تخطي جميع تلك params وذلك من خلال استخدام missing class للمعلمات الافتراضية ...وذلك من خلال الاعلان عن كائن من تلك الطبقة لاستخدمها فيما بعد على النحو التالى :

الكود:
object misValue = System.Reflection.Missing.Value;

6_ في بعض الأحيان يقوم كائن الاكسل بعرض بعض رسائل التحذير إذا كان هناك أي مشاكل التوافق بين الملف الذى نحاول إنشاءة و إصدار برنامج الاكسل المثبت لديك على اجهاز. يمكنك تعطيل رسائل تحذير تلك باستخدام التعليمات البرمجية التالية.

الكود:
xlApp.DisplayAlerts = false;

7_افتراضيا، يتم تعيين وضوح تطبيق Excel الى القيمة FALSE و التى تعنى عدم تشغيل او رؤية مصنف الاكسل بعد إنشائه لكن هناك بعض المطوريين يريدون فتح المصنف و رؤيته بمجرد من الانتهاء من انشائه ....لذلك يتم استخدام الكود التالى لفعل ذلك :
الكود:
xlApp.Visible = true;

8_بعد قيامنا بالاعلان عن كافة الكائنات التى سيتم أستخدامها فى انشاء مصنف أكسل ...نقوم بأنشاء المصنف على النحو التالى :

الكود:
xlWorkBook = xlApp.Workbooks.Add(misValue);

9_ نقوم بانشاء ورقة العمل Worksheet على النحو التالى :

الكود:
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);

حيث أن الرقم (1) هو رقم الفهرس لاول ورقة عمل فى المصنف الاكسل الذى تم إنشائه .

10_ إضافة بيانات فى خلايا ورقة عمل المصنف

الكود:
 xlWorkSheet.Cells[1, 1] ="name"
 xlWorkSheet.Cells[1, 2] ="age"
 xlWorkSheet.Cells[1, 3] ="Percentage"

11_ حفظ مصنف الاكسل على النحو التالى :
الكود:
  xlWorkBook.SaveAs("csharp-Excel.xls", Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue, Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);

12_ إغلاق كائنات العمل
الكود:
xlWorkBook.Close(true, misValue, misValue);
  xlApp.Quit();

الى اللقاء فى درس قادم

ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
أحمد مناع
أحمد مناع
.
.

تاريخ التسجيل : 15/02/2011
المساهمات : 1108
النقاط : 202034
التقيم : 144
الدولة : مصر
الجنس : ذكر

https://egy-tech.forumegypt.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

التعامل مع مصنفات الاكسل فى #C ... درس (1):إنشاء مصنف أكسل Empty رد: التعامل مع مصنفات الاكسل فى #C ... درس (1):إنشاء مصنف أكسل

مُساهمة من طرف السنى السبت ديسمبر 28, 2013 7:53 am

الله اكبر عليك يا استاذنا ....
السنى
السنى
........
........

تاريخ التسجيل : 18/02/2011
المساهمات : 249
النقاط : 464
التقيم : 25
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

ََ

مواضيع ذات صلة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى