PDA

View Full Version : کد ساخت query



takkhal
شنبه 19 تیر 1389, 23:59 عصر
ممکنه اساتید راهنمایی بفرمایند اشکال ای کد چیه که ارور میده؟


Function fMakeBackup() As Boolean
Dim Db As Database
Dim QryDef As QueryDef
Dim StrSQL As String
Dim StrQryName As String
Set Db = CurrentDb
StrQryName = "QueryName"
StrSQL = "SELECT * FROM TableName"
Db.QueryDefs.Delete StrQryName
Set QryDef = Db.CreateQueryDef(StrQryName, StrSQL)
DoCmd.OpenQuery StrQryName, acViewNormal
End Function

amirzazadeh
یک شنبه 20 تیر 1389, 10:21 صبح
ممکنه اساتید راهنمایی بفرمایند اشکال ای کد چیه که ارور میده؟


Function fMakeBackup() As Boolean
Dim Db As Database
Dim QryDef As QueryDef
Dim StrSQL As String
Dim StrQryName As String
Set Db = CurrentDb
StrQryName = "QueryName"
StrSQL = "SELECT * FROM TableName"
Db.QueryDefs.Delete StrQryName
Set QryDef = Db.CreateQueryDef(StrQryName, StrSQL)
DoCmd.OpenQuery StrQryName, acViewNormal
End Function


سلام
اگر ممكنه فايل و خطاي مربوطه رو اپلود كنيد.

takkhal
یک شنبه 20 تیر 1389, 14:24 عصر
یکی از دوستان این کد رو برای ساختن کوئری از table پیشنهاد کرده بود!
شایدم من درست متوجه نشده باشم!:گیج:

amirzazadeh
یک شنبه 20 تیر 1389, 18:21 عصر
یکی از دوستان این کد رو برای ساختن کوئری از table پیشنهاد کرده بود!
شایدم من درست متوجه نشده باشم!:گیج:
سلام
كدهاي شماره تغيير دادم ببينيد مشكل برطرف شده:

Private Sub Command0_Click()

Dim Db As Database
Dim QryDef As QueryDef
Dim StrSQL As String
Dim StrQryName As String

Set Db = CurrentDb
StrQryName = "Q for backup01"

Db.QueryDefs.Delete StrQryName
StrSQL = "SELECT * FROM Table1"

Set QryDef = Db.CreateQueryDef(StrQryName, StrSQL)

End Sub

......................
موفق باشيد

takkhal
یک شنبه 20 تیر 1389, 22:01 عصر
ممنون
راستش قرار بود با زدن دکمه یک کوئری ساخته بشه
ولی مشکل حل نشده
بازم کمـــــــــــــــــــــــ ـــــــــــــــــــــــــ ک

dadsara
سه شنبه 22 تیر 1389, 10:23 صبح
سلام
ضمن تشکر از دوستان ، کد ارائه شده از ناحیه آنان اجرا می شود با این اختلاف که حتما کوئری باید با نام مورد نظر وجود داشته باشد ، می توان خط مربوط به حذف کوئری را کامنت کرد یا ترتیب دیگری برای آن اتخاذ نمود ، در حال قطعه کد اعلامی درست کار می کند

Dim Db As Database
Dim QryDef As QueryDef
Dim StrSQL As String
Dim StrQryName As String

Set Db = CurrentDb
StrQryName = "Q1"
Db.QueryDefs.Delete StrQryName
StrSQL = "SELECT * FROM Table1"
Set QryDef = Db.CreateQueryDef(StrQryName, StrSQL)
DoCmd.OpenQuery StrQryName, acViewNormal

takkhal
سه شنبه 22 تیر 1389, 13:26 عصر
بازم از توجهتون ممنون بسیار

1.میشه یه مثال از نوع کامنت کردن یا شرط گذاشتن برای delete معرفی بفرمایید

2 .اگه بخواهیم در کوئری جدیدی که ساخته میشه مثلا فقط فیلد1 و فیلد2 از چندین فیلد یک تیبل موجود وجود داشته باشه دستور چه تغییری میکنه؟

dadsara
سه شنبه 22 تیر 1389, 13:53 عصر
سلام
منظورتون حذف کوئری است یا حذف رکورد

takkhal
سه شنبه 22 تیر 1389, 21:46 عصر
منظور حذف یک یا تمام رکوردهای یک فیلد بدون تغییر در سایر فیلدهاست
ممنون

dadsara
چهارشنبه 23 تیر 1389, 08:47 صبح
سلام
در نمونه پیوست دیزاین کوئری 1 را ملاحظه کنید

takkhal
چهارشنبه 23 تیر 1389, 14:09 عصر
ممنون فراوان
خیلی کمک کرد نمونتون:تشویق: