Страницы: 1
RSS
передать параметр запроса на обновление из Excel в Access
 
Уважаемые форумчане.  
Подскажите, пожалуйста, как передать параметр из Excel в запрос на обновление Access?
 
{quote}{login=Sergey11222}{date=27.11.2011 09:28}{thema=передать параметр запроса на обновление из Excel в Access}{post}...как передать параметр из Excel в запрос на обновление Access?{/post}{/quote}Какой параметр?
 
Параметр значение столбца КодДвери
 
ох и намудрили Вы....  
Sub Кнопка2_Щелкнуть()  
Dim cnn As New ADODB.Connection  
Dim i As Integer  
Dim LastDoor As Long  
Dim cmd As ADODB.Command  
'C:\Documents and Settings\Сергей\Мои документы\db10.mdb  
 
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" _  
   & "Data Source=C:\Documents and Settings\Сергей\Мои документы\db10.mdb"  
cnn.Open  
LastDoor = ThisWorkbook.Sheets("ОсмотрДверей").Cells(65536, 1).End(xlUp).Row  
Set cmd = New ADODB.Command  
With cmd  
.ActiveConnection = cnn  
 
For i = 2 To LastDoor  
       kodDveri = ThisWorkbook.Sheets("ОсмотрДверей").Cells(i, 1)  
   .CommandText = "UPDATE Таблица1 SET Таблица1.Дата =" & DataSql(Date) _  
           & " WHERE Таблица1.КодДв =" & kodDveri  
   .Execute  
   Next  
End With  
cnn.Close  
Set cnn = Nothing  
End Sub  
 
Function DataSql(dt_sql As String)  
DataSql = "#" & Format(dt_sql, "mm\/dd\/yy hh\:mm\:ss") & "#"  
End Function  
 
_-=40604=-_
Спасибо
 
R Dmitry,  
Serge 007  
 
Спасибо!!!
 
Уважаемые форумчане.  
Здесь (как мне понятно) написан запрос на SQL в модуле Excel. Текст запроса передается в Access вместе с параметром "kodDveri"  
 
А есть ли вариант управления из Excel сохраненным запросом, находящимся в Access?  
 
Или что Вы рекомендуете почитать по Command?
 
можно запустить запрос вот таким образом:  
 
Public Sub upquery()  
Set fso = CreateObject("Scripting.FileSystemObject")  
Const cDatabaseToOpen = "C:\kotirovki\temp\basa.mdb" 'указываем путь к базе  
On Error Resume Next  
Dim ac  
Set ac = CreateObject("Access.Application") ' запускаем access  
 
If ac.Version >= 11 Then 'отключаем вопрос об открытии базы    
   ac.AutomationSecurity = 1 ' msoAutomationSecurityLow    
End If  
 
ac.Visible = False 'скрытый режим  
 
ac.OpenCurrentDatabase cDatabaseToOpen 'открываем нашу базу  
 
If ac.CurrentProject.FullName <> "" Then  
   ac.UserControl = True  
Else  
   AcApp.Quit  
   MsgBox "Failed to open '" & cDatabaseToOpen & "'."  
End If  
 
ac.run "up_to" 'запуск макроса "up_to"  
ac.Quit 'выход  
End Sub
Страницы: 1
Читают тему
Наверх