بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
-
Posts
1,715 -
تاريخ الانضمام
-
Days Won
5
Community Answers
-
أبو عبدالله الحلوانى's post in حفظ اكثر من تقرير مع كتابه الاسماء بشكل تلقائي was marked as the answer
تفضل هذا صنع لك خصيصا - لا تقلق مجانا الا دعوة بظهر الغيب -
جرب ووافنا بالنتائج
ExportToPDF.accdb
-
أبو عبدالله الحلوانى's post in كيفية اخذ باكب من قاعدة بيانات اكسس تلقائى عند الدخول وعند الخروج من البرنامج was marked as the answer
السلام عليكم ورحمة الله وبركاته
بالاضافة الي ما تقفضل به أخي @النجاشي
جرب هذا المرفق لعله يوافق مرادك
المرفق يقوم بي:
1- أخذ نسخة احتياطية من نفسه.
2- ومن قاعدة البيانات المرتبطه به.
جرب أن ترتبط بقاعدة بيانات مختلفة وانظر النتيجة
ولا تنسانا من دعوة بظهر الغيب
تمنياتي بالتوفيق.
TestBackup.rar
-
أبو عبدالله الحلوانى'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 وأكرر سأنتظر رد أستاذنا @أبو إبراهيم الغامدي للتعلم والاستفادة
-
أبو عبدالله الحلوانى'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 وأكرر سأنتظر رد أستاذنا @أبو إبراهيم الغامدي للتعلم والاستفادة
-
أبو عبدالله الحلوانى'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 وأكرر سأنتظر رد أستاذنا @أبو إبراهيم الغامدي للتعلم والاستفادة
-
أبو عبدالله الحلوانى's post in اين المشكلة في الكود .. مساعدة ... was marked as the answer
الحمد لله أولا وآخرا
ليس هذا كل ما تم تعديله بالكود هل لاحظت كتابة الكود داخل Trim
ولكن أين تمت الاجابة
-
أبو عبدالله الحلوانى's post in سطر الكود طويل جدا هل من المتاح جعله على اكثر من سطر was marked as the answer
للفصل بين الاسطر النصية في كود يجب وضع & + مسافة + (_ الزائدة السفلية). المسافة مهمة للغاية بين الـ ( & ) و ( _ )
-
أبو عبدالله الحلوانى'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 ليس بالأمر السهل كما كنت أتوقع - ربنا يستر علي اللي جاي 😀 🙃 -
وأشكر جميع أساتذتي الأفاضل وجزاكم الله عني خيرا
-
أبو عبدالله الحلوانى's post in طلب تعديل على موديول اعادة الربط ااجداول تلقائيا was marked as the answer
فقط أضف معلومات الاتصال بهذا الشكل
Set chkDb = OpenDatabase(Application.CurrentProject.Path & "\Btbl.accdb",,,"MS Access;PWD=0")
-
أبو عبدالله الحلوانى's post in تقسيم طباعة التقرير على عدة صفحات was marked as the answer
وعليكم السلام ورحمة الله وبركاته
وبعد بالنسبة للنقطة الأولي
شاهد هذا الرابط
وهنا كود مختصر جدا لتأديت نفس الغرض
أما بالنسبة للنقطة الثانية
فانظر هذه الروابط لعلك تجد بها ما تبغي
-
أبو عبدالله الحلوانى's post in تغير الوان البرنامج was marked as the answer
تأخرت كثيرا في الرد وأعتذر عن ذلك
هذا مثال مصغر للفكرة المطروحة بمشاركتي السابقة
أرجو أن تفيدك بشىء
تمنياتي بالتوفيق
SaveSetting.accdb
-
أبو عبدالله الحلوانى'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
-
أبو عبدالله الحلوانى's post in ارجو المساعدة في فتح التقرير was marked as the answer
جرب هذا التعديل ووفنا بالنتائج
تمت تصفية البيانات داخل مصدر التقرير بدون أكود داخل المرفق مع العلم انه يمكنك اجراء نفس العملية بواسطة كود فتح التقرير نفسه بهذه الطريقة
أذكر هذا لتعم الفائدة فحسب
DoCmd.OpenReport "reportName", acViewReport, , "[الإدارة]=" & Forms!DTS!DD " And [المجموعة]=" & Forms!DTS!MAG ومن باب النصيحة لتمام الفائدة أيضا اجعل مسميات الحقول داخل الجدول باللغة الانجليزية واضبط خاصية تسمية الحقل باللغة العربية ان أردت هذا سيسهل عليك الكثير ويجنبك الوقوع في الأخطاء عند كتابة الأكواد التي تتعامل مع حقول الجدول بشكل مباشر فيما بعد.
مع تمنياتي بالتوفيق
تجربة_(1).rar
-
أبو عبدالله الحلوانى's post in حساب اخر ثلاثة ارقام أو اقل - كسور للكيلو جرام was marked as the answer
السلام عليكم
ان كانت هذه الافتراضيات صحيحة
1- أن أول 5 أرقام من جهة اليسار للباركود هي ثابته ولن تتحرك جهة اليمين.
2- باقي الأرقام من بعد الخمسة الأولي من جهة اليسار هي عبارة عن وزن الصنف.
اذن هذا الكود سيقوم بتنفيذ ما طلبت باذن الله
Me.Text0=Val(Right([barcode],len([barcode])-5))/1000 وطبقت هذا علي مرفقكم مع تعديل كود البار كود كما جاء بمشاركتم الأولي ليظهر فائدة الكود
انظر المرفق ووافنا بالنتائج
كاشير.rar
-
أبو عبدالله الحلوانى'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 جرب هذا ووافنا بالنتائج - وان كنت قد فهمت مرادك بشكل خاطئ فأرجو مزيد من الايضاح. تمنياتي بالتوفيق
-
أبو عبدالله الحلوانى'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 ربما هذا الدالة الطويلة لن يستفيد منها أحد!!
ولكن تلك المعلومة البسيطة هامة جدا حتي لا يقع أحد في مثل ما وقعت به (أعلم أن جميعكم أساتذتي لا يخفي عليكم مثل هذا ولكن للتوثيق ولربما مر من هنا مبتدأ مثلي فتفده تلك المعلومة).
(أن الكود يسير من الأعلي الي الأسفل فمن الواجب أن ننتبه أن لا ننهي الكود قبل اتمام احتساب النتائج! كما هو موضح بالأعلي)
وجزاكم الله خيرا جميعا
-
أبو عبدالله الحلوانى's post in مساعدة بسيطة اجراء مقارنة بين تاريخين واختيار اكبرهم was marked as the answer
جزاك الله خيرا
F9 ما صنعت شئ
ولكن المشكلة حلت والحمد لله كانت القيمة بالخلية A1 قيمة نصية لم يتعرف عليها الاكسل كتاريخ القيمة كانت (31/6/2015)
جزاكم الله خيرا
-
أبو عبدالله الحلوانى's post in مشكلة بالاستعلام المتعدد الشروط بعد التحول الي sql server was marked as the answer
ومن باب ارجاع الفضل لأهله قد نبهي لهذا الخطأ هذا الرابط لأستاذنا محمد أيمن جزاه الله خيرا.
https://www.officena.net/ib/topic/79080-تطبيق-البحث-في-اكثر-من-حقل-دون-استخدام-الاستعلامات/
-
أبو عبدالله الحلوانى's post in فتح الصور على الرسام was marked as the answer
جرب هذا ووافنا بالنتائج
يفضل حفظ الصور بالـ ID الخاص بالموظف فبعض الحروف لا تضبط عند استدعائها بالكود
Photo.rar
-
أبو عبدالله الحلوانى's post in طلب تحديث برنامج تسجيل بيانات الزوار للشركة was marked as the answer
اضافة الي ما تقدم به أساتذتي
ربما مع اختلاف المدخلين للبيانات يدويا أن يكون قد حدث اختلاف في طريقة الادخال مثلا ربما كان أحدهم يفضل ادخال التاء المربوطة هاء أو الياء ياءا منقوطة بآخر الكلمات - مما يؤدي لتكرار بيانات العميل الواحد أكثر من مرة , مما سيجعل البحث عن اسم العميل به صعوبة شيئا ما- وقد واجهتنا هذه المشاكل كثيرا..
لذا كان اقتراحي أن يتم وضع مربع نص للبحث عن رقم الهوية فان كان موجودا , يتم ملئ باقي بيانات العميل تلقائيا والا فيتم التوجيه الي شاشة ادخال البيانات .
وهذا مثال بسيط علي هذه الفكرة.
SearchWithpesounCard.rar
-
أبو عبدالله الحلوانى's post in كيفية عمل استعلام تحديث من استعلام تجميع was marked as the answer
آسف علي التأخر
هنا توضيح للفكرة
قم بتشغيل الاستعلام Query1 أولا ثم قم بتشغيل الاستعلام Q_thdeeth
ولا تنسي الاطلاع علي البيانات قبل التغير لتري أثر التحديث - وكذلك أخذ نسخة احتياطية من الجداول لاعادة التجربة مرة أخري.
والآن يبقي لتمام العمل انشاء استعلام حذف لبيانات الجدول Table1 بعد الانتهاء من التحديث - وهذا سهل عليك انشائه لذي لم انشأه
ومن باب النصح هذه الاستعلامات الكثيرة ستعمل علي زيادة حجم قاعدة البيانات لذي ستكون محتاجا لاجراء ضغط واصلاح بين الحين والحين.
والآن مع المثال ولا تنسي اخبارنا بالنتائج لديك.
مثال_اوفيسنا_استعلام_تحديث_من_استعلام_تجميع.accdb
-
أبو عبدالله الحلوانى's post in اخفاء نموذج (وليس اغلاقه) عند فتح نموذج اخر ثم العودة للنموذج المخفي وأغلاق المفتوح was marked as the answer
بعد اذن استاذنا عصام
جرب هذا اذا لعله يقترب من مرادك
التنقل بين النماذج.accdb
-
أبو عبدالله الحلوانى's post in إنشاء حساب للدخول was marked as the answer
وبعدين ماتفتح مخك معاي هو انت اللي صعيدي ولا أنا وهو تم الاجابة فوق ولا تحت
يلا مش مشكلة - لعله أخطأ من شدة الفرح
جرب هذا وأخبرنا برأيك .
New Microsoft Access Database.rar
-
أبو عبدالله الحلوانى's post in تشغيل مفتاح caps lock عند فتح النموذج was marked as the answer
السلام عليكم
ضع هذا الكود عند الفتح أو التحميل
SendKeys "{CAPSLOCK}" ودمتم