PDA

View Full Version : سوال: شرط غير مستقيم "and" و "or" در كوئري



arman2000
سه شنبه 16 آذر 1389, 10:29 صبح
سلام

به طور معمول از سطر Criteria و سطر or براي شرط گذاري استفاده مي كنيم و از مواردي كه در فرم وارد مي شه مي تونيم استفاده كنيم مانند:
Between [Forms]![frmsrch].[Text53] And [Forms]![frmsrch].[Text54

حالا اگه بخوايم همين شرط "and" و "or" رو هم از طريق يه فرم (مثلا فرم جستجو) به كوئري اعلام كنيم چي؟
مثلا توي فرم جستجو بعد از وارد كردن مقداري براي تكست باكس، آيتمي باشه با عنوان "گذاشتن شرط" كه شامل دو گزينه راديويي "و" و "يا" باشه كه با انتخاب يكي از اونها، شرط "and" و "or" به كوئري اعمال بشه

dadsara
چهارشنبه 17 آذر 1389, 11:47 صبح
سلام
برای اینکار باید زحمت بکسید کمی کد بنویسید ، که قسمت Where بصورت پیش فرض انتخاب نشود بلکه توسط کاربر و یک فرم ایجاد شود

arman2000
پنج شنبه 18 آذر 1389, 18:20 عصر
سلام
اگر بخوایم توی فرم جستجو، با انتخاب یا عدم انتخاب یک گزینه رادیویی، دستوری به کوئری بدیم چه کدی باید نوشت
چیزی شبیه به کد زیر که با تکستباکس برای شرط، در یه فیلد به کوئری داده شده
Between [Forms]![frmsrch].[Text29] And [Forms]![frmsrch].[Text30
در مورد دستور Where هم ممنون می شم راهنمایی بیشتری کنید
قسمت Where بصورت پیش فرض انتخاب نشود بلکه توسط کاربر و یک فرم ایجاد شود

arman2000
جمعه 19 آذر 1389, 12:11 عصر
ممنوم مي شم راهنمايي بفرمائيد.

arman2000
یک شنبه 21 آذر 1389, 22:32 عصر
سلام
ممنون می شم اگه نمونه ای بذارید.

arman2000
شنبه 04 دی 1389, 10:09 صبح
سلام
منتظر راهنمايي شما هستم

dadsara
شنبه 04 دی 1389, 17:09 عصر
سلام
اگر منظور جنابعالی را درست متوجه شده باشم فرض کنید یک رادیو ، دو تکست باکس و یک کلید روی فرم دارید باید به شکل زیر عمل کنید

Dim a As String
Private Sub Command6_Click()
If Me.Option0 = False Then
a = "where((id > Text2 ) Or (id < Text4))"
Else
a = "where((id > Text2) And (id < Text4))"
End If
MsgBox "select * from table1 " & a & ""
End Sub
حال می توانید مقدار را اجرا کنید و یا هر عملی که نیاز دارید

arman2000
دوشنبه 06 دی 1389, 13:37 عصر
سلام
يعني در كوئري نياز نيست شرطي بنويسم؟

dadsara
دوشنبه 06 دی 1389, 18:03 عصر
سلام
دوست عزیز مقدار a همان شرط شماست که توسط جنابعالی درست می شود