اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

السلام عليكم

الملف المرفق قام بوضعه احد الأخوة الأفاضل في هذا المنتدى

يقوم باستيراد البيانات من ملف إكسل إلى أكسس تيبل

المطلوب تعديل الكود بحيث يثم الإستيراد من ملف CSV

مرفق ملف CSV للتجربة

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

ImportExcelFile.rar

20060513.zip

قام بنشر

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

لماذا لا تجرب تغيير امتداد نوع الملف :

من :

   mFile = GetFile("Choose a file to import", "Excel Files (*.xls)", "*.xls")
الى :
 mFile = GetFile("Choose a file to import", "Excel Files (*.CSV)", "*.CSV")

مجرد محاولة فقط

قام بنشر

اخي التقني أشكر لك تجاوبك

سبق وأن قمت بتجربة ما ذكرته لكن لم تجدي نفعا

حيث أن تغير إمتداد الملف تمكنك من إختيار نوع الملف المطلوب إستيراده وهو csv بدلا من xls

لكن عندما أطلب عملية الإستيراد لا يقوم بها

ويقوم بإظهار bug عند السطر

DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel7, mTable, mFile, True

شاكر لك مسبقا

قام بنشر

الأخوة التقني ـــ rudwan

شاكر تجاوبكم

بالنسبة للملف المرفق من الأخ rudwan للأسف لا يفي بالغرض

إذا كان ممكن تعديل على الكود بالملف المرفق من قبلي بحيث يتم الإستيراد من CSV FILE

بدلا من الإكسل مع ملاحظة ان الكود يحدد الورقة مع العلم ان CSV لا يحتوى سوى ورقة واحدة

هناك ملاحظة مهمة يجب أخذها بالإعتبار وهى ان بيانات الملف CSV المرفق عدد عناوين الأعمدة 6 بينما البيانات الموجودة تتكون من 7 أعمدة

ممكن نجعلة يتجاهل عنوان الأعمدة

أو ان يقوم باستيراد البيانات في العمود من 1 حتى 6 ويهمل العمود 7

تحياتي للجميع

قام بنشر
الأخوة التقني ـــ rudwan

شاكر تجاوبكم

بالنسبة للملف المرفق من الأخ rudwan للأسف لا يفي بالغرض

إذا كان ممكن تعديل على الكود بالملف المرفق من قبلي بحيث يتم الإستيراد من CSV FILE

بدلا من الإكسل مع ملاحظة ان الكود يحدد الورقة مع العلم ان CSV لا يحتوى سوى ورقة واحدة

هناك ملاحظة مهمة يجب أخذها بالإعتبار وهى ان بيانات الملف CSV المرفق عدد عناوين الأعمدة 6 بينما البيانات الموجودة تتكون من 7 أعمدة

ممكن نجعلة يتجاهل عنوان الأعمدة

أو ان يقوم باستيراد البيانات في العمود من 1 حتى 6 ويهمل العمود 7

تحياتي للجميع

شاكر تجاوبكم

قام بنشر (معدل)

الى هذه الدرجة تعديل الكود صعب

مع أن انه قد تم تحميل الملف عشر مرات ولم يقدم اي من الأخوة التعديل المطلوب

تم تعديل بواسطه salman a
قام بنشر

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

أخي العزيز

حقيقة لم أستدل من خلال البحث عن كود يقوم بهذه العملية

لكن وجدت لك برنامج صغير يقوم بسحب محتويات *.csv وانشاء ملف mdb بداخله جدول حقوله مقسمة حسب محتويات ملف الــCSV

طريقة العمل :

قم بإنشاء مجلد بإسم csvdata وضعه على القرص c ليكون بالطريقة التالية :

c:\csvdata

بعد أن فتح هذا المجلد قم بتشغيل الملف convert_cvs2mdb

واتبع الخطوات

ستجد أنه تم انشاء ملف mdb بإسم template

اقتراح : يمكنك تشغيل هذا السكربت csvdata ووضعه ضمن كود تشغيل داخل مشروعك (جرب)

وبالتوفيق

انظر المرفقات

convert_cvs2mdb.zip

قام بنشر

الأخ الفاضل التقني

السلام عليكم

للأسف الملف لم يعمل لدي

تم إنشاء مجلد بأسم csvdata على الــ c

وعند محاولة فتح البرنامج يقوم بإنشاء ملف mdb بإسم template

وبعدها يعطي رسالة خطاء item canooot be found in the collection corresponding to the recuested name or ordinal

ارجو الإفادة عن ماهية المشكلة او الخطاء بالموضوع

شاكر لك تجاوبك واهتمامك

تحياتي

قام بنشر

أعتذر اليك عزيزي

نسيت خطوة مهمة وهي :

أن تضع ملف الــCSV لديك داخل المجلد csvdata ومن ثم قم بعمل التحويل

وإن لم يعمل قم تغيير ملف الــCSV الى اسم export

وبالتوفيق

قام بنشر

اخي التقني

للأسف لم يقم بالعملية حتى مع تعديل اسم الملف علما بأنني حاولت مع ملفي وكذلك الملف المرفق مع البرنامج

أعتذر عن إزعاجي

قام بنشر

غريبة

قمت بتطبيق البرنامج على الملف المرفق معه وتم انشاء ملف mdb فيه جدول وحقول ممتلئة بالبيانات مستمدة منم ملف الاكسلCSV.

حقيقة لا أعرف ان كان الخلل من الاوفيس لديك أم لا ؟

حبذا لو تم تجربة المثال من قبل الاخوة .

قام بنشر

عند محاولة فتح mdb اللتي تم إنشائها باسم template

يعطيني رسالة تحويلها أى نوع 2000 او فتحها فقط

أعتقد ان المشكلة لدي

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

زائر
هذا الموضوع مغلق.
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information