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

如何为VBA宏添加IF条件实现指定供应商价格上调

修改AUMENTAR宏实现指定供应商调价

以下是修改后的VBA代码,加入供应商匹配逻辑,仅对B列与G4单元格供应商编号一致的行,执行D列价格上调操作:

Sub AUMENTAR()
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim supplierId As Variant
    Dim i As Long
    
    ' 指定操作的工作表,可根据实际需求修改
    Set ws = ThisWorkbook.ActiveSheet
    ' 获取G4单元格的目标供应商编号
    supplierId = ws.Range("G4").Value
    ' 获取B列数据的最后一行(假设表头在第1行,数据从第2行开始)
    lastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row
    
    ' 遍历所有数据行
    For i = 2 To lastRow
        ' 判断当前行B列是否匹配目标供应商编号
        If ws.Cells(i, "B").Value = supplierId Then
            ' 此处保留你原宏的价格上调逻辑,示例为上调10%,可替换为你的原有代码
            ws.Cells(i, "D").Value = ws.Cells(i, "D").Value * 1.1
        End If
    Next i
    
    MsgBox "指定供应商调价完成!", vbInformation
End Sub

关键修改说明:

  • 提前将G4的供应商编号存入变量supplierId,避免循环中重复读取单元格,提升执行效率
  • 循环遍历数据行时增加If条件判断,仅处理B列值与目标供应商编号匹配的行
  • 原宏的价格上调逻辑(示例为按10%比例上调)被包裹在条件判断内部,确保只作用于匹配行

如果你的原宏有特定上调规则(比如固定金额上调、阶梯比例调整等),直接替换示例中ws.Cells(i, "D").Value = ws.Cells(i, "D").Value * 1.1这一行即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 10:35:41