اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

أبو عبدالله الحلوانى

الخبراء
  • Posts

    1,715
  • تاريخ الانضمام

  • Days Won

    5

Community Answers

  1. أبو عبدالله الحلوانى's post in حفظ اكثر من تقرير مع كتابه الاسماء بشكل تلقائي was marked as the answer   
    تفضل هذا صنع لك خصيصا - لا تقلق مجانا  الا دعوة بظهر الغيب -
    جرب ووافنا بالنتائج
    ExportToPDF.accdb
  2. أبو عبدالله الحلوانى's post in كيفية اخذ باكب من قاعدة بيانات اكسس تلقائى عند الدخول وعند الخروج من البرنامج was marked as the answer   
    السلام عليكم ورحمة الله وبركاته
    بالاضافة الي ما تقفضل به أخي @النجاشي 
    جرب هذا المرفق لعله يوافق مرادك
    المرفق يقوم بي:
    1- أخذ نسخة احتياطية من نفسه.
    2- ومن قاعدة البيانات المرتبطه به.
    جرب أن ترتبط بقاعدة بيانات مختلفة وانظر النتيجة 
    ولا تنسانا من دعوة بظهر الغيب
    تمنياتي بالتوفيق.
     
    TestBackup.rar
  3. أبو عبدالله الحلوانى's post in اضافة البيانات في أكثر من شيت في ملف اكسل was marked as the answer   
    حقيقة لم استطع التعامل مع CopyFromRecordset ظهرت أخطاء لم استطع معالجتها ولعل صاحب الموضوع قد ذكر شىء من تلك الأخطاء ببداية الموضوع. لذا قمت بجلب البيانات باستخدام For 
    من اجل ذلك سأنتظر رد أستاذنا @أبو إبراهيم الغامدي للتعلم والاستفادة
    أما عن طريقتي في حل الطلب الأستاذ @عفرنس وفقا للتوضيح الأخير. فكنت أنوي وضع هذا في بداية الكود
    If ShabaNo <= 4 Then shetNo = Val(ShabaNo * 2) Else Select Case ShabaNo Case 5 shetNo = 2 Case 6 shetNo = 4 Case 7 shetNo = 6 Case 8 shetNo = 8 End Select End If  وأكرر سأنتظر رد أستاذنا @أبو إبراهيم الغامدي للتعلم والاستفادة
  4. أبو عبدالله الحلوانى's post in اضافة البيانات في أكثر من شيت في ملف اكسل was marked as the answer   
    حقيقة لم استطع التعامل مع CopyFromRecordset ظهرت أخطاء لم استطع معالجتها ولعل صاحب الموضوع قد ذكر شىء من تلك الأخطاء ببداية الموضوع. لذا قمت بجلب البيانات باستخدام For 
    من اجل ذلك سأنتظر رد أستاذنا @أبو إبراهيم الغامدي للتعلم والاستفادة
    أما عن طريقتي في حل الطلب الأستاذ @عفرنس وفقا للتوضيح الأخير. فكنت أنوي وضع هذا في بداية الكود
    If ShabaNo <= 4 Then shetNo = Val(ShabaNo * 2) Else Select Case ShabaNo Case 5 shetNo = 2 Case 6 shetNo = 4 Case 7 shetNo = 6 Case 8 shetNo = 8 End Select End If  وأكرر سأنتظر رد أستاذنا @أبو إبراهيم الغامدي للتعلم والاستفادة
  5. أبو عبدالله الحلوانى's post in اضافة البيانات في أكثر من شيت في ملف اكسل was marked as the answer   
    حقيقة لم استطع التعامل مع CopyFromRecordset ظهرت أخطاء لم استطع معالجتها ولعل صاحب الموضوع قد ذكر شىء من تلك الأخطاء ببداية الموضوع. لذا قمت بجلب البيانات باستخدام For 
    من اجل ذلك سأنتظر رد أستاذنا @أبو إبراهيم الغامدي للتعلم والاستفادة
    أما عن طريقتي في حل الطلب الأستاذ @عفرنس وفقا للتوضيح الأخير. فكنت أنوي وضع هذا في بداية الكود
    If ShabaNo <= 4 Then shetNo = Val(ShabaNo * 2) Else Select Case ShabaNo Case 5 shetNo = 2 Case 6 shetNo = 4 Case 7 shetNo = 6 Case 8 shetNo = 8 End Select End If  وأكرر سأنتظر رد أستاذنا @أبو إبراهيم الغامدي للتعلم والاستفادة
  6. أبو عبدالله الحلوانى's post in اين المشكلة في الكود .. مساعدة ... was marked as the answer   
    الحمد لله أولا وآخرا
    ليس هذا كل ما تم تعديله بالكود هل لاحظت كتابة الكود داخل Trim 
     
    ولكن أين تمت الاجابة 
  7. أبو عبدالله الحلوانى's post in سطر الكود طويل جدا هل من المتاح جعله على اكثر من سطر was marked as the answer   
    للفصل بين الاسطر النصية في كود يجب وضع & + مسافة + (_  الزائدة السفلية).  المسافة مهمة للغاية بين الـ ( & ) و ( _ )
     
     
     
  8. أبو عبدالله الحلوانى's post in أواجه مشكلة تعارض في الكتابة رغم عدم وجود أي سبب لها was marked as the answer   
    السلام عليكم ورحمة الله وبركاته 
    الحمد لله وحده تم حل المشكلة 
    وجدت هذا الكلام 
    2 Missing primary key or timestamp
    Make sure the SQL-Server table has a primary key as well as a timestamp column.
    The timestamp column helps Access to determine if the record has been edited since it was last selected. Access does this by inspecting all fields, if no timestamp is available. Maybe this does not work well with null entries if there is no timestamp column (see 3 Null bits issue).
    The timestamp actually stores a row version number and not a time.
    Don't forget to refresh the table link in access after adding a timestamp column, otherwise Access won't see it. (Note: Microsoft's Upsizing Wizard creates timestamp columns when converting Access tables to SQL-Server tables.)
    في هذا الرابط
    https://stackoverflow.com/questions/13993301/editing-record-issues-in-access-sql-write-conflict
    وخلاصة الموضوع أنه كان يجب وضع عمود يسمي الطابع الزمني بالجدول الموجود بالسرفر 
    يبدو أن التحول الي الـ SQL server ليس بالأمر السهل كما كنت أتوقع - ربنا يستر علي اللي جاي 😀 🙃 -
    وأشكر جميع أساتذتي الأفاضل وجزاكم الله عني خيرا
  9. أبو عبدالله الحلوانى's post in طلب تعديل على موديول اعادة الربط ااجداول تلقائيا was marked as the answer   
    فقط أضف معلومات الاتصال بهذا الشكل
    Set chkDb = OpenDatabase(Application.CurrentProject.Path & "\Btbl.accdb",,,"MS Access;PWD=0")  
  10. أبو عبدالله الحلوانى's post in تقسيم طباعة التقرير على عدة صفحات was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته
    وبعد بالنسبة للنقطة الأولي 
    شاهد هذا الرابط
    وهنا كود مختصر جدا لتأديت نفس الغرض
     
    أما بالنسبة للنقطة الثانية 
    فانظر هذه الروابط لعلك تجد بها ما تبغي 
     
     
  11. أبو عبدالله الحلوانى's post in تغير الوان البرنامج was marked as the answer   
    تأخرت كثيرا في الرد وأعتذر عن ذلك 
    هذا مثال مصغر للفكرة المطروحة بمشاركتي السابقة
    أرجو أن تفيدك بشىء
    تمنياتي بالتوفيق 
    SaveSetting.accdb
  12. أبو عبدالله الحلوانى's post in تعدد المستخدمين لقاعدة بيانات على الشبكة was marked as the answer   
    آسف لتأخري بالرد نظرا لانشغالي 
    اطلعت علي مرفقك ماشاء الله تبارك الله تصميم جميل وأفكار جميلة 
    ولكن هذه الصور الكثيرة ستعمل علي زيادة حجم البرنامج بشكل مبالغ فيه مما يسبب مشكلات بالغة علي المدي الطويل لذي انصحك بأن تجعل هذه الصور مرتبطة وليست منضمة (Linked  not Embedded) وأن تجعل الصور بمجلد البرنامج هذا سيعمل علي تقليل حجم قاعدة برنامجك وتسريع تحميله. واليك هذا الرابط لتوضيح الفكرة أكثر.
    قمت بتعديل خاصية اغلاق الحقل المعدل بمرفقك (بعد أن قمت بعمل ضغط واصلاح له وستري الفارق في الحجم بنفسك) 
    أما عن النقطة 4 بمشاركتي السابقة فلم أجد وقتا كافيا لتنفيذها علي مرفقك ولكن سأضع لك كود اضافة بيانات أي نموذج مهما كان عدد عناصر التحكم به الي أي جدول بشرط ان تكون أسماء الحقول بالجدول مساوية لاسماء عناصر التحكم علي النموذج حتي يستطيع الكود أن يرسل البيان الصحيح بالمكان الصحيح بالجدول سأترك لك العمل علي هذه النقطة وهذا هو الكود ولا تنسي الشرط...
    Option Compare Database Dim m As Recordset Dim C As Control Sub Add_New(Frm As Form, tbl As String) On Error Resume Next Set m = CurrentDb.OpenRecordset(tbl, dbOpenDynaset, dbSeeChanges) m.AddNew For Each C In Frm.Controls If C.ControlType = acTextBox Or C.ControlType = acComboBox Then m(C.Name) = C.Value End If Next m.Update m.Close Set m = Nothing msgbox "Done!" كل ما عليك هو وضع هذا الكود في موديول ثم تستدعيه من أي نموذج تريده هكذا
    Call Add_New(me,"your tabel name") تمنياتي بالتوفيق
    هذا مرفقك بعد التعديل (والضغط)
    CashierV2.accdb
  13. أبو عبدالله الحلوانى's post in ارجو المساعدة في فتح التقرير was marked as the answer   
    جرب هذا التعديل ووفنا بالنتائج
    تمت تصفية البيانات داخل مصدر التقرير بدون أكود داخل المرفق مع العلم انه يمكنك اجراء نفس العملية بواسطة كود فتح التقرير نفسه بهذه الطريقة 
    أذكر هذا لتعم الفائدة فحسب 
    DoCmd.OpenReport "reportName", acViewReport, , "[الإدارة]=" & Forms!DTS!DD " And [المجموعة]=" & Forms!DTS!MAG ومن باب النصيحة لتمام الفائدة أيضا اجعل مسميات الحقول داخل الجدول باللغة الانجليزية واضبط خاصية تسمية الحقل باللغة العربية ان أردت هذا سيسهل عليك الكثير ويجنبك الوقوع في الأخطاء عند كتابة الأكواد التي تتعامل مع حقول الجدول بشكل مباشر فيما بعد.
    مع تمنياتي بالتوفيق 
     
    تجربة_(1).rar
  14. أبو عبدالله الحلوانى's post in حساب اخر ثلاثة ارقام أو اقل - كسور للكيلو جرام was marked as the answer   
    السلام عليكم 
    ان كانت هذه الافتراضيات صحيحة
    1- أن أول 5 أرقام من جهة اليسار للباركود هي ثابته ولن تتحرك جهة اليمين.
    2- باقي الأرقام من بعد الخمسة الأولي من جهة اليسار هي عبارة عن وزن الصنف.
    اذن هذا الكود سيقوم بتنفيذ ما طلبت باذن الله 
    Me.Text0=Val(Right([barcode],len([barcode])-5))/1000  وطبقت هذا علي مرفقكم مع تعديل كود البار كود كما جاء بمشاركتم الأولي ليظهر فائدة الكود
    انظر المرفق ووافنا بالنتائج
     
    كاشير.rar
  15. أبو عبدالله الحلوانى's post in كود استيراد صورتين من مجلدين was marked as the answer   
    وعليكم السلام ورحمة الله وبركاته
    أعتقد أن الأمر سهل كل ما تحتاجه هو تكرار الكود وتعديل ما يلزم من أسماء عناصر التحكم مثل هذا
    Dim Psh As String, psh2 As String On Error GoTo Err Psh = CurrentProject.Path & "/" & "الصور" & "/" & [ID] & ".jpg" Psh2 = CurrentProject.Path & "/" & "1الصور" & "/" & [ID] & ".jpg" pic.Picture = Psh pic1.Picture = Psh2 Exit Sub Err: pic.Picture = "" pic1.Picture = "" Exit Sub جرب هذا ووافنا بالنتائج - وان كنت قد فهمت مرادك بشكل خاطئ فأرجو مزيد من الايضاح. تمنياتي بالتوفيق
     
  16. أبو عبدالله الحلوانى's post in قمت بكتابة هذا الكود لاحتساب بعض القيم اعتمادا علي الفترة الزمنية ولكن لم يعمل was marked as the answer   
    السلام عليكم ورحمة الله وبركاته
    الحمد لله تم اكتشاف الخطأ بالكود 
    هو عند الخروج من الدوار فور قبل نتيجة الدالة الصورة توضح المقال
    الخطأ هنا
    If AutoAmount <= (Amount + 100) And AutoAmount >= (Amount - 100) Then Exit For <<====================== here a wrong tstAmont = "AmountCalculit: " & AutoAmount & vbCrLf & _ "Until date: " & IIf(stopDat > 0, stopDat, EndDate) Else كان يجب أن يكتب هكذا
    If AutoAmount <= (Amount + 100) And AutoAmount >= (Amount - 100) Then tstAmont = "AmountCalculit: " & AutoAmount & vbCrLf & _ "Until date: " & IIf(stopDat > 0, stopDat, EndDate) Exit For <<=============== must write here after calculate function Else ربما هذا الدالة الطويلة لن يستفيد منها أحد!!
    ولكن تلك المعلومة البسيطة هامة جدا حتي لا يقع أحد في مثل ما وقعت به (أعلم أن جميعكم أساتذتي لا يخفي عليكم مثل هذا ولكن للتوثيق ولربما مر من هنا مبتدأ مثلي فتفده تلك المعلومة).
    (أن الكود يسير من الأعلي الي الأسفل فمن الواجب أن ننتبه أن لا ننهي الكود قبل اتمام احتساب النتائج! كما هو موضح بالأعلي)
    وجزاكم الله خيرا جميعا 
  17. أبو عبدالله الحلوانى's post in مساعدة بسيطة اجراء مقارنة بين تاريخين واختيار اكبرهم was marked as the answer   
    جزاك الله خيرا
    F9 ما صنعت شئ
    ولكن المشكلة حلت والحمد لله كانت القيمة بالخلية A1 قيمة نصية لم يتعرف عليها الاكسل كتاريخ القيمة كانت (31/6/2015)
    جزاكم الله خيرا 
     
  18. أبو عبدالله الحلوانى's post in مشكلة بالاستعلام المتعدد الشروط بعد التحول الي sql server was marked as the answer   
    ومن باب ارجاع الفضل لأهله قد نبهي لهذا الخطأ هذا الرابط  لأستاذنا محمد أيمن جزاه الله خيرا.
    https://www.officena.net/ib/topic/79080-تطبيق-البحث-في-اكثر-من-حقل-دون-استخدام-الاستعلامات/
     
     
  19. أبو عبدالله الحلوانى's post in فتح الصور على الرسام was marked as the answer   
    جرب هذا ووافنا بالنتائج
    يفضل حفظ الصور بالـ ID الخاص بالموظف فبعض الحروف لا تضبط عند استدعائها بالكود
    Photo.rar
  20. أبو عبدالله الحلوانى's post in طلب تحديث برنامج تسجيل بيانات الزوار للشركة was marked as the answer   
    اضافة الي ما تقدم به أساتذتي
    ربما مع اختلاف المدخلين للبيانات يدويا أن يكون قد حدث اختلاف في طريقة الادخال مثلا ربما كان أحدهم يفضل ادخال التاء المربوطة هاء أو الياء ياءا منقوطة بآخر الكلمات -  مما يؤدي لتكرار بيانات العميل الواحد أكثر من مرة , مما سيجعل البحث عن اسم العميل به صعوبة شيئا ما- وقد واجهتنا هذه المشاكل كثيرا..
    لذا كان اقتراحي أن يتم وضع مربع نص للبحث عن رقم الهوية فان كان موجودا , يتم ملئ باقي بيانات العميل تلقائيا والا فيتم التوجيه الي شاشة ادخال البيانات .
    وهذا مثال بسيط علي هذه الفكرة.
     
    SearchWithpesounCard.rar
  21. أبو عبدالله الحلوانى's post in كيفية عمل استعلام تحديث من استعلام تجميع was marked as the answer   
    آسف علي التأخر 
    هنا توضيح للفكرة
    قم بتشغيل الاستعلام Query1 أولا ثم قم بتشغيل الاستعلام Q_thdeeth 
    ولا تنسي الاطلاع علي البيانات قبل التغير لتري أثر التحديث - وكذلك أخذ نسخة احتياطية من الجداول لاعادة التجربة مرة أخري.
    والآن يبقي لتمام العمل انشاء استعلام حذف لبيانات الجدول Table1 بعد الانتهاء من التحديث - وهذا سهل عليك انشائه لذي لم انشأه 
    ومن باب النصح هذه الاستعلامات الكثيرة ستعمل علي زيادة حجم قاعدة البيانات لذي ستكون محتاجا لاجراء ضغط واصلاح بين الحين والحين.
    والآن مع المثال ولا تنسي اخبارنا بالنتائج لديك.
     
     
    مثال_اوفيسنا_استعلام_تحديث_من_استعلام_تجميع.accdb
  22. أبو عبدالله الحلوانى's post in اخفاء نموذج (وليس اغلاقه) عند فتح نموذج اخر ثم العودة للنموذج المخفي وأغلاق المفتوح was marked as the answer   
    بعد اذن استاذنا عصام
    جرب هذا اذا لعله يقترب من مرادك
     
    التنقل بين النماذج.accdb
  23. أبو عبدالله الحلوانى's post in تذكير was marked as the answer   
    وعليكم السلام
    جرب هذا لعله يقترب من مرادك
     
    تبيه.accdb
  24. أبو عبدالله الحلوانى's post in إنشاء حساب للدخول was marked as the answer   
    وبعدين ماتفتح مخك معاي هو انت اللي صعيدي ولا أنا  وهو تم الاجابة فوق ولا تحت  
    يلا مش مشكلة - لعله أخطأ من شدة الفرح 
    جرب هذا وأخبرنا برأيك .

    New Microsoft Access Database.rar
  25. أبو عبدالله الحلوانى's post in تشغيل مفتاح caps lock عند فتح النموذج was marked as the answer   
    السلام عليكم 
    ضع هذا الكود عند الفتح أو التحميل
    SendKeys "{CAPSLOCK}" ودمتم
     
×
×
  • اضف...

Important Information