التعامل مع مصنفات الاكسل فى #C ... درس (2):قراءة مصنف أكسل
صفحة 1 من اصل 1 • شاطر
التعامل مع مصنفات الاكسل فى #C ... درس (2):قراءة مصنف أكسل
بسم الله الرحمن الرحيم
_ أهلا وسهلا بكم إخوانى الكرام ...فى درس سابق تعلمنا كيفية إنشاء مصنف أكسل من خلال السى شارب و تكمله لتلك السلسة سنتعلم اليوم كيفية فتح و قراءة مصنف أكسل من خلال ايضا السى شارب و ذلك باستخدام الخطوات التالية :
1_ فى البداية يجب أدراج المكتبة Excel object Library الى المشروع و ذلك من خلال تحديد ايقونة المشروع فى نافذة Solution Explorer ثم النقر يمين و من القائمة التى ستظهر قم باختيار الامر Add Reference
_ سيظهر لك مربع حوارى من خلال التويب com أختر المكتبة Microsoft Excel Object Library
2_ تحتاج إلى إضافة المرجع في شفرة المشروع من أجل استخدام كافة الأسالييب المكتبة Microsoft Excel Object Library و يتم ذلك على النحو التالى:
3_ إنشاء مثيل لكائن تطبيق Excel وذلك بأستخدام الشفرة التالية :
4_ الاعلان عن كائنات العمل التى سيتم إستخدامها على النحو التالى :
5_ نقوم بفتح مصنف الاكسل على النحو التالى :
حيث أن :
_ السطر الاول تم الاعلان عن متغير نصى و إسناد اسم و مسار مصنف الاكسل المراد فتحته و القراءة منه .
_ السطر الثانى تم تمرير المتغير النصى الى الاسلوب Open لتتم عملية الفتح .
6_تحديد ورقة العمل sheet المراد القراءه منها على النحو التالى :
حيث أن :
_ الرقم 1 يشير الى فهرس ورقة العمل المراد القراءة منها و التى تعنى "روقة العمل الاولى فى المصنف "
_ عند تحديد ورقة العمل قد لا تكون هذه الورقة هى المفتوحة لذلك استخدمنا الاسلوب ActiveSheet
كما يمكنك استخدام الكود فى شكل اخر فى حالة عدم القدرة على رقم ورقة العمل و ذلك من خلال استخدام أسم ورقة العمل بدلا من فهرسها على النحو التالى :
7_لبدء عملية القراءة يجب تحديد نطاق عناوين من الخلايا و قراءة القيم من هذا النطاق ...في مثالنا، ونحن بحاجة لقراءة الخلايا من A2 إلى A11 ....فيتم على النحو التالى :
و لقراءة العمود الثاني، فقط تغيير العنوان من B2 إلى B11.
_ ومع ذلك يمكنك الوصول إلى جميع البيانات في ورقة العمل باستخدام حلقة تكرارية بسيطة على النحو التالى :
8_ أحيانا قد تكون غير متأكدا من معرفة عناوين النطاقات و في مثل هذه الحالات، يمكنك الحصول على عنوان أخر صف و أخر عمود يحتويان على بيانات باستخدام التعليمات البرمجية التالية :
10_ أخير أغلاق الكائنات المستخدمة فى العمل
اللى اللقاء فى درس قادم
_ أهلا وسهلا بكم إخوانى الكرام ...فى درس سابق تعلمنا كيفية إنشاء مصنف أكسل من خلال السى شارب و تكمله لتلك السلسة سنتعلم اليوم كيفية فتح و قراءة مصنف أكسل من خلال ايضا السى شارب و ذلك باستخدام الخطوات التالية :
1_ فى البداية يجب أدراج المكتبة Excel object Library الى المشروع و ذلك من خلال تحديد ايقونة المشروع فى نافذة Solution Explorer ثم النقر يمين و من القائمة التى ستظهر قم باختيار الامر Add Reference
_ سيظهر لك مربع حوارى من خلال التويب com أختر المكتبة Microsoft Excel Object Library
2_ تحتاج إلى إضافة المرجع في شفرة المشروع من أجل استخدام كافة الأسالييب المكتبة Microsoft Excel Object Library و يتم ذلك على النحو التالى:
- الكود:
using Excel = Microsoft.Office.Interop.Excel;
3_ إنشاء مثيل لكائن تطبيق Excel وذلك بأستخدام الشفرة التالية :
- الكود:
Excel.Application oXL = new Excel.Application();
4_ الاعلان عن كائنات العمل التى سيتم إستخدامها على النحو التالى :
- الكود:
Excel.Workbook oWB;
Excel.Worksheet oSheet;
5_ نقوم بفتح مصنف الاكسل على النحو التالى :
- الكود:
String inputFile = @"D:\Excel\Input.xlsx";
oWB = oXL.Workbooks.Open(inputFile);
حيث أن :
_ السطر الاول تم الاعلان عن متغير نصى و إسناد اسم و مسار مصنف الاكسل المراد فتحته و القراءة منه .
_ السطر الثانى تم تمرير المتغير النصى الى الاسلوب Open لتتم عملية الفتح .
6_تحديد ورقة العمل sheet المراد القراءه منها على النحو التالى :
- الكود:
oSheet = oWB.Sheets[1];
oSheet = oWB.ActiveSheet;
حيث أن :
_ الرقم 1 يشير الى فهرس ورقة العمل المراد القراءة منها و التى تعنى "روقة العمل الاولى فى المصنف "
_ عند تحديد ورقة العمل قد لا تكون هذه الورقة هى المفتوحة لذلك استخدمنا الاسلوب ActiveSheet
كما يمكنك استخدام الكود فى شكل اخر فى حالة عدم القدرة على رقم ورقة العمل و ذلك من خلال استخدام أسم ورقة العمل بدلا من فهرسها على النحو التالى :
- الكود:
oSheet = oWB.Sheets["SheetName"];
oSheet = oWB.ActiveSheet;
7_لبدء عملية القراءة يجب تحديد نطاق عناوين من الخلايا و قراءة القيم من هذا النطاق ...في مثالنا، ونحن بحاجة لقراءة الخلايا من A2 إلى A11 ....فيتم على النحو التالى :
- الكود:
String start_range = "A2";
String end_range = "A11";
Object[,] values = oSheet.get_Range(start_range, end_range).Value2;
و لقراءة العمود الثاني، فقط تغيير العنوان من B2 إلى B11.
- الكود:
start_range = "B2";
end_range = "B11";
Object[,] values = oSheet.get_Range(start_range, end_range).Value2;
_ ومع ذلك يمكنك الوصول إلى جميع البيانات في ورقة العمل باستخدام حلقة تكرارية بسيطة على النحو التالى :
- الكود:
int t = values.GetLength(0);
for (int i = 1; i <= values.GetLength(0); i++)
{
String val = values[i, 1].ToString();
}
8_ أحيانا قد تكون غير متأكدا من معرفة عناوين النطاقات و في مثل هذه الحالات، يمكنك الحصول على عنوان أخر صف و أخر عمود يحتويان على بيانات باستخدام التعليمات البرمجية التالية :
- الكود:
Excel.Range last = oSheet.Cells.SpecialCells(Excel.XlCellType.xlCellTypeLastCell, Type.Missing);
int lastRow = last.Row;
int lastColumn = last.Column;
start_range = "A2";
end_range = "A" + Convert.ToString(lastColumn);
10_ أخير أغلاق الكائنات المستخدمة فى العمل
- الكود:
oWB.Close(true, misValue, misValue);
oXL.Quit();
اللى اللقاء فى درس قادم
ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
سبحان الله وبحمدة .....سبحان الله العظيم
رد: التعامل مع مصنفات الاكسل فى #C ... درس (2):قراءة مصنف أكسل
ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
NEXT- الادارة
- تاريخ التسجيل : 18/02/2011
المساهمات : 446
النقاط : 200660
التقيم : 28
الدولة :
الجنس :
رد: التعامل مع مصنفات الاكسل فى #C ... درس (2):قراءة مصنف أكسل
يمكنك الاعتماد على إتقان في إتمام جميع إجراءات تأسيس شركة في دبي في وقت قياسي إذا كانت جميع مستنداتك جاهزة، دون رسوم مخفية ودون أية صعوبات.
خطوات تأسيس شركة في دبي
تأسيس شركة في المنطقة الحرة
تأسيس شركة في دبي للخليجيين
| |
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
أمس في 8:56 pm من طرف moslema_r
» شركة مكافحة حشرات في راس الخيمة
أمس في 8:34 pm من طرف moslema_r
» تطبيقIncogniton لإدارة ملفات تعريف متعددة للمتصفح
الأربعاء أبريل 24, 2024 3:51 pm من طرف زاكااا
» افضل شركة مكافحة النمل الابيض بالرياض
الإثنين أبريل 22, 2024 9:41 pm من طرف moslema_r
» Exemplary Сasual Dating - Verified Women
الخميس أبريل 18, 2024 9:18 pm من طرف wdqwd
» رش الدفان بالرياض
الخميس أبريل 18, 2024 7:11 pm من طرف moslema_r
» شركة تنظيف خزانات الشارقة
الخميس أبريل 18, 2024 6:57 pm من طرف moslema_r
» شركة مكافحة الفئران بالرياض
الإثنين أبريل 15, 2024 8:23 pm من طرف moslema_r
» افضل شركة كشف تسربات المياه بالباحة
الخميس أبريل 04, 2024 7:02 am من طرف gmalnagy
» ساعدوني وفهموني help me
الجمعة مارس 29, 2024 8:37 am من طرف linesoft