【发布时间】:2015-06-24 00:06:53
【问题描述】:
我正在尝试在 VBA 中为 excel 编写一个程序,该程序将搜索一列“名称”,如果该名称中包含区分大小写的字符串“CAN”,那么第 6 列将是加到总数中(canadaTotal)。这就是我到目前为止所拥有的......问题出在 instr/isnumeric 部分。我确定我用错了其中一个。如果有人可以提供替代解决方案或快速修复,我将不胜感激。
(提示...我不确定是否可以使用我的“搜索”变量作为 instr 函数的第二个输入...)
Private Sub CommandButton5_Click()
Dim i As Integer
Dim col As Integer
Dim canadaTotal As Integer
Dim search As String
Dim canadaCheck As Long
i = 1
col = 4
canadaTotal = 0
Worksheets("sheet1").Activate
While Not Worksheets("Sheet1").Cells(i, col).Value = ""
search = Cells(i, col).Value
If IsNumeric(InStr(0, search, "CAN")) Then
canadaTotal = canadaTotal + Cells(i, col).Offset(0, 6).Value
End If
i = i + 1
Wend
MsgBox (canadaTotal)
End Sub
【问题讨论】: