Преобразование формул Excel 2010 в массивы с использованием VBA

Добрый день,

Я искал это целый день, но мог найти только ручные способы обхода.

Когда я обновляю свои данные таблицы в Excel 2010, он вызывает # N / A в моих формулах, оценивая некоторые данные. Теперь я создал текстовую копию формул, которую я могу скопировать, но формула Array потребует от меня нажать F2 и CSE для КАЖДОЙ линии.

Как я могу заставить VBA использовать текущую формулу в ячейке и просто добавить {}, чтобы снова получить формулу массива?

Типичная формула будет выглядеть так:

=sum(1*($G36<$G$2:$G$43))+1+IF(ROW($G36)-ROW($G$2)=0,0, SUM(1* ($G36=OFFSET($G$2,0,0,INDEX(ROW($G36)-ROW($G$2)+1,1)-1,1)))) 

Это означает, что каждая формула в каждой строке будет уникальной.

Поэтому я в основном ищу сценарий VBA, который может изменить всю выделенную ячейку в столбце по моему выбору.

Благодаря!

Выберите ячейки, которые вы хотите изменить и выполните:

 Sub dural() Dim r As Range For Each r In Selection r.FormulaArray = r.Formula Next r End Sub 
  • Как я могу загрузить индекс цвета каждой ячейки диапазона в массив?
  • многозначная ячейка, разделенная запятой на массив
  • Массив Excel VBA для несмежных именованных диапазонов
  • Создание настраиваемой функции count в VBA
  • Excel VBA: Создал UDF, чтобы разделить 1D-массив на 2D-массив. Правильно ли я делаю это?
  • VBA «Аргумент не является обязательным» - неуверенность в том, как объявлять переменные
  • Обновление массива, хранящегося в словаре VBA
  • Пройдите значения в диапазоне, найдите их в диапазоне, найдите значение в соответствующих строках, добавьте их в массив
  • Невозможно использовать N () с массивами с Excel
  • Сдвинуть массив на один в vba
  • Excel - сумматор динамических массивов sumifs
  • Давайте будем гением компьютера.