Новости:

Новая редакция правил форума: 2.4. Если вопрос или ответ содержится во вложенном файле, все-равно кратко описывайте в сообщении вопрос или суть решения. Это необходимо, чтобы тему можно было найти через поиск.

Главное меню

сложение по заданному условию столбцов по строкам через интервал

Автор Вайпер, 24.07.2014, 23:47

« назад - далее »

Вайпер

Добрый день! Нужна ваша помощь...
Необходимо произвести проверку по 3й строке...и если там значение "Токарный"...то выдать общую сумму значений на пересечении столбцов "Токарный" и "Дефицит". Т.е. в данном примере сложить 4 числа - D6, G6, D9, G9. Строк вниз будет не меньше 100..."Дефицит" чередуется через каждые 2 строки.
Спс заранее

andrewkard

Можно макросом:
Sub SumDef()
    Dim iSum&, i&, lLr&: iSum = 0
    Dim sFormula$
    lLr = Cells(Rows.Count, "G").End(xlUp).Row
    For i = 7 To lLr Step 3
        iSum = iSum + Cells(i, 4).Value + Cells(i, 7).Value
        sFormula = sFormula & "D" & i & "+G" & i & "+"
    Next i
    sFormula = Mid(sFormula, 1, Len(sFormula) - 1)
    Range("K5").Value = iSum 'Значение
    Range("K6").Formula = "=" & sFormula 'либо формула
End Sub

gling

Здравствуйте. Попробуйте такую формулу[code]=СУММЕСЛИ($B$4:$B$9;"Дефицит";ИНДЕКС($C$4:$I$9;;ПОИСКПОЗ("Токарный";$C$3:$I$3;0)))[/code]
mail: vovik100661@gmail.com;
ЯД-41001506838083.

gling

mail: vovik100661@gmail.com;
ЯД-41001506838083.

Вайпер

ЦитироватьА может так надо?
Код: [Выделить]
=СУММПРОИЗВ(($B$4:$B$9=$B$6)*($C$3:$G$3=$G$3)*($C$4:$G$9))
Спс большое - работает!
Не могли бы пояснить один момент?.. в формуле $B$4:$B$9=$B$6...$B$4:$B$9-это понятно диапазон, а =$B$6-условие поиска? т.е. формула ищет все ячейки с таким же значением? Иначе можно задать и =$B$9 ?

gling

Цитировать=$B$6-условие поиска?
Да, что бы не писать словами указал на ячейку где это написано. Можно сделать выпадающий список и выбирать что нужно подсчитать.
mail: vovik100661@gmail.com;
ЯД-41001506838083.

andrewkard

Еще вариант в лоб:
=СУММЕСЛИ(B5:B10;B10;D5:D10)+СУММЕСЛИ(B5:B10;B10;G5:G10)
либо такой
=СУММПРОИЗВ(--(B5:B10=B10);D5:D10+G5:G10)

Вайпер