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

مشكله في استيراد بيانات من ورقة إكسل

بدأه السعوودي في 15 فبراير 2008 · 2 رد · 1,235 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

.

السلام عليكم ورحمة الله وبركاته

لدي مشكله في استيراد بيانات من ورقة إكسل إلى قاعدة بيانات أكسس عن طريق الكود في الـ VB.Net

طبعاً البرنامج صغير وهو عباره عن سجلات للموظفين

ويتكون الجدول من 4 أعمده ( رقم الموظف (رقم) - إسمه (نص) - المرتبه (نص) - الإدارة(نص) )

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

جدول مؤقت (DataTable) يتم إنشاؤه في وقت التشغيل

وبعد التأكد من عدم وجود تكرار (من قبل المستخدم ) تتم إضافتها إلى قاعدة البيانات

المشكله :

مشكلتي بعد الاستيراد أن أحد الأعمده (وهو العمود الخاص بالمرتبه ) في ورقة الإكسل

في بعض الأحيان يكون أرقام ( 8 أو 7 أو 6 .. )

وفي احيان أخرى يكون حروف ( عامل أو سائق ... )

المشكله انه بعد الاستيراد يتم تحديد نوع العمود حسب الأكثر ؟؟

بمعنى انه إذا كانت الأرقام أكثر من الحروف في العمود يتم تحديد نوع الحقل (Double)

أما إذا كان النص أكثر يكون (string)

وإذا تساوت يكون (Double)

طبعاً لايتم استيراد القيم النصيه في حال كان نوع الحقل (Double) <<< تكون = NULL

وأنا أريد أن يكون نوع الحقل (string) سواء كانت الأرقام أكثر أو لا

بحثت هنا ولم أجد شيئاً للأسف

وبحثت في موقع مايكروسوفت و في المنتديات الأجنبيه ووجدت حل بتغيير أحد المفاتيح في ملف الريجستري وهو :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel\ImportMixedTypes

وجعل قيمته = Text

ولكن دون فائده

أتمنى من لديه طريقه يسعفنا بارك الله فيكم

.

#2

الحمد لله الذي بحمده تدوم النعم

تم حل المشكله بتوفيق الله

وذلك بوضع هذه الكلمه في الكونيكشن

IMEX=1

وفائدتها تحويل طريقة الاستيراد إلى الوضع المختلط

فإذا كانت جميع الحقول في العمود أرقام يجعل نوعه (Double)

أما إذا كانت تحتوي على نصوص وأرقام يجعل نوعه ( String ) حتى لو كان حرف واحد أو شرطه

وضعتها هنا للفائده وكرد جميل ولو بسيط للهذا الصرح الذي طالما استفدت منه

#3

الرجاء وضع المشروع للاستفدة

ASDSUEZ

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

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

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

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

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