|
Как возвратить объект из функции
|
|
|
kolyan2288 |
Дата: Вторник, 14.03.2017, 13:44 |
Сообщение № 1 |
|
|
Группа: Пользователи
Ранг: Новичок
Сообщений: 11
Репутация:
0
±
Замечаний:
0% ±
 Excel 2013 | |
Привет ребят, хочу сделать структурированный код, но не могу понять как из функции возвратить объект. Спасибо
[vba]Код Function Connect() Set Conn = New ADODB.Connection Conn.Open "DRIVER={MySQL ODBC 5.2 ANSI Driver};" & _ "SERVER=localhost;" & _ "DATABASE=digestive;" & _ "UID=root;" & _ "PASSWORD=;" & _ "PORT:3306;" & _ "charset=cp1251;" & _ "Option=3;" Conn.Close End Function
Sub comand() 'вызываю фунцию соединения с базой, получаю ошибки Set cmd.ActiveConnection = Connect
End Sub [/vba]
Привет ребят, хочу сделать структурированный код, но не могу понять как из функции возвратить объект. Спасибо
[vba]Код Function Connect() Set Conn = New ADODB.Connection Conn.Open "DRIVER={MySQL ODBC 5.2 ANSI Driver};" & _ "SERVER=localhost;" & _ "DATABASE=digestive;" & _ "UID=root;" & _ "PASSWORD=;" & _ "PORT:3306;" & _ "charset=cp1251;" & _ "Option=3;" Conn.Close End Function
Sub comand() 'вызываю фунцию соединения с базой, получаю ошибки Set cmd.ActiveConnection = Connect
End Sub [/vba]kolyan2288
|
| |
| Ответить
|
|
kolyan2288 |
Дата: Вторник, 14.03.2017, 15:49 |
Сообщение № 2 |
|
|
Группа: Пользователи
Ранг: Новичок
Сообщений: 11
Репутация:
0
±
Замечаний:
0% ±
 Excel 2013 | |
Вопрос решился)
|
| |
| Ответить
|
|
Roman777 |
Дата: Вторник, 14.03.2017, 17:07 |
Сообщение № 3 |
|
|
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация:
127
±
Замечаний:
0% ±
 Excel 2007, Excel 2013 | |
kolyan2288, подскажите как?
Много чего не знаю!!!!
|
| |
| Ответить
|
|
kolyan2288 |
Дата: Среда, 15.03.2017, 16:01 |
Сообщение № 4 |
|
|
Группа: Пользователи
Ранг: Новичок
Сообщений: 11
Репутация:
0
±
Замечаний:
0% ±
 Excel 2013 | |
[vba]Код Public Conn As Object
Function DBConnection() Set Conn = New ADODB.Connection Set cmd = New ADODB.Command Set res = New ADODB.Recordset
Conn.Open "DRIVER={MySQL ODBC 5.2 ANSI Driver};" & _ "SERVER=localhost;" & _ "DATABASE=digestive;" & _ "UID=root;" & _ "PASSWORD=;" & _ "PORT:3306;" & _ "stmt=SET NAMES 'utf8';" & _ "Option=3;" End Function
Sub update_filters() DBConnection Set cmd.ActiveConnection = Conn
End Sub [/vba]
[vba]Код Public Conn As Object
Function DBConnection() Set Conn = New ADODB.Connection Set cmd = New ADODB.Command Set res = New ADODB.Recordset
Conn.Open "DRIVER={MySQL ODBC 5.2 ANSI Driver};" & _ "SERVER=localhost;" & _ "DATABASE=digestive;" & _ "UID=root;" & _ "PASSWORD=;" & _ "PORT:3306;" & _ "stmt=SET NAMES 'utf8';" & _ "Option=3;" End Function
Sub update_filters() DBConnection Set cmd.ActiveConnection = Conn
End Sub [/vba]kolyan2288
Сообщение отредактировал Manyasha - Среда, 15.03.2017, 16:34 |
| |
| Ответить
|
|
Manyasha |
Дата: Среда, 15.03.2017, 16:05 |
Сообщение № 5 |
|
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация:
902
±
Замечаний:
0% ±
 Excel 2010, 2016 | |
kolyan2288, про теги забыли?
ЯД: 410013299366744 WM: R193491431804
|
| |
| Ответить
|
|
bmv98rus |
Дата: Четверг, 16.03.2017, 13:45 |
Сообщение № 6 |
|
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4149
Репутация:
772
±
Замечаний:
0% ±
 Excel 2013/2016 | |
kolyan2288, Перед выходом из функции. [vba]Код Function Connect() Set Conn = New ADODB.Connection Conn.Open "DRIVER={MySQL ODBC 5.2 ANSI Driver};" & _ .... ....
Set Connect=Conn End Function
Sub comand() Set cmd.ActiveConnection = Connect End Sub
[/vba]
kolyan2288, Перед выходом из функции. [vba]Код Function Connect() Set Conn = New ADODB.Connection Conn.Open "DRIVER={MySQL ODBC 5.2 ANSI Driver};" & _ .... ....
Set Connect=Conn End Function
Sub comand() Set cmd.ActiveConnection = Connect End Sub
[/vba]bmv98rus
Замечательный Временно просто медведь , процентов на 20.
Сообщение отредактировал bmv98rus - Четверг, 16.03.2017, 13:46 |
| |
| Ответить
|