【问题标题】:How to preserve formatting when inserting rows in Excel在 Excel 中插入行时如何保留格式
【发布时间】:2013-04-19 16:16:10
【问题描述】:

我有一个小程序可以在现有的 excel 文件中插入行。在某些列上,它以某种方式格式化,例如居中粗体和数字列。当我从 excel 中的外部源将数据提取到 excel 文件中时,格式会被保留。但是当我使用 C# 将数据推送到 excel 文件中时,格式会被剥离。这是我正在使用的代码

using (OleDbConnection conn = new OleDbConnection(string.Format(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=""Excel 12.0 Xml;HDR=YES"";Jet OLEDB:Engine Type=37", exportPath)))
{
     conn.Open();
     OleDbCommand comm = new OleDbCommand(q, conn);
     comm.Parameters.AddWithValue("@MyNumber", record.MyNumber);
     comm.Parameters.AddWithValue("@Revision", record.RevisionChange);
     comm.ExecuteNonQuery();
}

任何想法

【问题讨论】:

  • 你可以使用 Microsoft.Office.Interop 吗?如果是这样,您可以在插入后恢复格式。可能有更好的方法。
  • 是的,我可以使用互操作,但这将是很多工作。这就是为什么我有一个已经具有格式的文件。如果有任何其他想法,请告诉我

标签: c# excel oledb excel-2010


【解决方案1】:

使用 execl 文件时,请避免使用互操作 dll。最好的方法是使用 NPOI dll,以防您需要比简单 sql 更多的功能。

您可以轻松应用字体或任何其他格式。我相信它也会保留任何现有的格式

codeplex免费下载有很多例子

【讨论】:

  • 我想这就是我所追求的。如果它可以在足够长的时间内插入数千条记录,我肯定会使用它。我会让你知道会发生什么
  • 如果它帮助您解决问题,请选择此答案。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-29
  • 2018-09-13
  • 1970-01-01
  • 1970-01-01
  • 2018-03-03
  • 1970-01-01
相关资源
最近更新 更多