You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改VBA循环,仅遍历Excel表格数据行且排除表头?

解决VBA遍历表格数据行的问题

修改后的代码

For Each r In Sheet20.ListObjects("Table24").ListRows
    d(r.Range.Cells(1, 2).Value) = 1
Next

问题原因说明

  • VBA中单元格索引是1-based(从1开始),原代码里的Cells(0, 2)会向上偏移一行,指向表格的表头行,这就是你误以为循环包含表头的原因。
  • ListObjects("Table24").ListRows本身就是表格的所有数据行集合,不包含表头,所以循环结构不需要调整,只需要修正单元格引用的索引即可。
  • 遗漏最后一行的问题也是因为Cells(0, 2)的无效索引导致的,改为Cells(1, 2)后就能正确获取最后一行的第二列数据。

内容的提问来源于stack exchange,提问作者71GA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 06:09:50