-
Posts
1,897 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
67
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
مشاركات المكتوبه بواسطه Foksh
-
-
امممم
دي آخر إجابة ليك ؟؟؟؟؟؟ 😎
يعني لو اتنقل لمربع نص تاني واستخدم Alt+F11 مش هيفتح محرر الأكواد ؟؟؟ 😉
ولا انت فكرني يا حج إني مخدتش بالي ان الحدث في الكومبوبوكس بس مش في حدث النموذج
اروح انا فين بس
-
16 دقائق مضت, hamadbin3ysh said:
لايظهر هنا المهري اذا كان البديل هو في التاريخ الاحدث
هل ستتم المقارنة بناءً على التاريخ اليوم ، أم ماذا ؟؟؟
-
10 دقائق مضت, ابو جودي said:
الشغل و والدتى
بالنسبة لوالدتك ربنا يحفظها ويديها الصحة وتفضل منورة العيلة ..
بالنسبة للشغل فمعذور ومش ملاحقك لحتى تفضى ، ساعتها هنجري ورا بعض
-
4 دقائق مضت, ابو جودي said:
تذاكر
زاكر
- 1
-
أخي الكريم @nssj ، بداية دعني أوضح لك نقاط مهمة في الدوال التي تعمد على البحث داخل سجلات عن قيم غير ثابتو ولا تتبع اسلوب محدد في موضعها ، فإنه مع كثيرة السجلات والبيانات في الجداول مستقبلاً ستأخذ وقتاً أوطول كلما زادت كميوة الداتا في الجدول المستهدف للبحث فيه . وهذا أمر طبيعي ، وسأحاول جاهداً توظيف الكود ليكون سلساً وسهلاً في آلية عمله .
ثانياً ، اعذرني لأني أحيانا لا أدقق في النتائج بشكل ممعن كصاحب الموضوع
على العموم ، جرب هذا التعديل البسيط لجعل الكود بعتمد البحث عن الرقم بطريقتين:-
الأولى حيث يتبع الرقم مباشرة اسم الكتاب، والثانية حيث يكون الرقم موجودًا داخل النص دون الالتزام بموضع محدد ، في الكود التالي ، وأخبرني بالنتيجة سريعاً
الكود :
Dim db As DAO.Database Dim rsBooks As DAO.Recordset Dim rsTab As DAO.Recordset Dim sql As String Dim bookNumber As String Dim found As Boolean Set db = CurrentDb() Set rsBooks = db.OpenRecordset("BOOKS") Do While Not rsBooks.EOF bookNumber = rsBooks!B_Hno found = False sql = "SELECT * FROM TAB WHERE NASS LIKE '" & rsBooks!bookName & " " & bookNumber & "%'" Set rsTab = db.OpenRecordset(sql) If Not rsTab.EOF Then rsTab.MoveFirst Do While Not rsTab.EOF If InStr(rsTab!NASS, bookNumber) = Len(rsTab!bookName) + 2 Then rsBooks.Edit rsBooks!MNO = rsTab!MNO rsBooks.Update found = True Exit Do End If rsTab.MoveNext Loop End If If Not found Then sql = "SELECT * FROM TAB WHERE InStr(NASS, '" & bookNumber & "') > 0" Set rsTab = db.OpenRecordset(sql) If Not rsTab.EOF Then rsTab.MoveFirst Do While Not rsTab.EOF If InStr(rsTab!NASS, bookNumber) > 0 Then rsBooks.Edit rsBooks!MNO = rsTab!MNO rsBooks.Update found = True Exit Do End If rsTab.MoveNext Loop End If End If rsTab.Close Set rsTab = Nothing rsBooks.MoveNext Loop rsBooks.Close Set rsBooks = Nothing Set db = Nothing
المرفق بعد التعديل :-
- 1
-
2 ساعات مضت, qathi said:
انتظر ابدعاتك استاذنا الغالي وياريت اعرف اسمك الاول حتى اناديك كما تعودنا
حالا اخي الكريم ..
أخوك فادي من الأردن
تفضل أخي @qathi ، جرب هذه الفكرة التي تم فيها تعديل بسيط لإظهار معالج السكانر في حال وجوده :-
Dim imgFileName As String Dim imgPath As String Dim WIA As Object Dim scanner As Object Dim imgFile As Object Dim MyPath As String imgPath = CurrentProject.Path & "\Data\JPG\" imgFileName = imgPath & Me.ID & ".jpg" If Dir(imgPath, vbDirectory) = "" Then MkDir imgPath End If If Dir(imgFileName) <> "" Then If MsgBox("الصورة موجودة مسبقاً. هل ترغب في استبدالها؟", vbQuestion + vbYesNo, "تأكيد الاستبدال") = vbYes Then On Error Resume Next Kill imgFileName On Error GoTo 0 Else imgFileName = imgPath & Me.ID & "_new.jpg" End If End If Set WIA = CreateObject("WIA.CommonDialog") On Error Resume Next Set scanner = WIA.ShowSelectDevice() On Error GoTo 0 If Not scanner Is Nothing Then On Error Resume Next Set imgFile = WIA.ShowAcquireImage() On Error GoTo 0 If Not imgFile Is Nothing Then On Error Resume Next imgFile.SaveFile imgFileName On Error GoTo 0 Me.Pic_Path.Requery Me.Pic_Path = imgFileName Else MsgBox "فشل في الحصول على الصورة من الماسح الضوئي!", vbExclamation, "خطأ" End If Else MsgBox "يرجى التأكد من توصيل الماسح الضوئي وتشغيله.", vbExclamation, "تنبيه" End If
وهذا الموفق
-
تفضل أخي @خالد الماجد 2 ، رغم أن المنتدى مليء بهذه المواضيع ، ولكن بما أنك عضو جديد فأهلاً وسهلاً بك معا في عالمنا الصغير المتواضع
في المرفق ستجد طريقتين ، في المديول الأول Hide&Show يتم استدعاء الالة في أول نموذج يعمل في المشروع بالجملة التالية HideAccess لإخفاء واجهة آكسيس ، وأيضاً على العكس تستطيع إظهار آكسيس بالجملة التالية ShowAccess .
وفي المديول الثاني Hide_Access هناك أكثر من طريقة للعمل على هذا المديول ، فمثلاً :-
لإخفاء واجهة آكسيس : fSetAccessWindow(SW_HIDE)
لإظهار واجهة آكسيس : fSetAccessWindow(SW_SHOWNORMAL)
لإظهار واجهة آكسيس بوضع التصغير : fSetAccessWindow(SW_SHOWMINIMIZED)
لإظهار واجهة آكسيس بوضع ملئ الشاشة : fSetAccessWindow(SW_SHOWMAXIMIZED)
- 1
-
3 دقائق مضت, ابو جودي said:
ولكن هل تسمح بالمراجعة والتعديلات على الاكواد
ولوو ،، دا يسعدني يا باشا
بس ما تتكاش أوي يعني
- 1
-
2 ساعات مضت, ابو جودي said:
تم الان اضافة المرفق النهائى الى رأس الموضوع
-
استناداً لفكرة أخي @Abo-Abd Allah ، تم التعديل بشكل بسيط على الكود بحيث يكون البحث داخل النص عن رقم الكتاب وليس ملزماً بموقع الرقم ، أرجو التحقق من النتائج أخي @nssj من الكود التالي :-
Function UpdateBooksWithMNO() Dim db As DAO.Database Dim rsBooks As DAO.Recordset Dim rsTab As DAO.Recordset Dim sql As String Dim bookNumber As String Dim found As Boolean Set db = CurrentDb() Set rsBooks = db.OpenRecordset("BOOKS") Do While Not rsBooks.EOF bookNumber = rsBooks!B_Hno found = False sql = "SELECT * FROM TAB WHERE InStr(NASS, '" & bookNumber & "') > 0" Set rsTab = db.OpenRecordset(sql) If Not rsTab.EOF Then rsTab.MoveFirst Do While Not rsTab.EOF If InStr(rsTab!NASS, bookNumber) > 0 Then rsBooks.Edit rsBooks!MNO = rsTab!MNO rsBooks.Update found = True Exit Do End If rsTab.MoveNext Loop End If rsTab.Close Set rsTab = Nothing rsBooks.MoveNext Loop rsBooks.Close Set rsBooks = Nothing Set db = Nothing End Function
- 2
-
أخي الكريم ، عدة نقاط أرجو توضيحها لأني في البداية قرأت الموضوع بشكل سريع ( كنت في طريقي للعمل ) ، الآن كالتالي :-
لنفترض أن لديك نموذج يحتوي مربع نص لاستخدامه للبحث ( على سبيل المثال ) وتريد كتابة البحث داخل الحقل NASS في الجدول TAB ( صحيح ) عن قيم عشوائية يتم كتابتها بشكل يدوي وليس قيم محددة ( صحيح ؟ ) . يعني مثلاُ النتيجة التي تريدها عند البحث عن " فوائد تمام (756) " القيمة مأخوذة من أحي بيانات سجل في الجدول TAB من الحقل NASS ، وعليه فأن النتيجة التي تريد عرضها في النموذج الفرعي للنتئج ماذا ستكون ؟؟؟؟؟؟؟؟لا بأس في شرحك إلا أن الأمور قد تتداخل في بعضها
-
تأكد من تفعيل الماكرو في ( مركز الوثوق > ضبط اعدادات الماكرو ) في جهاز العميل
-
7 دقائق مضت, Ahmedbakheet said:
تمام هو بيبحث فى المسار لكن احيانا البحث عربى و احيانا انجليزى وعند ايجاد النتيجه المطلوبه بالنجليزى يعطى الرساله بالصوره
7 دقائق مضت, Ahmedbakheet said:أحياناً .. دي بتكون مشكلة في الأوفيس ، لأني جربت البحث بالعربي وبالانجليزي على أكثر من مكان ، وما ظهرش مشكلة عندي
انا بستعمل أوفيس 2016 نواة 64 بت -
8 دقائق مضت, Ahmedbakheet said:
انا تعبت حضرتك معايا واخر طلب بجانب الصوره ان البحث يبقى بالعربى والانجليزى واسف على الطلبات الكتير
إزاي ممكن توضح ؟؟؟لأن نتيجة البحث بتكون حسب اسماء الملفات بتاعتك ، بص هنا
-
57 دقائق مضت, 2saad said:
ارجو الاهتمام بالموضوع
لا تبخل على نفسك في الشرح ، ايه يعني النوع !!!!!!!! وايه يعني تجميع اللي تقصدها !!!!!!!
اعتذر عن المشاركة لتكرار التنبيه بضرورة تفصيل المطلوب وتوضيحه
- 2
-
16 دقائق مضت, ابو جودي said:
يلا ارفع وهات بسرعه
انت بطئ كده ليه
تفضل ، كنت لسه ما وصلتش الشغل هههههههه
-
3 دقائق مضت, ابو جودي said:
- انت بتستعماني يا هرم لا وبتقول لى صديقى كمان
النسخة الأخيرة Salawat 2024.accde
والرابط ده بتاع الصوت يا عسل
اسأل الله تعالى الرحمة والمغفرة لكم ولوالديكم ولأبى وأمى ولكل المسلمين
طبعا انا بهزر معاك يا عسل بلاش شغل التلت ورقات وهات المرفق المفتوح بالتى هى احسن
لا بجد والله انا بعتذر ، يبدو ان المشكلة في سيرفر الميديا فاير ، هرفع الملف تاني وارجو استبدال الرابط في المشاركة 😬
- 1
-
12 ساعات مضت, nssj said:
الإخوة الكرام .. السلام عليكم ورحمة الله وبركاته
عندي جدول (BOOKS) فيه أحاديث كلها موجودة في الجدول الرئيسي (TAB)
وأريد معرفة أماكنها في الجدول الرئيسي وربطها به عبر المفتاح الأساسي (MNO)
وأريد دالة ذكية تسهل هذه المهمة إن أمكن
والجيد في الأمر أنه ليس المطلوب هو البحث التقليدي: اختيار كلمة أو أكثر من الحديث في الجدول (BOOKS) والبحث عنها في الجدول الرئيسي (TAB)
الأمر بحمد الله أسهل .. على الأقل في تصوري
المطلوب من الدالة أن تبحث عن رقم معين بعد نص معين
* مثلا: في هذا الحديث من جدول (BOOKS) :
المطلوب من الدالة أن تبحث في حقل (NASS) من الجدول الرئيسي (TAB) عن الحديث الذي فيه اسم الكتاب "مصنفات الحمامي" يليه الرقم (116)، واسم الكتاب من حقل (BookName)، والرقم من حقل (B_Hno)
والحديث المطلوب هو في الجدول الرئيسي (TAB)
ثم وضع الرقم (MNO) في جدول (BOOKS)
وقد قمت أنا بوضع الأرقام الصحيحة المطلوبة في حقل (MNOX)
* وغالبا ما يكون الرقم بعد اسم الكتاب مباشرة، ولكن قد يتأخر عنه في بعض المواضع، مثلا هذا الحديث في الجدول الرئيسي (TAB)
فهذا الحديث موجود في جدول (BOOKS) في تسعة مواضع
والدالة ستبحث انطلاقا من جدول (BOOKS)
تبحث في حقل (NASS) من الجدول الرئيسي (TAB) عن الحديث الذي فيه اسم الكتاب "فوائد تمام" يليه رقم (168) وتضع رقمه، ثم تبحث مرة أخرى عن "فوائد تمام" يليه رقم (169) .. وهكذا
* مع ملاحظة البحث عن الرقم كاملا، حتى لا يحصل خلط بين:
فوائد تمام (312) // فوائد تمام (1312)
أرجو أن أكون قد وفقت في شرح المطلوب
ثم أرجو أن يكون بالإمكان عمل ذلك في أكسس لأن ذلك سيوفر لي الكثير من الوقت
موضوع جميل مشوق ، يسعدني المشاركه مع الإخوة الأفاضل بأقرب فرصة 🤗
-
14 ساعات مضت, qathi said:
للرفع ..
ارجو المساعدة للأهمية بارك الله فيكم
كنت في إجازة ، إن شاء الله هحاول اليوم ارفقلك التعديل ،
-
في 31/5/2024 at 03:39, ابو جودي said:
عاوز نسخة مفتوحة لحسن هأعيط واخلى الناس تتلم عليك
مهي النسخة المفتوحة موجودة في المشاركة الأخيرة يا صديقي 🤗
-
راجع هذه المشاركة
- 1
-
13 ساعات مضت, Ahmedbakheet said:
مشكور على كود البحث واهلا وسهلا بحضرتك لكن زر البحث لا يعمل على المسار و pdf المستدعى للمسار وهناك مسار تقريبا يخص جهاز حضرتك مش بيختفى المفروض اللى يظهر المسار المستدعى واسف على الاطاله وعدم سرعه الرد
عملتهولك في هذه المشاركة
في 28/5/2024 at 09:58, Foksh said:ولأنك منتسب جديد في المنتدى ، في أي موضوع تقوم بنشره وقد حصلت على إجابة لموضوعك وطلبك يتوجب عليك إغلاق الموضوع باختيار أفضل إجابة للمشاركة التي كان فيها حل لمشكلتك وطلبك.
وأهلاً بك مجدداً 🤗
واليك تعديل بسيط بحيث يتم افراغ المسارات في الليست بوكس Text4 قبل استعراض مجلد آخر
Private Sub cmdBrowse_Click() Me.Text4.RowSource = "" Dim sysFo, sysFi, foldry, filey As Object, i As String, X As Integer Set sysFo = CreateObject("Scripting.FileSystemObject") With Application.FileDialog(msoFileDialogFolderPicker) If .Show Then Set sysFi = sysFo.GetFolder(Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1)) Set foldry = sysFo.GetFolder(sysFi).Files For Each filey In foldry i = sysFo.GetAbsolutePathName(filey) i = UCase(i) Text4.AddItem (filey) Next End If End With Set sysFo = Nothing Set sysFi = Nothing Set foldry = Nothing End Sub
-
3 ساعات مضت, Abo-Abd Allah said:
روعه يا بروووف ايه الجمال ده 😛
برضوووو 😂
ربنا يكرمك ، دا من زوءك 🥰
-
12 دقائق مضت, qathi said:
اسمح لي استاذنا بهذه الملاحظة وارجو ان يكون يسع صدرك لي
بداية الفكرة اللي في الملف تم حل مشكلة التعرف على الماسح الضوئي ؟؟ أم لا ؟؟؟؟؟؟
ثم ممكن نحل هذه المشكلة التي ذكرتها
مطلوب منع الكتابة في مربع التحرير
في قسم الأكسيس Access
قام بنشر
يسعدني اكتساب هذه المعلومة بصدق