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

jjafferr

أوفيسنا
  • Posts

    10010
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    408

كل منشورات العضو jjafferr

  1. السلام عليكم ورحمة الله وبركاته كنت قد وضعت هذا المثال في منتدى الفريق العربي للبرمجة ، وأخي ابو الآ ما قصر وعمل نسخة منه الى هذا المنتدى (انا لم اكن من روّاد هذا المنتدى حينئذٍ) على هذا الرابط: http://www.officena.net/ib/topic/58001-منقول-هدية-برنامج-تصدير-بيانات-من-جداولاستعلامات-اكسس-الى-اكسل/ والآن ، وبعد عمل مجموعة تعديلات عليه واصبح في نسخته الخامسة ، واهمها ان البرنامج اصبح يعمل على 32بت و 64بت ، رأيت ان اضع البرنامج بين يديكم طريقة العمل هي كما في الرابط السابق (ولكن للأسف لا يمكن رؤية الصور التوضيحية هناك) ، فعليه ، سأقوم بعمل نسخة منه هنا مع الصور التوضيحية: رأيت الكثير من الاسئلة حول تصدير بيانات الاكسس الى الاكسل ، وكل سؤال يختلف عن غيره بطريقة او اخرى ، فحبيت ان اضع بين يديكم برنامج اشتغلت عليه ، واتمنى من الله سبحانه وتعالى انه يقدر يخدم الكل البرنامج سهل الاستعمال ، فكل المطلوب في الواجهة ، ولا تحتاج الذهاب للكود اولا: الواجهة: 1. تختار من مربع السرد ، جدول او استعلام ، 2. على اساس الاختيار في رقم 1 ، ستظهر لك قائمة باسماء الجداول او الاستعلامات في برنامجك ، 3. اسم ملف الاكسل المراد حفظه به ، ومجلد التخزين ، فتلقائيا يكون في نفس مجلد البرنامج ، 4. هنا تكتب اسم صفحة الاكسل التي تريدها (انظر الصورة في الاسفل) **1** تستطيع ان تصدر اي عدد من الصفحات الى اكسس (طبعا التصدير يكون باستعمال البرنامج عدة مرات ، في كل مرة تستخدم اسم صفحة جديدة) ، **2** تستطيع ان تصدر بيانات جديدة الى نفس الصفحة في اكسل (طبعا التصدير يكون باستعمال البرنامج عدة مرات ، في كل مرة تستخدم *الادخال من خانة* اسفل الخانات الموجودة في الاكسل) ، 5. تستطيع بدء تصدير البيانات الى اي خانة في اكسل مثل A2 او C5 او اي خانة اخرى ، **3** تستطيع ان تصدر بيانات جديدة الى نفس الصفحة في اكسل (طبعا التصدير يكون باستعمال البرنامج عدة مرات ، في كل مرة تستخدم *الادخال من خانة* اسفل الخانات الموجودة في الاكسل) ، 6. تستطيع ان تحفظ ملف الاكسل بالصيغ التاليه: "xls" او "xlsx" او "xlsm" او "xlsb" او "csv" او "txt" ، والصيغتين الاوليتين هما الاهم ، والصيغتين الاخيرتين بهم قيود معينة ، 7. تستطيع ان تختار المجلد الذي تريده ، مع كتابة اسم الملف المناسب لك (انظر الرقم 3 اعلاه) ، 8. تستطيع تصدير البيانات مع اسماء الحقول (في الاكسس) ، وتستطيع تصدير البيانات مع عناوين/مسميات الحقول (في الاكسس) ، نلاحظ اعلاه ، بان الجدول elemnts لا يحتوي على عناوين/مسميات الحقول بالعربي ، بينما الجدول elemnts2 يحتوي عليها ، وتستطيع تصدير البيانات فقط بدون اسماء الحقول ، 9. تستطيع ان تصدر البيانات الى ملف اكسل فيه بيانات سابقة ، وهنا تستطيع الاستفادة من الارقام 4 و 5 اعلاه ، او ان تحذف ملف الاكسل الموجود حاليا بنفس الاسم ، وتبدأ تصدير ملف جديد ، 10. بعد تصدير البيانات الى اكسل ، هل تريد إحتواء وتوسيع كل الاعمدة فيه ، حتى ترى كل البيانات بدون الحاجة الى توسيع كل عمود على حدة ، او لا تريد توسيع الاعمدة. 11. الزر الذي يقوم بعملية تصدير البيانات الى اكسل ، حسب الاختيارات اعلاه ، مع ملاحظة: يجب تعبئة الحقول داخل المربعات الحمراء ، اما بقية الحقول فإختيارية ، 12و 13. لجعل هذا البرنامج يعمل على اي من برامجكم الحاليه ، يجب تصدير النموذج frm_Export_to_Excel و الوحدة النمطية fFolder_Dialog اليها. طبعا هناك أفضلية تصدير البيانات من الاستعلام ، حيث تستطيع ان تتحطم بالبيانات المطلوب تصديرها. ملاحظات؟ اخطاء/عطل؟ إضافات؟ انا في الخدمة ، قدر المستطاع جعفر 7.Export_to_Excel_05.1.mdb.zip
  2. . انا اعتذر منك أستاذ علي على عدم الرد ، فلم الحظه الا قبل قليل الكود يجب ان يكون في وحدة نمطية مستقلة خارج النموذج. . شكرا جزيلا على التأكيد جعفر
  3. . انا الذي سافتح موضوع مستقل ، ولكن لو سمحت ترفق برنامجك هنا ، حتى استخدمه كمثال مع برنامج الاخ عادل جعفر
  4. السلام عليكم من المعروف ان اكسس لديه مشكلة في تصدير التقرير الى اكسل بالتنسيق والتخطيط ، لذلك وجب استخدام طرق اخرى لحل هذه الموضوع ، وانا ان شاء الله سأقوم بوضع مثال لهذه العملية ، ولكنها لن تكون بسطر او اثنين جعفر
  5. السلام عليكم ورحمة الله وبركاته هذا الرابط يحتوي على الكثير من الدوال والتي تم تضبيطها للعمل على الاكسس 32بت و 64بت: http://www.jkp-ads.com/articles/apideclarations.asp فقط ابحث عن الدالة ، واعمل نسخ/لصق للكود وهذا رابط آخر فقط لدوال 64بت (المعدّلة من 32بت): http://www.utteraccess.com/wiki/index.php/Category:API جعفر
  6. وعليكم السلام تفضل ، مع الشرح . . جعفر 269.مطلوب دمج عدة اعمدة فى عمود.mdb.zip
  7. وعليكم السلام أخي أبومصطفى المنتدى لا يسمح بأكثر من سؤال في موضوع واحد ، فرجاء فتح موضوع جديد ، وان شاء الله نتساعد في مساعدتك جعفر
  8. طبعا الافضل والاصح انك تدمج جميع الجداول في جدول واحد ، وتفرق بين السجلات بحقل "رقم الجدول" مثلا جعفر
  9. تفضل جعفر 260.الشبكة الإستدلالية للمرتبات.accdb.zip
  10. هدئ اعصابك علينا أخوي أبومصطفى ، أحاول اساعدك بأسرع ما اقدر ، بس صبرك علي شوي 1. عندما تستخدم الدالة NZ ، فيجب ان تخبر البرنامج مالذي تريد الدالة ان تستعمل بدل NULL ، لذا ، واذا اردت ان تستعمل صفر بدل Null ، فلابد ان تكمل الدالة ، لتكون: xx=NZ(Myfield,0) 2. قيمة curbal_dr في الجدول Double وهو الصحيح (او يمكنك استخدام Long Integer) ، لأن ارقام curbal_dr كبيرة: . فاصلحت قيمة curbaldr في الجدول Tcustomer كذلك ليصبح Double : . وفي الكود ، انت اعطيت قيمة curbal_dr الى td ، ولكنك جعلت td Integer ، وهو غير مطابق للجدول ، وهنا كان الخطأ: جعفر 265.copy counter.accdb.zip
  11. الله يطول في عمرك أخوي ناصر ، كيف تريده ان يعمل؟؟ يعني يعطيك درجات اي صنف؟ للحصول على اي معلومة من جدولك ، فانت بحاجة الى معطيات اثنين ، صنف ودرجات ، فاذا الغينا الصنف ، فالدرجات تكون لأي صنف؟؟ إلا اذا اردت ان تدمج الصنف والدرجات في الحقل cmb_daraja ، فهل هذا قصدك؟ جعفر
  12. أخي ناصر طلبك غير واضح ، رجاء تفصّل اكثر ، واخبرني كيف طريقة العمل اللي تريدها لوسمحت جعفر
  13. وعليكم السلام أخي ناصر لا تستطيع ان تستعمل cmb_daraja بدون cmb_Sinf ، فيجب اختيار الصنف عن طريق cmb_Sinf ، وبعدها تستطيع ان تختار الدرجة التي تريدها عن طريق cmb_daraja. جعفر
  14. تفضل بنفس الطريقة في هذا الرابط http://www.officena.net/ib/topic/64815-جعل-حقل-الرصيد-فى-التقرير-يساوى-حقل-الرصيد-فى-نموذج-التقرير-من-حيث-الفرز-تنازليا-تصاعديا-وحذف-الصفر/?do=findComment&comment=421960 جعفر 257.1.مشكلة الطباعه واخراج التقارير1.accdb.zip
  15. وعليكم السلام لوسمحت تجرب المرفق ، واذا الرسالة الخطأ لا تزال موجودة ، رجاء عدل في بيانات القاعدة واخبرني ماذا ادخل حتى اوصل للخطأ ، انا ادخلت البيانات ، ثم اخبرني البرنامج انه لا يوجد طحين واقفل علي النوذج ، فرجاء تضبيط البيانات وارفاقه (اذا لم يعمل) جعفر 265.copy counter.accdb.zip
  16. تفضل التحويل Fail = 0 If [eslam] < 50 Then Fail = 1 Else Fail = 0 End If If [arab] < 50 Then Fail = Fail + 1 Else Fail = Fail + 0 End If If [engl] < 50 Then Fail = Fail + 1 Else Fail = Fail + 0 End If If [comp] < 50 Then Fail = Fail + 1 Else Fail = Fail + 0 End If If [Math] < 50 Then Fail = Fail + 1 Else Fail = Fail + 0 End If جعفر
  17. تفضل والكود اللي يضيف هو: Private Sub cmb_List_AfterUpdate() If Len(Me.Add_List & "") = 0 Then Me.Add_List = Me.cmb_List Else Me.Add_List = Me.Add_List & vbCrLf & Me.cmb_List End If End Sub جعفر 263.EXA.accdb.zip
  18. وعليكم السلام ارفق الجزء من برنامجك اللي فيه المشكلة لوسمحت ، واخبرنا وين تحصل المشكلة جعفر
  19. تفضل والكود: Function check_both_combos() 'No work without Sinf If Len(Me.cmb_sinf & "") = 0 Then MsgBox "Please select a Sinf" Me.cmb_sinf.SetFocus Exit Function End If If Len(Me.cmb_daraja & "") = 0 Then 'Only Sinf is selected Me.Sinf_Est = DLookup("[rakm istid]", "khibra", "[sinf]=" & Me.cmb_sinf) Me.Daraja_Est = "" Else 'both Sinf and Daraja are selected Me.Sinf_Est = DLookup("[rakm istid]", "khibra", "[sinf]=" & Me.cmb_sinf) Me.Daraja_Est = DLookup("[istidlal]", "khibra", "[sinf]=" & Me.cmb_sinf & " And [daraja]=" & Me.cmb_daraja) End If End Function Private Sub cmb_daraja_AfterUpdate() Call check_both_combos End Sub Private Sub cmb_sinf_AfterUpdate() Call check_both_combos End Sub Private Sub cmb_sinf_DblClick(Cancel As Integer) Me.cmb_sinf = "" Call check_both_combos End Sub Private Sub cmb_daraja_DblClick(Cancel As Integer) Me.cmb_daraja = "" Call check_both_combos End Sub جعفر 260.الشبكة الإستدلالية للمرتبات.accdb.zip
  20. وامثلة اخرى على استعمال الوحدة النمطية ومناداتها من الاستعلام: http://www.officena.net/ib/topic/64880-كيفية-جمع-قيمه-اكثر-من-حقل-ب-استعلام/?do=findComment&comment=422306 و http://www.officena.net/ib/topic/64683-خلل-في-تقريب-حقل-محسوب-في-استعلام/?do=findComment&comment=421364 جعفر
×
×
  • اضف...

Important Information