Получить свойства подключения к книге Excel - PullRequest
0 голосов
/ 02 ноября 2018

Я пытаюсь получить «Текст команды» из окна «Свойства подключения» в файле Excel, используя python. Однако я не могу найти объект, который содержит эту информацию. На картинке ниже я бы хотел получить выделенный EXEC sp_FooBar в виде строки:

enter image description here

Я могу получить соединение Имена с:

import odbc
import win32com.client
file = r'PATH_TO_FILE'
xl = win32com.client.DispatchEx('Excel.Application')
wb = xl.workbooks.open(file)
for x in wb.connections:
    print(x)

Но я не уверен, как использовать объект <COMObject <unknown>> для получения текста команды. Я думаю, что win32com может иметь что-то, но не может взломать код.

1 Ответ

0 голосов
/ 02 ноября 2018

Вы можете получить свойство CommandText из экземпляра OLEDBConnection, например:

import odbc
import win32com.client

file = r'PATH_TO_FILE'
xl = win32com.client.DispatchEx('Excel.Application')
wb = xl.workbooks.open(file)
for x in wb.Connections:
    print(x.OLEDBConnection.CommandText)
xl.Application.Quit()
...