c# - 在 C# 中写入 Excel 文件

标签 c# excel

我有一个 Excel 文件,我能够逐个单元格地从“Excel 文件”中读取单行并将其存储在 ArrayList 中。 ExcelRange一次读取一行,存入ArrayList(arrForValues)。

ExcelRange = ExcelWorkSheet.get_Range("A"+rowNumber,columnMaxName+rowNumber );
items = (object[,])ExcelRange.Value2;

for (int i = 1; i <= nColumn; i++)
{
    arrForValues.Add(items[1, i]);
}

我想将行写入另一个 Excel 文件。“特定行”需要满足一些条件才能被选中进行写入。

有什么方法可以将完整的 ArrayList("Single Row") 写入 ExcelFile 而不是逐个单元格写入。

提前致谢。

最佳答案

您可以使用范围的 set_value 方法编写整个对象数组

例子如下:

class Program
    {
        static void Main(string[] args)
        {
            string file = AppDomain.CurrentDomain.BaseDirectory + "SetArrayToExcel.xlsx";
            Excel.Application excelApp = new Excel.Application();
            excelApp.Visible = true;
            Excel.Workbook wb = excelApp.Workbooks.Open(file, Type.Missing, Type.Missing
                , Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing
                , Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing
                , Type.Missing, Type.Missing);
            object[,] testTable = new object[2, 2]{{"6-Feb-10", 0.1}, {"26-Mar-10", 1.2}};
            Excel.Worksheet ws = wb.ActiveSheet as Excel.Worksheet;
            Excel.Range rng = ws.get_Range("rngSetValue", Type.Missing);


            //rng.Value2 = testTable;
            rng.set_Value(Type.Missing, testTable);
        }
    }

关于c# - 在 C# 中写入 Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9860411/

相关文章:

c# - BufferBlock 和 TPL 数据流行为

c# - 查找 IEnumerable 对象的类型

c# - Xamarin 应用程序 Release模式下的 NullReferenceException

perl excel转pdf

c# - Excel 互操作应用图表模板

c# - Caliburn Micro 发布/订阅

c# - 在 WPF MVVM 中验证和保存数据如何正常工作?

java - 诡异的 Java 反射错误

Excel - 如何转换 UTC 日期时间

c# 错误 : “Could Not Find Installable ISAM” in converting Excel file into . CSV 文件