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

فكرة بحث ذكية (Search) الحروف ( ة ه ا إ آ أ ي ى )


ahmedspcc

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

بسم الله الرحمن الرحيم

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

ايه الاخوة الكرم ارجو افادتي في موضع البحث ، حيث اني عملة استعلام بحث ولكن هنك مشكلة في البحث حيث ان المدخل قد يكتب مثلاً اسم ( فاطمة ) او ( فاطمه ) او ( احمد ) او ( أحمد ) .... الخ مم جعل امر البحث بالاسم امر مزعج ارجو الافادة ، ان كن هنك حل واتمنا من الله عليكم ان يكون الحل مرفق بي مثل لسبب اني بطي الفهم ووعد مني اني سوف ادعو لكم جميعاً ولكن من يقد لي الحل سوف اخصه انشاء الله بالكثير من الدعاء هذا والله يحفظكم ويرعاكم

سبحانك الله هم لا علم لنا الى ما علمتنا انت علام الغيوب

اخوك

ورطن مبتلش المزنوقي

  • Thanks 1
رابط هذا التعليق
شارك

هذه الدالة لأخونا أبو هاجر

و الهدف منها استبدال كلمة البحث التي تحوي الحروف المتناظرة مثل ا أ آ

Dim tempstr As String

Dim tempend As String

tempstr = Me.ser_txt


        If tempstr Like "*[أاإ]*"Then

        tempend = ""

            For b = 1 To Len(tempstr)

                If mid(tempstr, b, 1) = "ا" Or mid(tempstr, b, 1) = "إ" Or mid(tempstr, b, 1) = "أ" Then

                    tempend = tempend & "[أاإ]"

                Else

                    tempend = tempend & mid(tempstr, b, 1)

                End If

            Next

        End If

رابط هذا التعليق
شارك

شكراً من كل قلبي الى الاساذ/ محمد طاهر

وارجوك غاية الرجاء ياستاذ محمد لو انك ارفق مثل لاني لم استفد من هذا الكود ارجوك ارجوك والله يحفظك لنا ولكل محبيك من كل شر

اخوك

ورطان مبتلش المزنوقي :eek: :cry:

رابط هذا التعليق
شارك

مرفق المثال

و يمكن اختيار مجموعات الحروف المطلوب اعتيارها متماثلة

من مربعات الخيار علي اليسار

و ايضا هو تطبيق لفكرة البحث الفوري بمجرد الكتابة التي طرحها الاخ طارق

و مضاف عليها انه بالنقر المذدوج علي مربع كتابة حروف البحث

تظهر شاشة zoom و التي تمكننا من كتابة كلمات متتالية و مسافات بين الكلمات ، و الذي لم يمكن عمله فى المثال الاصلي

ملاحظة :

أيضا يمكن تفعيل شاشة الزوم بخلاف النقر المذدرج بالكريقة الطبيعية بكتابة Shift + F2

Search.rar

رابط هذا التعليق
شارك

الى حبيبي الاستاذ الكبير / محمد طاهر

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

اخوك

مش ورطان ولا مبتلش ولا كمان المزنوقي

اخوك

فرحاً منطنط المسروري :lol:

رابط هذا التعليق
شارك

الاستاذ العزيز محمد طاهر

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

هنك حديث شريف عن الرسول صلى الله عليه وسلام بما معنه ان ابن ادم لو اعطي جبل من ذهب لتمنا الاخر ؛ وانا طمعان في كرمك علي واود ان استغني عن شاشة zoom بمعنى لمذا لا استطيع ان اكتب الاسم ثناي او ثلاثي في خانة البحث لمذا لا يقبل الى اسم واحد او الذهب الى شاشة zoom هل من وسيلة والله يحفطك

اخوك

فرحان منطنط المسروري :lol:

رابط هذا التعليق
شارك

أهلا بك أخي الكريم

اذا كنت تريد أن لا يتم البحث مع كتابة كل حرف و أن يتم تنفيذ البحث مع نهاية كتابة الجملة و ضغط Enter

أو بمعني آخر بعد التحديث لمربع النص

فانقل الكود الموجود فى حدث عند التغيير

on change

الي حدث بعد التحديث

after update

و عندها ستستغني عن الزووم فلن يتم التنفيذ الا عند انتهائك من كتابة الجملة كاملة و ضغط Enter أو الانتقال الي مربع آخر

أي استبدل سطر

Private Sub Mysearch_Change()
ب
Private Sub Mysearch_AfterUpdate()

أو من الافضل أن تنشيء حدث جديد خاص ب Mysearch_AfterUpdate

و تنقل اليه الكود الموجود فى Mysearch_Change

و تلغي الكود الموجود فى

Mysearch_Change

رابط هذا التعليق
شارك

  • 2 months later...

لدي نموذج اسمة show طريقة العرض الافتراضية هي نماذج مستمرة وفي راس النموذج وضعت مربع نص اسمة nema_look مصدر السجل للنموذج هو استعلام وفي حقل الاسماء وضعت في المعايير التعبير التالي

like "*"&[forms]![show]![nemalook]&"*"                 cood    

المشكلة لا استطيع ادراج مسافة بين الاسماء فمثلا للبحث عن الاسم حسن حمد بعد الانتهاء من ادخال حروف الاسم الاول اضغط زر مسافة فان المؤشر يضل في مكانة عند الحرف الاخير ولا يتحرك ليعطني المسافة من اجل ان ادخل الاسم الثاني .

ارجوكم الحل .

رابط هذا التعليق
شارك

الي الاستاذ الغالي محمد طاهر اشكرا علي سرعة الرد

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

=http://www.officena.net/ib/index.php?=showtopic=419&hi

في هذا النموذج تستطيع ان تكتب (علي سبيل المثال ) في مربع النص كلمة (الاصوال )ثم تضيف مسافة , وبعدها تكتب الحرفين (ال)لتحصل علي النتائج التالية

الاصوال الثابتة

الاصوال المتداولة

الاصوال الاخري

ولو قمت بتكملة باقي الحروف من الجزاء الثاني من كلمة البحث لحصلت علي ماتريد فمثلا لو كتبت بهد الحرفين (ال) متداولة . لحصلت علي نفس الكلمة

والسوال هنا .اين يكمن السر في قاعدة البيانات في امكانية اضافة مسافة بين الكلمتين . ولم استطع ان افعل ذلك مع نموذج رغم التقليد الشديد لها .

رابط هذا التعليق
شارك

استاذي الفاضل محمد طاهر

انا اسف علي التاخير والمشكلة مازالت قائمة

لو تدري ما فعلتة بي قاعدة البيانات السابقة التي صممها الاخ ابو هادي لضحكت علي

والله علي مااقول شهيد خذ عندك ....

قمت بتغير جميع الاكواد مثل قاعدة البيانات السابقة ولم تحل المشكلة

قمت بتغير اسماء النماذج والجدوال ولم تحل المشكلة

قمت بنسخ التنسيقات حتي عرض الخط ولون الخلفية مع اني متاكد انها ليست السبب ولكن لم تحل المشكلة ....

لا افهم السبب والسر في قاعدة البيانات هذة مع العلم اني قمت بتصميم مربع نص في قاعدة البيانات الاصلية وعمل بشكل جيدة فاستنتجت ان السر في النموذج قمت بتصميم نموذج مشابة تماما لانموذج الاصلي ولكن دون جدوي ...

اخوان الاعزاء لي تقريبا اكثير من اسبوعين وانا احاول في فهم هذا السر

لماذا يمكن في قاعدة البيانات التي صممها اخونا ابو هادي يمكن اضافة مسافة بين الاسماء وفي قاعدة البيانات التي صممتها لا فعل لك ؟

ساقوم بتحميل قاعدة البيانات التي صممتها اليكم ارجو التعديل فيها وشرح الاخطاء ان امكن

بعد التحميل اكتب مثلا الاسم محمد وحاول اضافة مسافة لتكتب باقي الاسم .

Phone_Book.zip

رابط هذا التعليق
شارك

الي استاذي ابو هادي

شكرا لك وجزاك الله الف خير وفرج عنك كل هموم الدنيا وهموم الاخرة

اللهم امين اللهم امين

اود ان استاذ منك سوف ادرس التعديلات التي اضفتها . هل من الممكن ان تشرح ما يصعب علي فهمة ......

وجزاك الله عني كل خير

رابط هذا التعليق
شارك

السلام عليكم

المشكلة تكمن في عدم الإحتفاظ بالمسافات التي تلحق النص فعند تعيين عبارة SQL لمصدر السجلات فإن صندوق find_name يفقد التركيز وعند إعادة التركيز عليه يكون قد فقد المسافات اللاحقة للنص ، وما فعلته أنا قمت بحفظ النص قبل فقد التركيز في خاصية tag ثم قرأته من جديد بعد إعادة التركيز .

كما يمكن كذلك حفظ النص بمتغير عام .

تحياتي .

تم تعديل بواسطه أبو هادي
رابط هذا التعليق
شارك

  • 2 months later...

هذا مثال ايضاً للبحث بالحروف

كنت أريد فقط ان أجمع تعليقاتكم وإقتراحاتكم

--

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

وأدخلتها في الكود .

---

أتمني ان نضيف الجديد دائما

مع تحياتي

db7.rar

تم تعديل بواسطه امير عاطف
رابط هذا التعليق
شارك

  • 9 months later...

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