PDA

View Full Version : سوال درباره حساب نکردن فاصله بین کلمات در جستجو



sanaei
شنبه 19 شهریور 1390, 17:54 عصر
از استادان عزیزم درخواست کمک دارم من مبتدی هستم
پروژه دارم و با پایگاه اکسس دارم زمانی در تکست نام خانوادگی فاصله می افتد در جستجو نمی توانم پیداش کنم
مثلا "محمدپور" را اگر "محمد (بافاصله) پور" بنویسیم انر ا جستجو نمی کند ممنون میشم استادان عزیز فرم نمون واسم بزارند
بی نهایت ممنون

maniaf69
شنبه 19 شهریور 1390, 18:09 عصر
از استادان عزیزم درخواست کمک دارم من مبتدی هستم
پروژه دارم و با پایگاه اکسس دارم زمانی در تکست نام خانوادگی فاصله می افتد در جستجو نمی توانم پیداش کنم
مثلا "محمدپور" را اگر "محمد (بافاصله) پور" بنویسیم انر ا جستجو نمی کند ممنون میشم استادان عزیز فرم نمون واسم بزارند
بی نهایت ممنون
دوست عزیز از دستور زیر استفاده کن
MsgBox Replace$("My Name Is Kaveh", " ", "")

sanaei
سه شنبه 22 شهریور 1390, 01:40 صبح
دوست عزیز از دستور زیر استفاده کن
MsgBox Replace$("My Name Is Kaveh", " ", "")

با تشکر از شما دوست عزیز.این فقط MsgBox است من میخوام وقتی کاربر در تکست هر مدل با فاصله کلمه را تایپ کند.جستجو صحیح انجام شود

setroyd
سه شنبه 22 شهریور 1390, 01:49 صبح
کی گفته نمیشه ! در بانک با فاصله رو هم میشه جستجو کرد

Adodc1.Recordset.Find "name='" & a & "'", , adSearchForward

a مقدار مورد نظر هست که باید در بانک سرچ شود .

maniaf69
سه شنبه 22 شهریور 1390, 03:14 صبح
با تشکر از شما دوست عزیز.این فقط MsgBox است من میخوام وقتی کاربر در تکست هر مدل با فاصله کلمه را تایپ کند.جستجو صحیح انجام شود

ببین این یک نمونه کده به جای msgbox یک متغیر بزار که اطلاعات بیاد توی اون بعد به جای "My Name Is Kaveh" هم اسم تکست باکس رو بزنبعد اون متغیر رو بده به کد سرچت اون موقع حل میشه
:چشمک:

sanaei
چهارشنبه 23 شهریور 1390, 01:19 صبح
[QUOTE=maniaf69;1337280]ببین این یک نمونه کده به جای msgbox یک متغیر بزار که اطلاعات بیاد توی اون بعد به جای "My Name Is Kaveh" هم اسم تکست باکس رو بزنبعد اون متغیر رو بده به کد سرچت اون موقع حل میشه

با تشکر فروان متوجه شدم فقط یک مشکل دیگر بوجود میاد اینکه با این وضعیت همه فاصله ها را محاسبه نمیکند و چطور میشه بگیم از دو تا فاصله به بعد محاسبه نشود. مثال اینکه "علی زاده نژاد" را "علیزادهنژاد" تحویل میدهد
بی نهایت ممنون از لطف شما:تشویق:

setroyd
چهارشنبه 23 شهریور 1390, 12:12 عصر
دوست عزیز من اون کدی که برای شما گذاشتم کار میکنه چه برای 100 تا فاصله چه 1 فاصله کار find پیدا کردنه و فاصله هم یک کاراکتر حساب میشه پس امکان سرچ نکردنش 0 هست تست کردیش ؟

sanaei
چهارشنبه 23 شهریور 1390, 22:37 عصر
دوست عزیز من اون کدی که برای شما گذاشتم کار میکنه چه برای 100 تا فاصله چه 1 فاصله کار find پیدا کردنه و فاصله هم یک کاراکتر حساب میشه پس امکان سرچ نکردنش 0 هست تست کردیش ؟

با تشکر از شما دوست عزیز
حقیقت من مبتدی هستم و نتونستم از کد شما استفاده کنم ایا میتونی توضیح بیشتر و یا یک نمونه واسم بزارید بی نهایت ممنون میشم

setroyd
چهارشنبه 23 شهریور 1390, 22:48 عصر
Adodc1.Recordset.Find "name='" & text1.text & "'", , adSearchForward

Adodc1.Recordset.Find
این متد اسم adodc شماس که باید تنظیم شود که اگر تنظیم نکردید اولین adodc شما همون adodc1 هست و اگر دومی رو میخواهید سرچ کنید بزنید adodc2.recordset.find و اگر سومی adodc3 و.............

"name='" این fild شما هست در جدول رکوردها مثلا telefon یا ادرس یا هرچی که دارید میتونید اسمش رو جایگزین کنید .

text1.text همون اسمی هست که میخواهید پیدا کنید یا شماره یا ............ میتونید جای text1 از هر چیز دیگری استفاده کنید .

adSearchForward رو به جلو سرچ میکنه و back هم رو به عقب .

vbhamed
پنج شنبه 24 شهریور 1390, 00:43 صبح
سلام

منظور دوستمون اين نيست كه فاصله جستجو بشه چه يكي چه 100 تا
منظورشون اينه كه اگر مثلا به جاي "رضا فرهادي" عبارت "رضا ‌ ‌ ‌ ‌ ‌ ‌ فرهادي" يا "رضافرهادي" هم نوشتن جستجو بشه

sanaei
پنج شنبه 24 شهریور 1390, 22:38 عصر
منظورم کاملا دوستمان بیان کرد من در ورود تایپ داشتم "علیزاده" و در جستجو اگر بنویسم "علی زاده" متاسفانه پیدا نمیشه و دوستم گرامی setriyd اگر لطف کند با Data کد را بگوید ممنون میشم چون من با Adodc1 کار نکردم شرمنده و تشکر فراوان از همگی عزیزان:تشویق:

setroyd
پنج شنبه 24 شهریور 1390, 23:24 عصر
Data1.Recordset.FindNext "name='" & text1.text & "'"
Data1.Recordset.FindPrevious "name='" & text1.text & "'"

vbhamed
جمعه 25 شهریور 1390, 10:02 صبح
سلام

من فكر مي‌كنم بهتره شما از اين كد استفاده كنيد تا اطلاعات فيلتر بشه

On Error Resume Next

Adodc1.Recordset.Filter = "Family like '%" & Text1 & "%'"