【问题标题】:application that will create an excel and read values from another excel [closed]将创建一个excel并从另一个excel中读取值的应用程序[关闭]
【发布时间】:2011-07-10 07:52:34
【问题描述】:

我需要帮助来创建一个程序

  1. 只需按一下按钮即可创建一个 excel 文件,它还会填充一些单元格
  2. 然后另一个按钮将打开一个打开文件对话框,选择另一个 Excel 文件,程序必须从中读取一些值,计算
  3. 在程序中返回结果或/并在新的 excel 中导出结果

欢迎任何想法,如果有人知道,请至少告诉我从哪里开始。
对于这样的项目,C# 和 Visual Studio 2010 是一个不错的选择,还是我应该使用其他语言?
如果我决定继续使用 c#,我在哪里可以找到从我的程序中操作 excel 的命令列表?

提前感谢您的宝贵时间!!!

【问题讨论】:

  • 为什么不用csv文件格式,用逗号或;分隔,可以用excel打开,而且有excel文件功能。这很简单。
  • @Saeed csv 不幸的是对我不起作用,因为该程序应该由没有经验的用户使用,而且因为一旦创建了第一个 excel,用户还必须填写一些单元格@Muhammad 感谢您的建议,但该线程并没有以某种可靠的解决方案结束,我已经尝试了大多数建议的库,但它们中的大多数都没有提供一个可以使用的命令的干净和有组织的表格那些库......那个案例有无数线程,为什么没有“最终”或“普遍接受”的解决方案?
  • @chris deneb:为什么不直接使用 Excel-VBA?这一切都很简单。
  • @Jean Francois 感谢您的回答,我知道有很多方法可以更好、更有效地完成该项目,但这是为了我的学位,所以不幸的是我不能使用任何其他方式......必须是用户从中导入 excel 的程序,并且该程序将从 excel 中的数据计算比率。程序也应该有能力创造那些优秀的

标签: c# asp.net visual-studio excel


【解决方案1】:

几年前我学到了一个聪明的技巧......我猜它今天仍然有效......

使用 ole 连接,您可以简单地“连接”到一个 excel 文件,就像它是一个数据库一样(您也可以使用 csv 文件执行此操作)...

首先要做的是连接到您的两个 excel 文件:

using(OleDbCommand com = new OleDbCommand ("select * from sheetName", new OleDbConnection(excelFilePath)))
{
   com.Connection.Open();
   IDataReader reader = com.ExecuteReader();
   // do stuff with the sheet data
   com.Connection.Close();
}

如果你把它包装在一个方法或其他东西中,你可以从工作表 1 中选择,以及另一个方法,插入或更新工作表 2(在其他文件中)。

不记得我在哪里找到的……虽然不错,但很整洁:)

...所以底线...

将您的 excel 文件视为数据库 :)

【讨论】:

  • 非常感谢!如果我让这个工作接缝非常好的解决方案,那就太好了!但到目前为止我有两个错误 1.“找不到类型或命名空间名称'Olecommand'(您是否缺少 using 指令或程序集引用?) 2.我尝试添加 Using System.Data 的 Oleconnection 也是如此。 Oledb; 没用,然后我尝试添加一些引用,但仍然没有...我该怎么办?
  • 我找到了!!!它通过添加“使用 System.Data.Oledb”而没有额外的参考来工作,唯一的区别是我将“OleCommand”写为“OleDbCommand”,将“OleConnection”写为“OleDbConnection”再次感谢!
  • 我的错...错字(我确实是从头部 ram 做的)大声笑...很高兴我能帮上忙 :) ...我已经更新了示例以反映您的更改 :)跨度>
  • 读取特定单元格的代码是什么?你知道在“用工作表数据做东西”区域;)我需要打开一个带有 openfile 对话框的 .xls 然后自动读取一些特定的单元格并将它们的值复制到我的应用程序主窗体中的 datagridview 中
  • 我想问的是 OleDbConnextion 会将整个 excel 导入到我的数据网格中......我需要做一些计算,然后只将结果导入数据网格中。 . 这可能吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-15
  • 2013-01-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-26
相关资源
最近更新 更多