繁体   English   中英

如何转换xlsx文件中的数据,以删除单元格中的合并并使用SSIS将某些列转置为在SQL Server中接收数据?

[英]How can I transform data in xlsx file removing merge in cells and transposing some columns to ingest data in SQL Server using SSIS?

我有一个按原样制作的电子表格数据源,在某些列中应用了合并,并且每周数据列以增量格式使用,例如,对于2019W12,将填充下一列(R列)。

电子表格数据源

电子表格数据源

我需要解析电子表格内容并使用SSIS加载到SQL Server表中,建议的格式为:

拟议的电子表格数据转换

拟议的电子表格数据转换

我尝试了一些替代方法,例如在SSIS中应用转换,但是在下周的加载作业中出现了列增量案例异常,我尝试使用Python(xlrd)解析和拆分电子表格数据,但未成功将数据从F列转置和关联到' N',列从A到E。有人会遇到这种类型的问题,即使用SSIS将电子表格数据摄取到SQL Server中吗,还是有另一种逻辑方式在摄取之前转换数据?

将问题拆分为子任务

根据您的问题,您希望实现三个主要功能:

  1. 寻找一种有效的方式来处理Excel文件
  2. 取消合并单元格并填充重复值
  3. 将行转置为列

可能的解决方案

为了执行复杂的转换,您必须使用以下方法之一来执行此操作,因为它提供了可以在Microsoft Excel中完成的所有功能:

  1. .Net Microsoft.Office.Interop.Excel库(C#或VB.NET)
  2. Excel VBA

您正在寻找的解决方案非常复杂,并且非常针对该问题,因此您必须自己实现逻辑。 我将提供一些链接来帮助您实现这一目标:

有用的网址

取消合并单元格并填充重复值

使用C#处理Excel文件

转置Excel行

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM