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

Вход

Регистрация

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

 

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

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Excel и другие приложения » Access » Msg Box в VBA данных из ACCESS (Макросы/Sub)
Msg Box в VBA данных из ACCESS
A_3485 Дата: Понедельник, 19.09.2016, 14:56 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 130
Репутация: 0 ±
Замечаний: 40% ±

Уважаемые форумчане, доброго времени суток!
Помогите, пожалуйста, разобраться с кодом 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
Группа: Модераторы
Ранг: Экселист
Сообщений: 9849
Репутация: 2254 ±
Замечаний: 0% ±

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

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


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

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

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

Через 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
Группа: Друзья
Ранг: Обитатель
Сообщений: 341
Репутация: 63 ±
Замечаний: 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
Группа: Модераторы
Ранг: Экселист
Сообщений: 9849
Репутация: 2254 ±
Замечаний: 0% ±

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

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


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

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

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

Да вот так лучше:
Код
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
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 130
Репутация: 0 ±
Замечаний: 40% ±

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

Код
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
Мир MS Excel » Вопросы и решения » Excel и другие приложения » Access » Msg Box в VBA данных из ACCESS (Макросы/Sub)
Страница 1 из 11
Поиск:

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