الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف اقوم بقراءه ملف Excel في #C

مغلق
بدأه musaireae في 29 أكتوبر 2005 · 13 رد · 4,493 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

كيف اقوم بقراءة ملفات EXCEL في لغة #C

If you have an apple and I have an apple and we exchange these apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.

#2

يوجد أكثر من طريقه ... أفضلهم من وجهة نظري هو التعامل معهم كـ Data Source من خلال الـ Oledb لاستخدام امكانيات الـ ADO .net التي بحوذتنا معهم.

اعمل اسم جديد للجزء الذي تريده من ملف الـ Excel بتحديد الصفوف التي تريدها ثم فتح قائمة Insert ومنها الى Name ثم اضغط Define واكتب الاسم الذي تريده وليكن ATMembers ثم اضغط ADD ::

ATMembersExcel.JPG

لاحظ أنني قمت بعمل أول صف هو أسماء الـ Columns وليست الـ Data مباشرة.

بعد ذلك تعامل مع الاسم الذي قمنا بانشائه ( ATMembers ) كأنه Table عادي.

اعمل OledbConnection مع تغيير ما يلزم ::

OleDbConnection myConnection = new OleDbConnection(@"Provider=Microsoft.Jet.Oledb.4.0; Data Source=F:\yourForlder\yourFile.xls;Extended Properties=Excel 8.0");

بعد ذلك أعمل DataAdapter يقوم بوضع البيانات في DataTable ::

OleDbDataAdapter myAdapter = new OleDbDataAdapter("Select * from ATMembers",myConnection);
DataTable myTable = new DataTable();
myAdapter.Fill(myTable);

انتهينا ! أنت الآن تمتلك البيانات في الـ myTable ... يمكنك وضعها في DataGrid مثلا :

myDataGrid.CaptionText = "ATMembers";
myDataGrid.DataSource = myTable;

ATMembersGrid.JPG

ولكن بالنسبه لملفات الـ Excel الذي لم نقم نحن بانشائها فلن نعرف أن نضع لها Name مثل ما وضعنا Name للجزء الذي نريده في الملف الموجود المثال السابق.

ولذلك اذا لم يكن لدينا Name محدد لجزء معين في الملف ... يمكننا وضع الـ Range واسم الـ Sheet في جملة الـ Select بدلا من الاسم .. مثلا وعلى حسب الملف الموجود في المثال السابق الـ Sheet اسمها Sheet1 والـ Range الذي نود اختياره من A1 حتى C3 فيمكننا كتابة الـ Select هكذا ::

OleDbDataAdapter myAdapter = new OleDbDataAdapter("Select * from [Sheet1$A1:C3]",myConnection);
DataTable myTable = new DataTable();
myAdapter.Fill(myTable);

#Read

http://MoutazShams.blogspot.com

projects003.gif

أعتذر عن التغيب هذه الأيام نظرا للانشغال المريب

#3

جزاك الله الف خير اخي معتز والله انها طريقة رائعة

#4

مشكور يا اخي

If you have an apple and I have an apple and we exchange these apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.

#5

العفو يا رجاله .. أيضا يوجد طرق أخرى منها الطريقه التي اتبعتها في موضوع اجعل برنامجك يستخدم برامج الـ Office ولكني كنت أستخدم MS Word.

فيمكنك اتباع نفس الطريقه مثلا لتحويل الملف لـ XML وبعد ذلك قراءته بسهوله أو يمكنك الدخول في تفاصيل أكثر لتقرأ من الملف مباشرة .... طرق طويله ... ولكن يمكنك اعتبارها Just For Fun :).

تم تعديل هذه المشاركة بواسطة معتز شمس في 30 أكتوبر 2005 في 06:38

#Read

http://MoutazShams.blogspot.com

projects003.gif

أعتذر عن التغيب هذه الأيام نظرا للانشغال المريب

#6

بارك الله فيك أخي معتز

===========

و ايه يا عم انا عمري 807 هههههههههههه

و الله حرام انا لسة صغنون ههههههههههه

===========

#7
اقتباس
و ايه يا عم انا عمري 807 هههههههههههه

و الله حرام انا لسة صغنون ههههههههههه

أنا آسف يا أيوب أنا اتلخبط وكتبت 807 بدلا من 708 :P

#Read

http://MoutazShams.blogspot.com

projects003.gif

أعتذر عن التغيب هذه الأيام نظرا للانشغال المريب

#8

الف شكر اخ معتز ع المعلومات الجامده دى بس انا كان عندى استفسار

انت دلوقتى قريت من مل الاكسل طب لو انا عايز اعمل عليه تعديلات بمعنى انى عايز اعمل اضافه او تعديل بيان من الى موجود او عايز اعمل حذف عن طريق الادو دوت نت وباستخدام السى شارب

هل ممكن ولا الموضوع دا ماينفعش يطبق بالطرق التقليديه ؟؟

#9

ان شاء الله ستنجح جميع الطرق التقليدية في التعديل يا M.net ولكن, أنا لم أجرب من قبل, لأنني لا أتعامل مع الـ Excel الا نادرا.

#Read

http://MoutazShams.blogspot.com

projects003.gif

أعتذر عن التغيب هذه الأيام نظرا للانشغال المريب

#10

انا بالفعل جربت احد الطرق التقليديه ولكن نجحت عن طريق استخدام التكست بوكس

لكنى كنت بحاول انى اعمل الجريد فيو زى الاكسل ولما ادخل فى الخليه يدخل فى الاكسل

ف كنت عايز اعرف ازاى اقدر اتعامل مع الخليه بتاعة الجرد فيو والدتا الى اكتبها فيها تسمع فى الاكسل

ولك جزيل الشكر

#11

السلام عليكم

شكرا جزيلا يا باشا

مفيد جدا

اللهم إنك عالم بحالى وغنى عن سؤالى فأهدنى وأصلح لى بالى

#12

شباب عندي مشروع جاهز عن كيفية التعامل مع قاعدة بيانات في الأكسل عن طريق السي شارب ( اظهار الاسماء + التعديل فيها + حذفها + ترتيبها ) واظهار رسم بياني أيضاً لمعدلات الطلاب ..

اذا تحبوا أرفقه لكم أدوني خبر ..

#13

السلام عليكم

يا ريت ترفقه يا أخ PRO_S00 حتى تعم الفائده على الجميع

وشكرا

اللهم إنك عالم بحالى وغنى عن سؤالى فأهدنى وأصلح لى بالى

#14

تفضل البرنامج كامل مع الكود ..

StudDb.rar

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…