bluealga_vx 2022-06-11 10:52 采纳率: 40%
浏览 398
已结题

C#读取EXCEL,如何从第2行开始读取?

问题遇到的现象和发生背景

C#读取EXCEL,想在第2行开始读取,因为第1行做说明行,第2行做标题行;

问题相关代码,请勿粘贴截图
运行结果及报错内容

以上代码是整个SHEET1读取

我的解答思路和尝试过的方法
我想要达到的结果

进一步说,读取能否框定行和列的范围?

  • 写回答

6条回答 默认 最新

  • CSDN专家-showbo 2022-06-11 11:49
    关注

    驱动不要配置HDR=No;,这样DataTable填充的数据自动去掉第一行,然后用第二行(对应DataTable已填充中的第一行)更新下DataTable的Column名称后删除第一行数据完成操作

    myCommand.Fill(ds, "table1");
    
    /////////////////////////DataTable Columns 名称更新操作开始
    
    var dt = ds.Tables[0];//获取DataSet中的第一个表,就是table1,使用下标而不是表名称
    var colCount = dt.Columns.Count;//列数量
    //更新Table的列名称
    for (var i = 0; i < colCount; i++) dt.Columns[i].ColumnName = dt.Rows[0][i].ToString();
    //删除表头数据行
    dt.Rows.RemoveAt(0);
    
    /////////////////////////DataTable Columns 名称更新操作结束
    
    return ds;
    
    

    测试效果如下

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(5条)

报告相同问题?

问题事件

  • 系统已结题 6月23日
  • 已采纳回答 6月15日
  • 创建了问题 6月11日

悬赏问题

  • ¥15 Qt4代码实现下面的界面
  • ¥15 prism提示我reinstall prism 如何解决
  • ¥15 asp.core 权限控制怎么做,需要控制到每个方法
  • ¥20 while循环中OLED显示中断中的数据不正确
  • ¥15 这个视频里的stm32f4代码是怎么写的
  • ¥15 JNA调用DLL报堆栈溢出错误(0xC00000FD)
  • ¥15 请教SGeMs软件的使用
  • ¥15 自己用vb.net编写了一个dll文件,如何只给授权的用户使用这个dll文件进行打包编译,未授权用户不能进行打包编译操作?
  • ¥50 深度学习运行代码直接中断
  • ¥20 需要完整的共散射点成像代码