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

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

قام بنشر

السلام عليكم

اساتذتى الافاضل اثناء تصفحى لأحد المواضيع لفت نظرى كود وضعه أستاذنا الجليل جعفر  وهو طريقة للتحايل على موضوع 32 و 64 عند تحويل القاعدة الى ACCDE وهذا هو الكود 

Function ConvertToaccDE()
Dim sourcedb, targetdb As String
sourcedb = "D:\Converter.accdb"
targetdb = "D:\2.accde"
Dim accessApplication As Access.Application
Set accessApplication = New Access.Application
With accessApplication
.SysCmd 603, sourcedb, targetdb
End With
'Set accessApplication = Nothing
End Function

ولكن اريد تطوير هذا الكود بحيث يفتح قاعدة البيانات ويحولها الى ACCDE بنفس اسمها ثم يحذف القاعدة الأصلية ليس الى سلة المهملات ولكن Shift+Delete

وذلك للاطمئنان ووسيلة حماية اضافية ... ولو فيه طرق اخرى لعمل نفس الوظيفة مافى مشكلة ... جزاكم الله خير

 

 

قام بنشر

السلام عليكم

تفضل هذا هو التعديل الذي تريده

Dim sourcedb, targetdb, nametargetdb As String
sourcedb = "D:\Conv.accdb"
targetdb = "D:\tt2.accde"
nametargetdb = "D:\Conv.accde"
Dim accessApplication As Access.Application
Set accessApplication = New Access.Application
With accessApplication
.SysCmd 603, sourcedb, targetdb
End With
Kill sourcedb
Name targetdb As nametargetdb
FollowHyperlink nametargetdb

 

  • Like 2
قام بنشر (معدل)
7 ساعات مضت, صالح حمادي said:

تفضل هذا هو التعديل الذي تريده



 

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

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

استفسار اخر هل من الممكن ان تتم العملية من داخل القاعدة المطلوبة وليست عن طريق قاعدة اخرى خارجية بحيث يتم ارسال البرنامج نسخة accdb للعميل وعند فتحها اول مرة تقوم بتحويل نفسها الى accde ثم تحذف النسخة accdb بالطريقة السابقة ؟ جزاكم الله خير استاذى الفاضل:fff:

Converter.rar

تم تعديل بواسطه Amr Ashraf
  • Like 2
قام بنشر
17 ساعات مضت, Amr Ashraf said:

ولكن اريد تطوير هذا الكود بحيث يفتح قاعدة البيانات ويحولها الى ACCDE بنفس اسمها ثم يحذف القاعدة الأصلية ليس الى سلة المهملات ولكن Shift+Delete

وذلك للاطمئنان ووسيلة حماية اضافية

هناك سؤال ... ماذا سيحدث اذا المشتري اخذ نسخة من قاعدة من نوع accdb قبل فتحه اول مرة ؟ من الاحسن انك تعمل تحويل الى accde وبعدين تعطي نسخة من  accde  للمشتري وتأخذ نسخة من accdb اليك اذا احتاجت للتعديلات عليه 
تقبل تحياتي

  • Like 1
قام بنشر (معدل)
8 دقائق مضت, Shivan Rekany said:

هناك سؤال ... ماذا سيحدث اذا المشتري اخذ نسخة من قاعدة من نوع accdb قبل فتحه اول مرة ؟ من الاحسن انك تعمل تحويل الى accde وبعدين تعطي نسخة من  accde  للمشتري وتأخذ نسخة من accdb اليك اذا احتاجت للتعديلات عليه 
تقبل تحياتي

شكرا على مرورك استاذى الفاضل ولكن هناك اختلاف كثير ما يحدث فى اصدارات الاوفيس وكما تعلم عند تحويل القاعدة لaccde مثلا ب2016 نسخة 32 بيت لن تعمل الا على هذه النسخة وبالتالى نلجأ لهذه الطريقة ... وهناك طريقة أفضل حيث اقوم مثلا بتحزيم البرنامج بالWinrar ثم اختيار ملف التحويل ليعمل تلقائيا بعد الفك وبالتالى فإن المشترى لن يرى النسخة الاصلية من الاساس ولكنه سيرى النسخة المحولة بعد الانتهاء

22 دقائق مضت, صالح حمادي said:

يا أخي أشرف ملفك يشتغل معي بشكل جيد

من الممكن أنك لم تضع نفس الاسم للملف مع الاسم الموجود بالكود (1)

لا استاذى الفاضل انا اعمل قاعدة جديدة واسميها 1 ثم اشغل القاعدة فيقوم بحذف القاعدة اللى باسم 1 بدون تحويلها ل Accde ثم تظهر هذه الرسالة

 

1.PNG.fd5f75efdb9a8007d4901f5de38ad24e.PNG

 

وهذا هو الكود المستخدم 

Function Amr()
Dim sourcedb, targetdb, nametargetdb As String
sourcedb = "D:\1.accdb"
targetdb = "D:\tt2.accde"
nametargetdb = "D:\1.accde"
Dim accessApplication As Access.Application
Set accessApplication = New Access.Application
With accessApplication
.SysCmd 603, sourcedb, targetdb
End With
Kill sourcedb
Name targetdb As nametargetdb
FollowHyperlink nametargetdb

End Function

 

تم تعديل بواسطه Amr Ashraf
قام بنشر (معدل)
1 دقيقه مضت, صالح حمادي said:

لقد طبقته الآن في جهازي و يعمل بشكل ممتاز

جرب احذف هذا السطر و شغل البرنامج

نفس المشكلة اخى الكريم الاختلاف الوحيد انه فى هذه الحالة لم يحذف القاعدة الاصلية ولم يحولها ايضا !!! ماهو الاسم المستخدم فى الكود عندك يعنى بدل (1) ؟؟

 

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

أنا استعملت نفس الكود الذي تستخدمه أنت و وضعت ملف بإسم 1 و لم أغير في الكود شيء

لكن الظاهر أن مشكلتك في التحويل.

هل الكود الذي وضعته في بداية المشاركة يعمل معك جيدا

أتمنى من الإخوة @jjafferr و @Shivan Rekany أنهم يجربون المرفق هل يشتغل أم لا

  • Like 1
قام بنشر
الان, صالح حمادي said:

أنا استعملت نفس الكود الذي تستخدمه أنت و وضعت ملف بإسم 1 و لم أغير في الكود شيء

لكن الظاهر أن مشكلتك في التحويل.

هل الكود الذي وضعته في بداية المشاركة يعمل معك جيدا

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

6 دقائق مضت, صالح حمادي said:

لكن الظاهر أن مشكلتك في التحويل.

تمت التجربة للكودين على 3 أجهزة اوفيس 2016 اصدار 32 والاكواد لا تقوم بالتحويل ولا اعرف السبب مع العلم انه تم تشغيله فى مجلدات موثوقة 

الرجاء من الاخوة التجربة للكود مع ذكر اصدار الاوفيس جزاكم الله خير

قام بنشر (معدل)
1 ساعه مضت, صالح حمادي said:

أتمنى من الإخوة @jjafferr و @Shivan Rekany أنهم يجربون المرفق هل يشتغل أم لا

تم التجربة وظهرت الخطأ .... لكن تم التجربة هل هناك خطأ في قاعدة بياناتي اللي اقوم بتحويله كشفت انه فيه الخطأ فقمت بعمل كومبايل للقاعدة وخلصت من الاخطاء وتم التجربة الكود من جديد 
وبيشتغل 100%

اي يعني يجب على استاذ @Amr Ashraf ان يتأكد هل سيتحول القاعدته يدويا ام لا اذا لا ان هناك خطأ في الاكاد ويجب عليه ان يعمل كومبايل للقاعدته لكي يعرف اين الخطأ وبيعمل التعديل وبعدين يجرب من جديد

 

تم تعديل بواسطه Shivan Rekany
  • Like 2
قام بنشر
منذ ساعه, Shivan Rekany said:

تم التجربة وظهرت الخطأ .... لكن تم التجربة هل هناك خطأ في قاعدة بياناتي اللي اقوم بتحويله كشفت انه فيه الخطأ فقمت بعمل كومبايل للقاعدة وخلصت من الاخطاء وتم التجربة الكود من جديد 
وبيشتغل 100%

اي يعني يجب على استاذ @Amr Ashraf ان يتأكد هل سيتحول القاعدته يدويا ام لا اذا لا ان هناك خطأ في الاكاد ويجب عليه ان يعمل كومبايل للقاعدته لكي يعرف اين الخطأ وبيعمل التعديل وبعدين يجرب من جديد

 

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

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