使用 EPPLUS 将带有 LoadFromCollection 的列表或数组添加到行范围

Add List or array with LoadFromCollection to row range using EPPLUS

尝试使用 EPPLUS 使用 ExcelRange 和 LoadFromCollection 将列表或数组添加到 excel 中的行,但填充的是列而不是行。代码:

List<string> cabeceras = new List<string>();
        cabeceras.Add("Fecha");
        foreach (ValidationParameterData estacion in informacionSeleccion.Parameters) {
            foreach (string parameter in estacion.Parameters) {

                cabeceras.Add(estacion.Station + parameter);
                cabeceras.Add("L");
            } 
        }
        string[] vals = cabeceras.ToArray();

        using (ExcelRange rng = ws.Cells[4,1,4,cabeceras.Count])
        {
            rng.Style.Font.Size = 16;
            rng.Style.Font.Bold = true;
            rng.LoadFromCollection(vals);//or cabeceras directly 
        }

同时尝试了数组和列表:

ExcelRange rng = ws.Cells["A4:M4"]  

发生同样的事情,A 列是从上到下填充而不是从左到右填充行,我做错了什么?还有其他功能吗?

感谢和问候

这是我解决问题的方法。请参阅此代码下方,了解我在 class 范围内的考验和磨难。

using System;
using OfficeOpenXml;
using System.Collections.Generic;
using System.IO;

namespace eeplusPractice
{
    class Program
    {
        static void Main(string[] args)
        {
            FileInfo newFile = new FileInfo(@"C:\Users\Evan\Desktop\new.xlsx");
            ExcelPackage pkg = new ExcelPackage(newFile);
            ExcelWorksheet wrksheet = pkg.Workbook.Worksheets[0];

            List<string> cabeceras = new List<string>();

            for (int x = 1; x < 5; x++)
            {
                cabeceras.Add("HELLO");
            }

            int row = 4;

            for(int col = 1; col <= cabeceras.Count; col++)
            {
                int counter = col;
                wrksheet.Cells[row, col].Value = cabeceras[counter];
            }

            pkg.Save();
        }
    }
}

我尝试使用 foreach 循环遍历 rng 对象,但只有一个 class 能够 运行,这与您在上面遇到的问题相同。它不得将范围内的每个单元格视为可以访问的不同对象。方法

如果我有时间,我可能会写一个方法 LoadRangeHorizo​​ntal,但现在 up top 应该可以正常工作。

GL 让我知道它是否有效。