Try
Sub test()
Dim a, b, i&, wsM As Worksheet, ws As Worksheet, r As Range
Set wsM = Sheets("Master sheet ")
a = wsM.Range("b1", wsM.Range("b" & Rows.Count).End(xlUp)).Resize(, 2).Value2
ReDim b(1 To UBound(a, 1), 1 To 1)
For i = 2 To UBound(a, 1)
For Each ws In Worksheets
If Not ws Is wsM Then
Set r = Intersect(ws.UsedRange, ws.Columns("a:g"))
b(i, 1) = b(i, 1) + ws.Evaluate("sumif(" & r.Columns("b").Address & _
",""" & a(i, 1) & """," & r.Columns("g").Address & ")")
End If
Next
Next
wsM.[e1].Resize(UBound(b, 1)) = b
End Sub