Подключение к Excel и DB2 - PullRequest
2 голосов
/ 24 августа 2011

Я должен проверить, установлено ли соединение между Excel и DB2 с помощью драйвера CLI / ODBC.

Для этого я планирую написать командный файл, в который я буду вызывать лист Excel, который в свою очередь автоматически выполнит макрос, который выведет некоторые фиктивные данные из таблицы sysibm.sysdummy1.

Мне требуется код, с помощью которого я могу установить соединение с моей базой данных и проверить, было ли соединение установлено или нет, выдав некоторое сообщение об успехе, если соединение было установлено, и сообщение об ошибке, если соединение не было установлено. (Возможно, с некоторым объяснением, где возникла проблема)

1 Ответ

3 голосов
/ 24 августа 2011

Вы можете установить соединение ODBC (или OleDB) между сервером DB2 и Excel, используя ADODB (объекты данных ActiveX). См. эту ссылку для примеров строк подключения.

Эта ссылка покажет вам пример кода VBA для использования с ADODB для подключения к вашей базе данных: Как использовать ADO с данными Excel из Visual Basic или VBA

РЕДАКТИРОВАТЬ : Вот несколько быстрых и грязных примеров кода. Замените часть .connectionstring = на соответствующую строку подключения для вашей настройки.

Dim cn As ADODB.Connection
Dim rs As New ADODB.Recordset
Dim strSQL As String

strSQL = "SELECT * FROM sysibm.sysdummy1 FETCH FIRST 10 ROWS ONLY"
Set cn = New ADODB.Connection

With cn
    .Provider = "Microsoft.Jet.OLEDB.4.0"
    .ConnectionString = "Data Source=" & App.Path & _
"\ExcelSrc.xls;Extended Properties=Excel 8.0;"
    .Open
End With

rs.Open strSQL, cn

rs.MoveFirst
Do Until rs.EOF
    Debug.Print rs.Fields(0)
    rs.MoveNext
Loop

rs.Close
cn.Close

Set rs = Nothing
Set cn = Nothing
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...