繁体   English   中英

Excel VBA基于另一个字符串计算一个单元格

[英]Excel VBA calculate one cell based on string from another

我想根据来自不同单元格的字符串中的关键字对另一个单元格执行简单计算。 例如,列H可能具有“购买50,000股”的描述。 如果单词Purchase出现,我希望将B列多个-1。 是否可以从字符串中的关键字构建条件?

您可以在公式或VBA中执行此操作。

在公式中,假设B1之前有内容X,则更改为公式=(X)* IF(ISNUMBER(SEARCH(“Purchase”,H1)), - 1,1)

在VBA中,试试这个

Sub NegateB_IfPurchaseH()
Dim celB As Range
Dim celH As Range
Dim celPtr As Range

' you can change 1:10 to any other range
Set celB = Range("B1:B10")
Set celH = celB.Cells(1, 7)

For Each celPtr In celB
    If InStr(1, celPtr.Cells(1, 7).Value, "purchase", vbTextCompare) > 0 Then
        celPtr.Formula = "=-" & Mid(celPtr.Formula, 2)
    End If
Next
End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM