ورود

View Full Version : لیست کردن شماره های یونیک از جدول با مقایسه سه فیلد شماره از جدول دیگر



shanazari
جمعه 09 شهریور 1403, 15:00 عصر
راهنمائی لطفا
دو تا جدول داریم که لیست مخاطبین توش هست
ولی تو یکی از جدول هامون یک شماره موبایل از مخاطبین هست
و تو جدول دیگه 3 تا شماره موبایل از مخاطبین داریم
حالا تو یک کوئری می خوام بیاد از جدولی که یک شماره موبایل هست جستجو انجام بده تو جدولی که سه تا شماره موبایل هست و اگر اون شماره موبایل تو یکی از اون سه شماره وجود نداشت لیست بشه و به اصلاح شماره های جدید برام شناسائی بشه و نیام تو سه کوئری این کار رو انجام بدم و فقط در یک کوئری شناسائی کنم .
نمونه فایل اکسس هم پیوست کردم ؛ لطفا راهنمائی کنید

eb_1345
جمعه 09 شهریور 1403, 17:01 عصر
سلام
میتونی از تابع InStr که برای جستجوی یک کلمه در یک متن یا جمله از اون استفاده میشه برای چک کردن وجود یا عدم وجود شماره موبایل مربوطه استفاده کنی !
بفرض با استفاده از کد زیر میخواهیم کلمه Ali رو در جمله? Hello Ali, How are you جستجو کنیم اگر وجود داشت پیغام OK در غیر اینصورت پیغام NO صادر بشه


If InStr("Hello Ali, How are you?", "Ali") Then
MsgBox "ok"
Else
MsgBox "no"
End If

در کد بالا Ali بعنوان کلمه و ? Hello Ali, How are you بعنوان متن یا جمله محسوب میشه
حالا چطور این کد رو برای نمونه شما استفاده کنیم؟
در فایل نمونه شما در جدول (Person1) Mobile بعنوان کلمه و در جدول (Person) Mobile0 بعنوان جمله در نظر می گیریم
حالا یک ستون جدید با نام مثلاً Expr1 در کوئری ایجاد و در جلوی آن کد زیر رو وارد می کنیم:


Expr1: IIf(InStr([mobile0],[Mobile]),"",[Mobile0])

در کد فوق اگر شماره موبایل مورد جستجو در لیست موبایل ها بود خالی در غیر اینصورت لیست موبایل ها نمایش داده شود

eb_1345
جمعه 09 شهریور 1403, 17:43 عصر
فقط در توضیحاتتون متوجه این موضوع نشدم که آیا وقتی شماره موبایل مورد جستجو در بین لیست شماره موبایل ها نبود اون شماره موبایل به لیست شماره ها اضافه شود یا نه؟
اگر اینطوره کد رو بصورت زیر تغییر بده :


Expr1: IIf(InStr([mobile0],[Mobile]),[Mobile0],[Mobile0] & "-" & [Mobile])

در این حالت اگر شماره مورد جستجو وجود داشت همون شماره های که قبلاً لیست شده نمایش داده میشه و اگر موجود نبود اون شماره به لیست قبلی اضافه و لیست جدید تشکیل میده