2013-06-03 2 views
1

У меня есть два листа: один есть вход, а другой ведущий.несколько критериев для sumifs

Снимок моего input листа приведен ниже:

Workers Name  WEEK  working hrs 
a11    w1  40 
a22    w5  30 
a33    w9  10 
a44    w10  80 

Снимок моего master листа приведен ниже (NB: имена работников уникальны)

Workers Name W1 W2 W3 W4 W5 W6 W7 W8 W9 W10  
a11    40        
a22         30 
a33              10 
a44               80 

Я хочу SUMIFS чтобы он мог дать результат для рабочих, работающих в моей таблице мастеров, в соответствующие недели (w1 - w13).

Я использую сумму IFS формулы для этого:

Sheets("Master").Range("B2:B" & Range("A" & Rows.Count).End(xlUp).Row).Formula = "=SUMIFS(Input!C32,Input!C37,Master!C1,Input!C31,Master!B1)" 

Любые предложения, как цикл его в VBA

Пожалуйста, помогите ....

+0

Какой код вы пытались достигнуть своей цели? –

+0

Для rw = 2 To LastRow Листы («Мастер»). Ячейки (rw, 2) .Value = Application.WorksheetFunction.SumIfs (Листы («Вход»). Диапазон («AF: AF»), Листы (" Диапазон значений («A»: «AE»), «Листы» («Мастер»), «Листы» («Мастер»), «Листы» («Мастер»)) .range ("B1")) next – user2440270

ответ

0

Мне очень жаль, но я m не уверен, что вам нужно vba - если вы знаете, какие критерии вашей строки и столбца находятся в главном, вы можете написать что-то вроде

=sumifs(workinghrs,workersname,$a2,week,b$2) 

Затем заполните его и поперек сетки.

NB Я использовал именованные диапазоны для вашего входного листа для удобочитаемости