2

我正在尝试在 Excel 中运行 SQL 查询。

允许我这样做的唯一选项是使用 Microsoft Query 从外部源插入数据,选择 Excel 文件作为数据源并指向当前工作簿

尽管它很愚蠢,但它确实有效,但是它将文件的路径刻录到它在工作簿中定义的连接中,这意味着我无法移动或重新分发文件。

连接将具有以下定义:

连接字符串:

DSN=Excel Files;DBQ=C:\Temp\Alma.xlsx;DefaultDir=C:\Temp;DriverId=1046;MaxBufferSize=2048;PageTimeout=5;

询问:

select e.bizszam, e.bevsor, e.afa, u.afa
from this.EredetiAdat e
inner join this.UjAdat u on e.bizszam = u.bizszam and e.bevsor = u.bevsor and e.afa <> u.afa
where e.afa NOT IN (select u2.afa from `C:\Temp\Alma.xlsx`.UjAdat u2 where u2.bizszam = u.bizszam and u2.bevsor = u.bevsor)
OR u.afa NOT IN (select e2.afa from `C:\Temp\Alma.xlsx`.EredetiAdat e2 where e2.bizszam = e.bizszam and e2.bevsor = e.bevsor)

如您所见,上述两个文件中都有一个路径 (C:\Temp\Alma.xlsx)。我想摆脱它。如何在工作簿本身、正在运行的实例上建立连接点,无论它在哪里?

如果有任何其他方式(本机 Excel,没有插件!)在工作簿的表上运行 SQL 查询,我也会对此感到满意。我试过使用 MS Power Query,但据我所知它完全没用。

4

0 回答 0