尝试将List写入excel工作簿时,我遇到了一个简单的问题。在字符串上它的工作完美,但问题是如何将列表放入excel
public List<string> _RoomType = new List<string>();
Excel.Range RoomType = (Excel.Range)_sheet.get_Range(_sheet.Cells[22, "B"] as Excel.Range, _sheet.Cells[25, "B"] as Excel.Range);
for (int i = 0; i < _RoomType.Count; i++)
{
RoomType.set_Value(Type.Missing, _RoomType[i]);
如果我正在使用for循环,它只从22B到25B设置列表中的第一个值 如果我不使用'for'visual studio给我异常:来自HRESULT的异常:0x800A03EC 有谁可以帮助我?
答案 0 :(得分:2)
您需要将二维数组传递给set_Value方法。您必须确保列表中的项目数等于您范围内的单元格数。
Object[,] dataArray = new object[1, _RoomType.Count];
for (int i = 0; i < _RoomType.Count; i++)
{
dataArray[0, i] = _RoomType[i];
}
RoomType.set_Value(Type.Missing, dataArray);