2016-05-11 3 views
0

У меня есть две функции рабочего листа, которые отлично работают при вводе их непосредственно в ячейку, но когда я пытаюсь запустить их через код VBA, он не работает. Функции заключаются в следующем:Функция рабочего листа в коде VBA

=COUNTIFS(B:B,">"&DATE(2015,12,31),I:I,"<>"&"",G:G,"=FALSE") 

=SUMIFS(I:I,B:B,">"&DATE(2015,12,31),G:G,"=FALSE") 

функции предназначены, чтобы быть в ячейки J14 соответственно J15

Могу ли я написать код, который делает ту же работу? Спасибо заранее!

+1

Не мог бы вы более тщательную проработку «[...], но когда я пытаюсь запустить их через код VBA не работает.» ? Как вы пытаетесь запустить их в VBA и что не работает, пока вы пытаетесь это сделать? Чтобы ответить на ваш вопрос: это зависит от ваших навыков VBA, если вы можете писать код, который выполняет ту же работу. Тем не менее, конечно, возможно написать код VBA, чтобы имитировать эти функции. – Ralph

+0

Вы не можете просто использовать функции, которые вы используете в формуле непосредственно в коде. Посмотрите на объект «Application.WorksheetFunction» https://msdn.microsoft.com/en-us/library/office/ff834434.aspx – litelite

ответ

0

Хитрости заключается в том, чтобы удвоить на двойных кавычках:

Range("j14").formula = "=countifs(b:b,"">"" ... 
+0

Фантастический, спасибо! – Niko

Смежные вопросы