【发布时间】:2022-03-02 07:22:41
【问题描述】:
我正在尝试从外部源和我的 Excel 文件的另一张表中获取数据到一个表中。
我在 SQL Server 中拥有的是我的客户表:
╔════╦══════╦═════════╗
║ ID ║ Name ║ Country ║
╠════╬══════╬═════════╣
║ 1 ║ Joe ║ Spain ║
║ 2 ║ Bob ║ Frence ║
║ 3 ║ Eva ║ Spain ║
╚════╩══════╩═════════╝
我的 Excel 文件的另一张表中列出了国家和税收:
╔═════════╦═════╗
║ Country ║ VAT ║
╠═════════╬═════╣
║ Germany ║ 19% ║
║ Frence ║ 20% ║
║ Spain ║ 21% ║
╚═════════╩═════╝
最后我需要的是一张包含我的客户和他应该支付的税款的表格。该表应该在我的 excel 文档的一张表中,并且用户应该能够根据需要轻松更新它。
╔══════════╦═════╗
║ Customer ║ VAT ║
╠══════════╬═════╣
║ Joe ║ 21% ║
║ Bob ║ 20% ║
║ Eva ║ 21% ║
╚══════════╩═════╝
知道什么是一个不错且简单的解决方案吗?
我尝试了两个 excel sql 查询 - 一个来自 SQL Server,第二个来自“microsoft query”(来自 excel 文件)。但由于后续无法运行,无法确定一次更新后的数据是否正确。
我还尝试了一个 sql 查询(来自 SQL Server)和一个 VLOOKUP 公式。但是填表后不会自动计算公式。
【问题讨论】:
-
据我了解,您有两个表 - 一个在 SQL Server 端,另一个在 Excel 工作表上,您想将它们加入另一个 Excel 工作表。我对吗?您还写道,用户将输入一些数据(我想是在 Excel 中)并且连接表应该按需更新 - 一些按钮将被按下或如何?
-
为什么不将所有工作表导入SSMS,然后使用SQL 做你想做的事。
-
因此,您想在打开工作簿时从 SQL 中提取客户数据(从而获得新客户),然后重建客户增值税工作表,并可选择在客户刷新时重建客户增值税工作表?
-
您可以将新数据上传到 SQL 并全部获取,您可以使用 PowerQuery,您可以获取 SQL 数据并粘贴,然后获取其他数据并粘贴,您可以转换工作表数据到 SQL 上的 TempTable 或 TableVariable,然后将所有数据放在一起。这些只是几个选项。解决方案取决于要求和选项(速度、主数据管理、数据量、与 SQL 的连接速度等)。所以,请更具体一点。该帖子(在当前状态下)非常广泛。
-
@gofr1,是的,你理解正确。用户可以更改 Excel 表 - Country-VAT 表。关于“按需更新”——如果我使用 excel 开箱即用的工具“来自其他来源的数据”,则“刷新数据”按钮已经存在。
标签: sql-server excel powerquery