VBA代码添加HP-1判断条件:如何正确使用ElseIf?
VBA代码修正方案
原代码的语法问题
原代码末尾的Loop EndIf是错误写法,多余的EndIf会直接导致运行报错,同时代码缺少判断HP-1的逻辑分支。
修正后的代码
Sheets("TRIM").Select Range("D13").Select Do Until ActiveCell.Offset(0, -1).Value = "" If ActiveCell.Value <> "" Then ' 判断单元格值是否为HP-1 If ActiveCell.Value = "HP-1" Then ActiveCell.Value = "16 GA." Else ActiveCell.Value = "26 GA." End If End If ActiveCell.Offset(1, 0).Select Loop
代码逻辑说明
- 移除了原代码末尾多余的
EndIf,修复语法错误 - 在原有的非空判断内部新增嵌套逻辑:
- 当目标单元格值为
HP-1时,设置为16 GA. - 其他非空值统一设置为
26 GA.
- 当目标单元格值为
- 保留原循环逻辑:从D13开始向下遍历,直到左侧(C列)对应单元格为空时停止循环
内容的提问来源于stack exchange,提问作者Brian
相关产品推荐
相关产品推荐

