2017-04-25 78 views
1

使用现有的SSIS包,我试图导入从客户端收到的.xlsx文件。我收到错误消息:什么.xlsx文件格式是这样的?

外部表不是预期的格式

  • 这些文件将在XL
  • 当我使用XL(目前XL2010)打开另存为。 ..该文件未作任何更改:
    • 新文件导入就好了
    • 新的文件是330%的原始文件
    • 改变的.xlsx为.zip当的大小和调查使用WinZip内容:
      • 原始文件只有4个.xml文件和_rels文件夹(2周的.rels文件): Original file
      • 新文件预期的.xlsx内容: New file

有谁知道这可能是什么样的文件?

这将是很好,开发我的SSIS包与这些原始文件,而不必打开并重新保存每个文件。只有12个文件,所以如果没有其他选项,打开/保存每个文件并不是什么大不了的事情,而且我可以在VBA向前进行自动化。

感谢所有帮助任何人都可以提供,

CTB

+0

您好版主,如果您愿意,请不要更改我的标签。这不是一个真正的SSIS/ETL/SQL Server问题。我提到SSIS只是一种旁白。我有一个全方位的工作(换句话说:保存为真正的XL文件),让这些文件与现有的导入包一起导入。我更感兴趣的是找到关于这些文件结构的任何信息......它们是否损坏?......它们是非MS电子表格应用程序创建.xlsx文件的尝试吗?......它们是从一些3rd-派对系统?Thx – InigoMontoya

+0

我提供了一个答案,并仍在等待反馈 – Hadi

回答

0

有很多Excel file formats

你试图导入可能有另一个Excel格式,但扩展名更改为.xlsx文件(它可能被其他人编辑),或者也可与不同的Excel版本中创建。

有一个称为TridNet File Identifier的第三方应用程序,它是一个实用程序,旨在从其二进制签名识别文件类型。您可以使用它来指定指定文件的实际扩展名。

同样在对External table is not in the expected format进行简单搜索后,如果连接字符串中支持的excel文件的定义(或版本)与所选文件不同,则会引发此错误。检查在Excel连接管理器中使用的连接字符串。这可能有助于识别文件的版本。