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

تحويل جدول من وورد إلى أكسس كما هو


nssj
إذهب إلى أفضل إجابة Solved by jjafferr,

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

الأخ الكريك جعفر .. هذه نتيجة تجربة الكود الجديد كما طلبت ..

الكود الجديد يزيد سطرا فارغا في آخر كل حقل، ما سوى ذلك فالنتيجة تمام والنص سليم ولا توجد أسطر فارغة أو مسافات في أوائل وأواخر الأسطر حتى لو كانت موجودة في ملف الوورد بالخطأ

ويمكنك أن ترى الفرق بين الكودين في الملف المرفق، الملف (04) تم استيراده بالكود القديم، أما (05) فبالكود الجديد

 ثم وبالعودة للملاحظة المتقدمة بخصوص رسالة (3163)، فظهرت معي خلال التجارب المتعددة رسالة أخرى (3421): خطأ في تحويل نوع البيانات

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

لكن ظهر لي أمر آخر أحب أن آخذ رأيك فيه، وهو أن نجعل خصائص كل الحقول في الجدول الرئيسي (tbl_From_Word) نص طويل (مذكرة) حتى لا تخرج هذه الرسائل، وحتى يتم تحويل الجدول بكل بياناته، ثم بعد ذلك يمكن معالجة الجداول وتغيير خصائصها حسب المطلوب في أكسس، لا سيما وأن استخدامي لهذا الكود لن يكون فقط للملف الرئيسي بخصائصة الموحدة، بل لأغراض متعددة ومتجددة يقتضي كل منها أن تكون بعض الجداول بخصائص مختلفة عن الأخرى

لكن قبل ذلك أحب أن أتأكد من أمر ما:

فبعض الحقول ينبغي ألا تحتوي إلا على أرقام، ووجود غيرها خطأ ينبغي معالجته

وبعض الحقول أرقام وأقواس ووجود أحرف عادية غير مرغوب به

وحقول لا ينبغي أن تكون فيها النصوص طويلة

فهل توجد آليات في أكسس لتمييز هذه الأمور قبل تغيير خصائص الحقول

يعني أن أتأكد أولا قبل تحويل الحقل من (مذكرة) إلى (رقم) أن هذا الحقل لايحتوي إلا على أرقام، والحقول التي تحتوي على غيرها يعطيني أرقامها لمعالجتها

وكذلك الحال إذا كانت بعض الحقول تحتوي على نص طويل، قبل تحويله من (مذكرة) إلى (نص)

أنا عادة أقوم ببعض هذه الأمور في الوورد عبر خطوات طويلة، فإن كان هذا الأمر ممكنا في أكسس فلعله من الأفضل أن تعالج هذه الأمور فيه ونجعل خصائص كل حقول الجدول (tbl_From_Word) على (مذكرة)، ثم سأطرح موضوع هذه الآليات المطلوبة في موضوع مستقل

فما هو رأيك أخي الكريم ؟

1322.6.تحويل.accdb

رابط هذا التعليق
شارك

8 ساعات مضت, nssj said:

الكود الجديد يزيد سطرا فارغا في آخر كل حقل

بكرة ان شاء الله اشوف هذه النقطة ،

 

8 ساعات مضت, nssj said:

رسالة (3163)، فظهرت معي خلال التجارب المتعددة رسالة أخرى (3421)

هذه الرسائل لما تستورد من ملف فيه الجدول من 3 حقول ، صح؟

ممكن عن طريق الكود ان اتحكم في مكان حفظ البيانات ، اذا كانت 4 حقول ، فما في مشكلة ، واذا كانت 3 حقول في اي الحقول تريدني احفظها ؟

 

8 ساعات مضت, nssj said:

وهو أن نجعل خصائص كل الحقول في الجدول الرئيسي (tbl_From_Word) نص طويل (مذكرة)

النقطة السابقة ستحل هذا الموضوع ،

ولكن ، لا تفعل هذا في الاكسس ، فأنت تضخم البرنامج اكبر من حجمه ، ويصبح ثقيل ،

 

جعفر

رابط هذا التعليق
شارك

أخي الكريم جعفر .. رسالة (3163) تظهر إذا لم يكن عمود النص الطويل هو آخر عمود ولو كان الجدول 4 أعمدة، أو أني بالخطأ في أحد الصفوف وضعت النص في غير العمود المخصص له، وهذا لم يحدث معي إلا نادرا لكنه حدث على أي حال

المقصود أخي الكريم .. أن فكرة جعل كل الحقول (مذكرة) -بشكل مؤقت عند الاستيراد فقط- هي لتلافي مثل هذه الأخطاء .. ولكي لا أضطر إلى تغيير الخصائص في الجدول الافتراضي (tbl_From_Word) حسب الحاجة

لأنه كما ذكرت سابقا: تحويل الجداول من وورد إلى أكسس هو عملية متكررة أقوم بها لأكثر من غرض وليس فقط من أجل البرنامج الرئيسي، وفي بعض الأحيان يكون الجدول المراد تحويله يحتوي على أكثر من عمود فيه نص طويل

ولزيادة البيان أقول: أني سوف أخصص قاعدة بيانات خاصة للتحويل من وورد لأكسس، ولن أدرجها في البرنامج الرئيسي، وعند استيراد مجموعة الجداول المطلوبة سوف أصدرها لقاعدة البيانات المطلوبة -سواء الرئيسية أو غيرها حسب طبيعة العمل- وهناك سوف أجري عليها التعديلات الخاصة بها

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

وأظن -ولست من أهل الخبرة- أن الجدول بهذه الإجراءات سيأخذ وضعه المناسب ولن يكون سببا في ثقل البرنامج .. وأرجو أن يكون ظني في محله

رابط هذا التعليق
شارك

  • أفضل إجابة

تم الغاء السطر الاخير الفارغ ، فرجاء تجربته على هذا البرنامج ، وذاك 🙂

 

وتم اصطياد جميع رسائل الاخطاء ، بحيث يتم عرضها ، وعند التقر على OK ، يتم اغلاقها ،

ولا اريد ان اوقف هذه الرسائل ، حتى تعرف انك قمت بخطأ ما ،

والبرنامج يكتشف هذه الاخطاء فقط لما يفتح ملف الوورد ، فلا سبيل الى التنبئ بالخطأ خلافا لذلك 🙂

 

اما موضوع عمل جدول وجميع حقوله "مذكرة" ، فنعم تستطيع القيام به لتعجيل استيراد البيانات من ملف الوورد ، ولكنك ستتيه في بيانات الاكسس !!

ولا انصح بتعديل نوع حقوله من مذكرة الى رقم (مثلا) ، وانما يكون الافضل وجود جدول آخر به انواع الحقول بالطريقة الصحيحة ، ثم يتم استيراد بينات جدول المذكرات الى هذا الجدول ، وتتم عملية التنظيف خلال هذا الاستيراد ، ولكن لن يكون الامر سهلا 😁

 

جعفر

1322.7.تحويل.accdb.zip

  • Like 1
رابط هذا التعليق
شارك

أخي الكريم جعفر .. تم المطلوب على أحسن وجه وبحمد الله، سواء في الاستيراد أو في التصحيح، مع سلامة النص في الحالتين .. فجزاك الله خيراً وأحسن إليك

إلا أن قولك

13 ساعات مضت, jjafferr said:

ثم يتم استيراد بينات جدول المذكرات الى هذا الجدول ، وتتم عملية التنظيف خلال هذا الاستيراد ، ولكن لن يكون الامر سهلا 😁

زَعَّلني شوي 😟  ولخبط حساباتي 🙃 .. كان أملي أن يكون هذا الأمر في أكسس سهلاً، لأني أريد أن أتخلص من الخطوات الطوييييييلة والمملة التي كنت أتبعها في وورد لمعرفة أين الخطأ

على كل حال .. موضوعنا هنا: (استيراد الجدول من وورد لأكسس كما هو)، قد وفقك الله لإتمامه على أحسن وجه، فبارك الله فيك، والحمد لله أولاً وآخراً

أما موضوع معالجة وتصحيح البيانات وتغيير خصائص الحقول فسأطرحه في موضوع مستقل .. وساعتها بنشوف أحسن طريقة نتعامل فيها مع شرطي المرور (Access) لأنه على الأغالب أكثر مرونة في هالموضوع من شرطي مرور (Word😄

ولكن أولاً -وبعد الانتهاء من المهم- علي ترتيب أوراقي لمتابعة الموضوع الأهم: إضافة ونقل السجلات .. والله ولي التوفيق

رابط هذا التعليق
شارك

42 دقائق مضت, nssj said:

تم المطلوب على أحسن وجه وبحمد الله، سواء في الاستيراد أو في التصحيح، مع سلامة النص في الحالتين

الحمدلله 🙂

وبوضع الدالة في وحدة نمطية مستقلة ، يمكننا نستفيد منها من اكثر من مكان ، ولأكثر من سبب 🙂

 

33 دقائق مضت, nssj said:

شرطي المرور (Access) لأنه على الأغالب أكثر مرونة في هالموضوع من شرطي مرور (Word)

مو شرط ،

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

اما الاكسس فقواعد بيانات وبرمجة ، لذا فالمقارنة بين البرنامجين في لهذه النقطة غير دقيقة 🙂

بينما قد يكون الافضل الدمج بين الحُسنيين ، برمجيا طبعا ، فننظف بالوورد قدر المستطاع ، والباقي يصبح مسؤولية الاكسس ،

وانت لاحظت كيف ان كود حذف الأسطر الفارغة والمسافات في أول السطر - صفحه 3 - قسم الأكسيس Access - أوفيسنا (officena.net) اخذ الوقت والمحاولات الكثيرة 🙂

لهذا السبب انا طرحت الفكرة هناك :

في ٢٧‏/١‏/٢٠٢١ at 20:23, jjafferr said:

سؤال: 

نحن ننظر للموضوع من داخل الصندوق ، ولكن اذا نظرنا له من خارج الصندوق ، نرى ان هذه البيانات تأتي من ملف وورد ، والوورد متخصص في هذه الامور ، فممكن يكون افضل ان ننظف ملف الوورد (برمجيا طبعا) بأوامر الوورد ، ثم نستورد الملف نظيف وجاهز😁

 

جعفر

رابط هذا التعليق
شارك

14 دقائق مضت, jjafferr said:

بينما قد يكون الافضل الدمج بين الحُسنيين ، برمجيا طبعا ، فننظف بالوورد قدر المستطاع ، والباقي يصبح مسؤولية الاكسس ،

تمام .. ولكن السؤال هنا:

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

أو أن هذا العمود لا يحتوي إلا على هذه الرموز المعينة، وما سوى ذلك يحدد لي أين الخلل

أو أن هذا العمود لا يحتوي إلا على أرقام ، وما سوى ذلك يحدد لي أين الخلل

أو أن هذا العمود لا يحتوي على مسافات أو فقرات، وما سوى ذلك يحدد لي أين الخلل

هذا الأمور وما على شاكلتها أنا بمعلوماتي البسيطة أظن أنها في أكسس أسهل، فيكفي أنني سأتعامل حينها مع جدول واحد وليس (50) جدول أو أكثر .. فهل الأمر كما ظننت

رابط هذا التعليق
شارك

كلامك ريَّحني وبطلت زعلان .. خليها عالمبرمجين - سهل ولا مش سهل يدبروا حالهم 😁- وخليني في شغلي .. طبعا من ضمن شغلي إني أنظف ملفات الوورد قدر الإمكان وكأنه ما في إشي اسمه: أكسس :yes:

تم تعديل بواسطه nssj
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information