2017-02-02 6 views
1

Я новичок в VBA и добился успеха в разработке VBA с использованием VBA Recorder. Однако у меня возникла проблема создания цикла CountIfs() для всех ячеек, содержащих значение «TT» в каждом столбце ИЛИ динамическом диапазоне одного столбца (с использованием .end (xldown)/.end (xlup))VBA CountIf() loop/Countifs() loop

Я бы опубликовал свой код, но, честно говоря, я нашел так много разных «ответов» на этот вопрос, что мне еще не удалось сформировать мой вариант использования, и я не думаю, что я очень близок к какой-либо индивидуальной методологии. (в конечном счете мне нужно расширить это, чтобы быть CountIfS() на основе других значений столбцов, но по одному шагу за раз) ...

СПАСИБО !!

ответ

1

Что об этом простом коде ---

Sub vbaCountIF() 
    Dim Rslt 
    Rslt = WorksheetFunction.CountIfs(Range("A:A"), "TT") 
    MsgBox Rslt 
End Sub 
+0

Используйте цикл для 'другого столбца values' и передать их в качестве критериев вместо' «TT» ' – harun24hr

+0

СЛАДКИХ! оно работает. Вероятно, я с самого начала переусердствовал. Если бы я хотел добавить дополнительные критерии, каков будет синтаксис countifs? –

+0

@ReedTurgeon Вы должны принять ответ accpet (отметьте как зеленый), если он сработает для вас. Для получения дополнительных критериев вы должны добавить 'Range' и' Criteria' как 'Rslt = WorksheetFunction.CountIfs (Range (« A: A »),« TT », Range (« B: B »),« Hello »)' – harun24hr