powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / OpenConnection
9 сообщений из 9, страница 1 из 1
OpenConnection
    #32616819
NikP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Люди подскажите как правильно? Ругается Type mismatch на OpenConnection. Я понимаю, что написал не правильно, а как надо не знаю из кусков код собирал.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
Sub Макрос1()
'
Dim MyODBC As Workspace
Dim MyConn As Connection
Dim All_String As Variant
Dim Name_String As Variant
Dim Sql_String As String
Dim TestTable As Recordset
Dim sht As Worksheet
Dim Wkb As Excel.Workbook

a = Format(Range("F2"), "mm/dd/yyyy")
b = Format(Range("H2"), "mm/dd/yyyy")

Const Conn_Str As String = "ODBC;DSN=База данных MS Access;DBQ=C:\Work\База\0030.mdb;DefaultDir=C:\Work\База;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTi"

Set MyODBC = CreateWorkspace("", "admin", "", dbUseODBC)
Set MyConn = MyODBC.OpenConnection("", , , Conn_Str)
 Sql_String = "SELECT Экспорт_Группы.Группа, Экспорт_Группы.Дата, Экспорт_Группы.[Sum-Продано_кг]" & _
        " FROM Экспорт_Группы" & _
        " WHERE (((Экспорт_Группы.Дата) Between #" & a & "# And #" & b & "#))"
    
    Set TestTable = MyConn.OpenRecordset(Sql_String, dbOpenDynaset,  0 , dbPessimistic)
    
Set sht = Wkb.Sheets(Лист1)
TestTable.MoveFirst
sht.Range("B1").CopyFromRecordset TestTable

 TestTable.Close
 MyConn.Close
 MyODBC.Close

End Sub
...
Рейтинг: 0 / 0
OpenConnection
    #32617081
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim MyConn As DAO.Connection
Dim TestTable As DAO.Recordset
...
Рейтинг: 0 / 0
OpenConnection
    #32617165
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
странный код - он запускается под Access или под Excel ?
...
Рейтинг: 0 / 0
OpenConnection
    #32617242
NikP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shuhardстранный код - он запускается под Access или под Excel ?
такие вещи обычно происходят, когда толком не знаешь как сделать то, что тебе нужно. Решение нашел и очень простое.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
Sub Макрос2()

    Dim dbAccess As Database
    Dim TestTable As DAO.Recordset
    Dim Sql_String As String
    Dim a, b As Date

    On Error GoTo ErrorsDB
 
    a = Range("F2").Value
    b = Range("H2").Value

    
    Set dbAccess = OpenDatabase("C:\Work\База\0030.mdb")
    Sql_String = "SELECT Экспорт_Группы.Группа, Экспорт_Группы.Дата, Экспорт_Группы.[Sum-Продано_кг]" & _
        " FROM Экспорт_Группы" & _
        " WHERE (((Экспорт_Группы.Дата) Between " & a & " And " & b & "))"
    Set TestTable = dbAccess.OpenRecordset(Sql_String)
    
    If (TestTable.RecordCount >  0 ) Then
    Range("A2").CopyFromRecordset TestTable
    Else: MsgBox "Not Found"
    End If
 
    TestTable.Close
    dbAccess.Close
    GoTo Ends
    
ErrorsDB:
    MsgBox "Произошла ошибка"
Ends:

End Sub
Только вот дата зараза ругается. Ищу причину
...
Рейтинг: 0 / 0
OpenConnection
    #32617261
stag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NikP" WHERE (((Экспорт_Группы.Дата) Between " & a & " And " & b & "))"


" WHERE (((Экспорт_Группы.Дата) Between " & CLng(a) & " And " & CLng(b) & "))"
или
" WHERE (((Экспорт_Группы.Дата) Between #" & a & "# And #" & b & "#))"
...
Рейтинг: 0 / 0
OpenConnection
    #32617293
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
OpenConnection
    #32617295
NikP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot stag" WHERE (((Экспорт_Группы.Дата) Between " & CLng(a) & " And " & CLng(b) & "))"
[/quot]
Спасибо большое. Все работает. А я парился по принципу второго примера и думал: "Ну что за фигня такая????"
...
Рейтинг: 0 / 0
OpenConnection
    #32617300
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Шутка. Беру свои слова обратно. Наврал :)
...
Рейтинг: 0 / 0
OpenConnection
    #32617301
NikP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Geo2stag
http://www.sql.ru/faq/faq_topic.aspx?fid=157

А эту ссылку я уже очень хорошо знаю
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / OpenConnection
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]