PDA

View Full Version : فراخواني واجراي يک کوئري از ديتا بيس ديگر



afshin000
سه شنبه 25 فروردین 1394, 03:06 صبح
با سلام خدمت دوستان پرکار

.
.
يک کوئري را از يک ديتا بيس ديگر فراخواني کرد واجرا نمود vbaمن مي خواستم بدانم ايا مي شود به صورت کد در محيط
من خيلي جستجو کردم ولي متاسفانه جواب نگرفتم
در صورت امکان کمک کنيد:قلب:

amp_1356
سه شنبه 25 فروردین 1394, 12:23 عصر
سلام
این کد ها رو داخل یه ماژول کپی کنید

Function createAttached(strTable As String, strPath As String, strBaseTable As String) As Boolean

'************************************************* ***********************************
'* Create an attached table in the current database from a table in a different MDB file.
'* In: *
'* strTable - name of linked table to create *
'* strPath - path and name of MDB file containing the table *
'* strBaseTable - name of table in strPath MDB *
'* Out: *
'* Return value: True/False, indicating success *
'* Modifies: *
'* Nothing, but adds a new table. *
'************************************************* ***********************************


On Error GoTo CreateAttachedError


Dim tdf As TableDef
Dim strConnect As String
Dim fRetval As Boolean
Dim myDB As Database


DoCmd.SetWarnings False
Set myDB = CurrentDb
Set tdf = myDB.CreateTableDef(strTable)

With tdf
.Connect = ";DATABASE=" & strPath
.SourceTableName = strBaseTable
End With

myDB.TableDefs.Append tdf

fRetval = True

DoCmd.SetWarnings True


CreateAttachedExit:
createAttached = fRetval
Exit Function


CreateAttachedError:
If Err = 3110 Then
Resume CreateAttachedExit
Else
If Err = 3011 Then
Resume Next
End If
End If

End Function

بعد از هرجا که خواستید مثلا داخل یه دکمه (Command Button) صداش کنید. این فانکشن دارای 3 آرگومان هستش. اولی اسم جدول جدیدی که می خواهید ایجاد کنید. دومی مسیر و نام فایل اکسس دیگر که می خواهید اطلاعاتش رو وارد کنید. و سوم نام جدول یا کوئری در همان فایل اکسس.
موفق باشید.

afshin000
سه شنبه 25 فروردین 1394, 13:43 عصر
با سلام دوباره
من سعي کردم ولي اين کد در خصوص ايجاد جدول است وشايد من اشتباه مي کنم من مي خواهم يک کوئري را اجرا کنم نه اينکه جدول بسازم.اگه مي شه وبا اينکه مي دانم زحمت مي شه .لطفا يک نمونه بذاريد

afshin000
پنج شنبه 27 فروردین 1394, 08:53 صبح
با سلام
خودم بعد از بررسي زياد سايت يک کد را پيدا کردم البته اينجا از کسي که اين کد را نوشته تشکر مي کنم البته اسمش را نمي دانم
Dim obj As Object
DoCmd.SetWarnings (OFF)
Set obj = CreateObject("Access.Application")
obj.OpenCurrentDatabase ("j:an\msp\mspall.mdb")
obj.DoCmd.OpenQuery "Q2"
Set obj = Nothing
'obj.DoCmd.Quit