VBA Excel,VLookup用于多个值计数

时间:2011-05-12 01:59:23

标签: excel vba excel-vba

我有一个excel文件。

 EmployeeName                   Expenses
 Ajay                                      2000
 Vijay                                     1000
 Ajay                                      1500
 Vijay                                     500

我想计算每位员工的开支数量。我可以像这样

获得Vlookup给定员工的第一笔费用
sExpense = XLApplication.VLookup("Ajay", Range("A1:B99"), 2, False)

但是如何才能找到给定员工的所有费用总和。

2 个答案:

答案 0 :(得分:5)

您可以使用excel提供的SUMIF功能:

例如

C6=SUMIF(A:A,"Vijay",B:B)

对于任何单元格匹配“Ajay”,它会查看A:A(A列)中的范围,并在B列中总计它们的总和

enter image description here

答案 1 :(得分:2)

Option Explicit

Public Sub test()
  Dim sExpense As String
  Dim range1 As Range
  Dim sumRange As Range

  Set range1 = Range("A2:A5")
  Set sumRange = Range("b2:b5")

  sExpense = Me.Application.WorksheetFunction.SumIf(range1, "Ajay", sumRange)

End Sub