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

VBA使用For Each Cell遍历列范围如何实现从底部行向上倒序遍历

VBA 列范围从底部到顶部倒序遍历实现方案

VBA 中For Each遍历单元格范围时默认按照从上到下、从左到右的固定顺序执行,无法直接调整遍历方向,要实现倒序遍历可通过行号倒序循环的方式实现,具体修改如下:

适配你原需求的固定范围(B1:B1000)代码

Dim i As Long
Dim c As Range
Dim ws As Worksheet
Set ws = Workbooks("NX01").Worksheets(homeleague)

' 从B1000开始倒序遍历到B1,Step -1 代表每次循环行号减1
For i = 1000 To 1 Step -1
    Set c = ws.Range("B" & i)
    If c.Value <> "" And c.Value = hometeam Then
        ' 此处粘贴你原本要执行的操作代码
    End If
Next i

可选优化:适配动态范围(不用写死1000行)

如果B列的有效数据行数不固定,可以先自动获取最后一行有数据的行号再遍历,避免遍历无效空行:

Dim i As Long
Dim lastRow As Long
Dim c As Range
Dim ws As Worksheet
Set ws = Workbooks("NX01").Worksheets(homeleague)

' 自动获取B列最后一个有内容的行号
lastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row

' 从最后一行倒序遍历到第1行
For i = lastRow To 1 Step -1
    Set c = ws.Range("B" & i)
    If c.Value <> "" And c.Value = hometeam Then
        ' 此处粘贴你原本要执行的操作代码
    End If
Next i

内容的提问来源于stack exchange,提问作者Cincinnati Kid

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 13:15:01