【问题标题】:How to create Excel file from List<string> using Microsoft.Office.Interop.Excel如何使用 Microsoft.Office.Interop.Excel 从 List<string> 创建 Excel 文件
【发布时间】:2013-04-08 02:38:20
【问题描述】:

我有一个包含一些值的列表,我还有一个文本框,我必须在其中写一个数字,然后我需要构建一个包含许多表的 Excel,其中的值来自列表。换句话说,例如:List 有 1000 个值,然后我在 TextBox 中输入 100,因此我需要生成一个包含许多工作表的 Excel 文件,因为 List 中的值在这种情况下迭代在 TextBox 中输入的值将是一个包含 10 个工作表的 Excel 文件,每个工作表有 100 个单元格。天气晴朗?如何使用 Microsoft.Office.Interop.Excel 做到这一点?

【问题讨论】:

  • 好的,你能告诉我们你尝试了什么吗?看起来您对问题的描述很清楚,您希望我们为您编写它吗?
  • @tnw 不,我只是想获得一些想法,因为我知道编写一个单元格但不知道编写多个单元格和创建工作表的代码,这就是我要问的
  • @tnw 我也在阅读this,但对我来说根本不清楚,我不是 C# 专家,这是我的第一步
  • 向我们展示您在这里尝试过的内容,我们将从那里开始。
  • 在这里,在您付出适当的努力之前,您通常不会得到任何答案。这意味着研究、对问题的合理和可证明的尝试,以及另外构建一个经过深思熟虑的问题使用代码示例您遇到特定问题。我并不是要粗鲁,但在提问之前完成这些步骤是所有技能水平的程序员都绝对期望的。

标签: c# excel c#-4.0 excel-interop


【解决方案1】:

对于工作表:

//get the first workbook in an application
Workbook WB = Application.Workbooks[0]; //Or any other workbook you preffer

Now loop the following for each list of strings you have (each list to a worksheet)
    Worksheet WS = (Worksheet)WB.Worksheets.Add(); //this command adds worksheets
    Range R = WS.Range["A1"];  //or any other cell you like

    //now for cells
    for (int i = 0; i < YourStringList.Count; i++) //I believe you can manage to separate the lists yourself
    {
        R.Offset[i, 0].Value = YourStringList[i];
    }
End of the loop 

【讨论】:

  • 我对此有疑问,此代码将创建一个带有一个工作表的工作簿,对吗?这是即时创建的?如何保存此文件以获取 Excel 文件?我应该添加一个 saveDialog 组件以保存文件吗?我有点迷路了
  • 工作簿代表一个文件。代码是使用Workbooks[0] 获取excel 应用程序中的第一个工作簿。您也可以使用Workbooks.Add 添加工作簿。工作簿具有带有一些选项的“保存”方法(如果您愿意,可以使用对话框)。是的,我为您提供了创建单个工作表的代码,但是您可以在单个工作簿中创建任意数量的工作表。您可以在循环中使用Worksheets.Add 来创建与您拥有的列表数量一样多的列表。 (修正了代码错误,请查收)
  • 嗯,我被你的编辑弄糊涂了!如果您阅读我的第一个问题,我会说我将根据YourStringList.Count/TextBox1.Text 制作 10 张纸,这就是您在这里所说的吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-09-30
  • 1970-01-01
  • 1970-01-01
  • 2013-07-01
  • 2020-03-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多