【发布时间】:2016-01-25 18:49:38
【问题描述】:
我需要运行一个宏来修复 Excel 工作表中的年份。 “Nov-Jan”左边的年份是 2010 年,但我添加 + 1 使其成为 2011 年。然后循环需要找到下一个“Nov_Jan”并执行相同的 2011 + 1 = 2012 年。停止循环我知道我需要计算“Nov-Jan”的实例数并运行它尽可能多的实例。所以只有 4 个“Nov-Jan”,循环只运行 4 次。下面的代码在同一个单元格中运行循环,并且不会继续寻找下一个“Nov-Jan”。我不知道为什么。我有一张图片显示我需要从“之前”->“之后”开始,但我的代码来自“之前”->“我拥有的”。
Dim iCount As Integer
Dim i As Integer
i = 1
iCount = Application.WorksheetFunction.CountIf(Range("B:B"), "Nov - Jan")
Cells.Find(what:="Nov - Jan", after:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
Do Until i > iCount
i = i + 1
ActiveCell.Offset(0, -1).Select
ActiveCell.Value = ActiveCell.Value + 1
Cells.Find(what:="Nov - Jan", after:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
Loop
我需要从“之前” -> “之后”,但我的代码来自“之前” -> “我拥有的”
【问题讨论】: