Написание диапазонов в формулы с VBA - PullRequest
0 голосов
/ 29 февраля 2020

Я использую переменные диапазоны и хочу вставить эти диапазоны в формулу, которую можно сохранить в документе, который не использует VBA.

Нужно ли использовать оператор with?

My If Statement работает до тех пор, пока я не попытаюсь вставить относительный диапазон. Я искал и не видел много по этому вопросу, так что эта проблема, вероятно, настолько проста, что я идиот.

Программа будет работать по всему листу, поэтому необходимо относительное кодирование. Количество элементов в диапазоне изменяется с каждой итерацией. Я буду использовать целое число конечного диапазона [myRange] для числа вместо 10, но я хотел упростить то, с чем я борюсь, до самых маленьких шагов.

    Dim Test As String
    Test = "=IF(COUNTIF(" & ActiveCell.Offset(1, 0).Address & ":" & ActiveCell.Offset(10, 0).Address & "" _
            & ")," & """Not Complete""" & "," & "" & """"")"
    ActiveCell.Formula = Test

Желаемый вывод в целевой ячейке: "= IF (COUNTIF ($ J $ 3: $ J $ 12), «Не завершено», «») »

1 Ответ

1 голос
/ 29 февраля 2020

Как уже упоминалось в комментариях, ваш оператор COUNTIF в настоящее время недействителен. Что вы считаете в диапазоне J3:J12? Это необходимо добавить (вместо "CRITERIA" в приведенном ниже решении), прежде чем ваше уравнение станет действительным Chr(34) & Test & Chr(34), который кажется более чистым, чем завершение всей строки в кавычки с точки зрения читабельности IMO

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...