search一个区分大小写的sumproduct函数的VBA版本

我正在寻找的是关于哪个公式使用macros的build议。 这个macros是为了在一个string中search一个string(“CAN”),然后返回所有对应的数字值的总和,从一行3列开始,只要区分大小写的string存在。

我search了vlookup的VBA版本,尝试了sumproduct,索引/匹配等等,但是这个macros的大小写不仅区分大小写,而且也是多个数值的总和,导致了所有这些函数的障碍。

我不是一个有经验的程序员,如果这个职位太模糊,我很抱歉。 为了使这个更简单(希望),我正在寻找的是最好的函数,如果我想要一个macros,可以采取以下列表,search“苹果”,并具有值21返回。

如果这不是什么这个网站是…只是让我知道,我会删除这个职位。

Oranges Apples $10 apples Oranges $12 Pears Grapes $14 Grapes Oranges $18 APPLES Oranges $19 Oranges Pears $16 Apples Oranges $11 

我会在这里重申一下:看看数据透视表 。 起初他们有点吓人,但他们的目的是跟踪这种数据。 该链接提供了一个教程。

如果你坚持认为这是在VBA中完成的,这应该很容易,因为VBAstring比较是区分大小写的。

基本上,你想循环遍历每个单元格的列(你可以使用for循环rows.count这个,或者像下面做的while循环)。 然后比较每个单元格的值为“CAN”。 如果相等,则total = total + cell.offset(0,2).value。

编辑

Excel工作簿

 Sub countApple() Dim total As Integer Dim i As Integer Dim col as Integer total = 0 i = 1 col = 1 'This will search A. 2 would search B, and so on While Not Worksheets("sheet1").Cells(i, col).Value = "" If Cells(i, col).Value = "Apple" Then total = total + Cells(i, col).Offset(0, 2).Value End If i = i + 1 Wend MsgBox (total) 'Displays 8 End Sub 

这段代码可以工作(假设A中没有空行)。 如果有什么你不明白的,请不要犹豫与我联系:)