Использование Excel 2010, SQL и DAOИспользование VBA-Excel для SQL запроса по нескольким базам данных
Я пытаюсь выполнить запрос к таблицам, которые проживают за пределами текущей таблицы. Это было бы тривиально, внутри Access, со связанными таблицами/базами данных, но, используя VBA в excel, меня заглушат.
Предположив это:
ExcelFileOne; Tab; various headed field/columns
ExcelFileTwo; Tab; various headed field/columns
Я хочу, чтобы выполнить запрос внутри третьего файла Excel, который выходит что-то вроде этого [используя точечную нотацию для объяснения, а не кодирования ....] - простой пример :
SELECT FileOne.[Tab$].Fields, FileTwo.[Tab$].Fields, etc.
FROM FileOne, FileTwo, Thisworkbook
WHERE (FileOne.[Tab$].field2 <> FileTwo.[Tab$].Field2)
AND (ThisWorkbook.[Tab$].Field1 ....)
В принципе, я хочу дублировать то, что Access будет делать изначально, для этого связанного файла.
Указатели в правильном направлении?
[[Я мог бы использовать указатель на то, почему использование «Excel 8.0 ...» в соединении работает или выходит из строя на Excel2010, с файлами макросов и как загрузить вариант 12 или 14 в сети/системе, закрытой для пользователи ....]]
драйвер ODBC для исследований EXCEL; возможно, начиная с этого момента: https://www.connectionstrings.com/microsoft-excel-odbc-driver/ –
Excel не является сервером БД и не имеет встроенного механизма БД. Он просто способен понимать SQL с помощью внешних библиотек, таких как «ADO» или «DAO». Если у вас есть Office 2016 или 2013 и установлен [PowerQuery] (https://support.office.com/en-us/article/Introduction-to-Microsoft-Power-Query-for-Excel-6e92e2f4-2079-4e1f-bad5 -89f6269cd605), то это ** теперь возможно с помощью этой новой надстройки. В противном случае вам придется полагаться на Access или SQL-Server для выполнения этой задачи (или переносить оба листа в один файл, а затем преобразовывать/размножать их с помощью VBA в соответствии с вашими потребностями). – Ralph