首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SSIS (C#或VB):删除目录中所有excel文件中的第1-12行

SSIS (C#或VB):删除目录中所有excel文件中的第1-12行
EN

Stack Overflow用户
提问于 2018-08-07 03:43:15
回答 1查看 1.1K关注 0票数 1

在从多个excel文件导入数据之前,我需要消除每个工作表中的前12行。我将使用代码这个解决方案进行批量处理脚本任务。

问题:

  • 我应该在脚本中插入什么代码来删除行?(我想就在//Load the DataTable with Sheet Data so we can get the column header之后);或
  • 如何修改此代码,使其从第13行开始读取excel文件;或
  • 我应该在大容量删除脚本之前插入什么SSIS任务?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-08 12:14:37

这是一种遍历纸张的方法:

创建数据流任务,将工作表名称读入ADO对象。

第一项是作为源的脚本组件。我有一个连接字符串到Excel电子表格的变量。

创建了SheetName的输出

下面是读取选项卡名称的代码:

您基本上是在用oleDB打开电子表格。将表名放入数据表中

循环遍历数据表并写出要输出的行。

一定要关闭连接!如果不这样做,以后可能会导致错误。

下一步是一个条件拆分,因为由于某种原因,结果有标签名的重复,并且它们都以'_‘结尾。

下一步是派生一个列,以清除exta“‘的工作表名。

创建一个类型为Object的变量:我命名为of ADO_Sheets

插入记录集目标对象: 1.将变量设置为您刚刚创建的变量。2.映射干净工作表的列。

现在回到Control流,并设置一个foreach循环控件:

配置前奏..。枚举器: Foreach枚举器源: ADO_Sheets变量映射:设置为一个名为SheetName的变量

我在循环中有一个函数任务,但是它更容易理解,它可能是在变量中向下的:

这个变量现在是从页面中提取数据的选择。

最后是要运行的数据流任务。

的许多工作,但我经常使用这个,我想我会分享!

向Excel (xlsx)添加有关连接字符串的信息

Excel 2010 Xlsx文件连接到具有Xlsx文件扩展名的Excel 2007 (及更高版本)文件。这是禁用宏的Office Open XML格式。

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myExcel2007file.xlsx;扩展Properties=“Excel12.0 Xml;HDR=YES";

"HDR=Yes;“表示第一行包含列名,而不是数据。"HDR=No;“表示相反。

来源:https://www.connectionstrings.com/ace-oledb-12-0/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51718525

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档