我正在使用.Net 4.0和excel 2003
如何使用oledb连接检索excel电子表格的单元格格式...我特别想知道单元格列(或单元格本身)是否为数字百分比格式。
我似乎无法在GetOleDbSchemaTable方法中找到此信息。
EX:我的网络应用程序从Excel电子表格中读取数字。这很好用;但是,如果数字是百分比格式,excel将其显示为(分数* 100),但实际值为小数小数(1/3 = .3333 ..) - Excel显示为33.33% - (注意小数点) )。
因此,我需要一种区分百分比和百分比的方法。什么是不允许我的webapp正常工作......
有什么想法吗? 在此先感谢.....
答案 0 :(得分:0)
您可以使用OleDbConnection.GetSchema
获取此信息,但我不确定您将获得哪些信息可以获得Excel表格。文档here。
答案 1 :(得分:0)
搜索有问题的单元格(范围)的NumberFormat属性以获得%符号。
此外,如果您可以获得格式类型,那么您正在寻找以“P”开头的格式,例如“P1”。
编辑:我能看到的唯一方法是使用XML或自动化。对于自动化,您需要使用Interop Assembly。 命名空间: Microsoft.Office.Interop.Excel,接口: DisplayFormat,属性: NumberFormat。
答案 2 :(得分:-1)
你能不能将第一行数据作为字符串读取并解析它,在字符串中查找'%'。