Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Msg Box в VBA данных из ACCESS - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Msg Box в VBA данных из ACCESS
A_3485 Дата: Понедельник, 19.09.2016, 14:56 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 146
Репутация: 0 ±
Замечаний: 40% ±

2007
Уважаемые форумчане, доброго времени суток!
Помогите, пожалуйста, разобраться с кодом VBA, который должен выводить сообщение по найденному результату в базе Access.
На форуме я нашел что-то похожее (пример), но до конца не смог разобраться как это работает, т.к. у меня идет подключение к базе через ADODB.Connection (Access 2007). Нужные библиотеки я подключил, часть программы работает и я вроде понимаю, что она делает, а вот дальше тупик. Запрос SQL сформирован правильно, т.к я его проверял на самой базе.

[vba]
Код

Public Function Поиск()

Dim statement As String
Dim con As ADODB.Connection
Dim Rec As ADODB.Recordset

Set con = New ADODB.Connection

con = "Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=С:\Путь\basa\bas.mdb"
con.Open

statement = "SELECT таблица.Поле1 FROM таблица WHERE (((таблица.[Поле1])='15';"
con.Execute statement

' здесь наверное должен идти код с передачей информации из Accwss в сам Msg Mox vba,
' но все остальные попытки далее работать через Rec дают ошибки.....

con.Close

Set con = Nothing
Set Rec = Nothing

End Function
[/vba]


Сообщение отредактировал A_3485 - Понедельник, 19.09.2016, 15:12
 
Ответить
СообщениеУважаемые форумчане, доброго времени суток!
Помогите, пожалуйста, разобраться с кодом VBA, который должен выводить сообщение по найденному результату в базе Access.
На форуме я нашел что-то похожее (пример), но до конца не смог разобраться как это работает, т.к. у меня идет подключение к базе через ADODB.Connection (Access 2007). Нужные библиотеки я подключил, часть программы работает и я вроде понимаю, что она делает, а вот дальше тупик. Запрос SQL сформирован правильно, т.к я его проверял на самой базе.

[vba]
Код

Public Function Поиск()

Dim statement As String
Dim con As ADODB.Connection
Dim Rec As ADODB.Recordset

Set con = New ADODB.Connection

con = "Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=С:\Путь\basa\bas.mdb"
con.Open

statement = "SELECT таблица.Поле1 FROM таблица WHERE (((таблица.[Поле1])='15';"
con.Execute statement

' здесь наверное должен идти код с передачей информации из Accwss в сам Msg Mox vba,
' но все остальные попытки далее работать через Rec дают ошибки.....

con.Close

Set con = Nothing
Set Rec = Nothing

End Function
[/vba]

Автор - A_3485
Дата добавления - 19.09.2016 в 14:56
Pelena Дата: Понедельник, 19.09.2016, 15:22 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19409
Репутация: 4558 ±
Замечаний: ±

Excel 365 & Mac Excel
Здравствуйте.
сообщение по найденному результату

Какой ожидается результат, и что выводить в сообщении?
Пример небольшой сочините


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЗдравствуйте.
сообщение по найденному результату

Какой ожидается результат, и что выводить в сообщении?
Пример небольшой сочините

Автор - Pelena
Дата добавления - 19.09.2016 в 15:22
A_3485 Дата: Понедельник, 19.09.2016, 15:26 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 146
Репутация: 0 ±
Замечаний: 40% ±

2007
Через Vba код я хочу находить в базе Access все значения в Поле1 = 15 и выводить их на экран вместе с остальными полями Поле2, Поле3 т.д.
 
Ответить
СообщениеЧерез Vba код я хочу находить в базе Access все значения в Поле1 = 15 и выводить их на экран вместе с остальными полями Поле2, Поле3 т.д.

Автор - A_3485
Дата добавления - 19.09.2016 в 15:26
Матраскин Дата: Понедельник, 19.09.2016, 15:35 | Сообщение № 4
Группа: Друзья
Ранг: Обитатель
Сообщений: 375
Репутация: 81 ±
Замечаний: 0% ±

20xx
Запрос SQL сформирован правильно


О___О точно точно? как эти скобки работают в запросе? можете рассказать:

[vba]
Код
"SELECT таблица.Поле1 FROM таблица WHERE (((таблица.[Поле1])='15';"
[/vba]


в интернете опять кто-то не прав

Сообщение отредактировал Матраскин - Понедельник, 19.09.2016, 15:35
 
Ответить
Сообщение
Запрос SQL сформирован правильно


О___О точно точно? как эти скобки работают в запросе? можете рассказать:

[vba]
Код
"SELECT таблица.Поле1 FROM таблица WHERE (((таблица.[Поле1])='15';"
[/vba]

Автор - Матраскин
Дата добавления - 19.09.2016 в 15:35
Pelena Дата: Понедельник, 19.09.2016, 15:37 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 19409
Репутация: 4558 ±
Замечаний: ±

Excel 365 & Mac Excel
вместе с остальными полями Поле2, Поле3 т.д.

скорее тогда так надо
[vba]
Код
SELECT * FROM таблица WHERE ...
[/vba]
или перечислить все поля после SELECT


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщение
вместе с остальными полями Поле2, Поле3 т.д.

скорее тогда так надо
[vba]
Код
SELECT * FROM таблица WHERE ...
[/vba]
или перечислить все поля после SELECT

Автор - Pelena
Дата добавления - 19.09.2016 в 15:37
A_3485 Дата: Понедельник, 19.09.2016, 15:43 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 146
Репутация: 0 ±
Замечаний: 40% ±

2007
Да вот так лучше:
Код
SELECT * FROM таблица WHERE Поле1='15';


теперь остается эти строки и поля с данными вывести в Msg Box.
С чего начинать я не знаю....


Сообщение отредактировал A_3485 - Понедельник, 19.09.2016, 16:13
 
Ответить
СообщениеДа вот так лучше:
Код
SELECT * FROM таблица WHERE Поле1='15';


теперь остается эти строки и поля с данными вывести в Msg Box.
С чего начинать я не знаю....

Автор - A_3485
Дата добавления - 19.09.2016 в 15:43
A_3485 Дата: Понедельник, 19.09.2016, 17:23 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 146
Репутация: 0 ±
Замечаний: 40% ±

2007
Кажется все получилось. Нужно было добавить:

Код
Set Rec = New ADODB.Recordset

Код
Rec.Open statement, con


.. и дальше все функции работают нормально.


Сообщение отредактировал A_3485 - Понедельник, 19.09.2016, 17:24
 
Ответить
СообщениеКажется все получилось. Нужно было добавить:

Код
Set Rec = New ADODB.Recordset

Код
Rec.Open statement, con


.. и дальше все функции работают нормально.

Автор - A_3485
Дата добавления - 19.09.2016 в 17:23
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!