我有SSIS包,它将数据从表导出到Excel文件
控制流 :-
数据流 :-
这是我的步骤: –
>删除Excel表
>创建Excel表,其格式为我的Select Query,用于从数据库中检索数据
>将数据从数据库插入Excel文件
我使用查询像选择*从表格 – 某些情况
我从10000行中检索3000行,并在我的Excel工作表中放入3000行.
但是当打开我的Excel工作表时,我看到滚动条直到第10000行并且结束,因此我的Excel工作表尺寸也增加了.如何减少我的Excel纸张尺寸?我的excel表只包含3000行,那么为什么空白单元格会持续到第10000行?
解决方法
我相信您的问题与您用于创建文件的方法有关.您有两种选择,两者都应该解决您的问题:
解决方案#1:
您可以使用这些预定义列创建Excel文件,基本上是空输出文件 – 这将充当您的“模板文件”.你的流程将是这样的:
>文件系统任务 – 将模板文件复制到输出或工作目录(必要时重命名)
> OLEDB源任务 – 查询数据来源(3000)
>数据转换任务
> Excel目标任务 – 将数据放入新的Excel文件中
注意:您已完成第2步到第3步,只需确保连接到新的Excel文件即可.此外,为了澄清,步骤1在控制流程任务之外.
这种方式很有用,因为您始终有一个空白且格式一致的Excel文件可供复制和使用.
解决方案#2:
另一个选项是使用脚本任务并创建Excel文件 – 您还可以在此任务中将数据加载到文件中.这需要对VB.NET或C#有一些基本的了解.基本上你需要一个XLS库(如NPOI).这更复杂,但为您提供最佳功能.
我建议您尝试解决方案#1,看看它对您有何帮助.