ОБНОВЛЕНИЕ ДО НИЖЕ
Обновление уже развернуто на многих машинах и сломало, возможно, 90% работы, которую мы проделали в прошлом. Просто чтобы уточнить, что я имею в виду:
Используя VBA (или C# или что-нибудь еще в этом отношении) - мы динамически вставляем формулы во время выполнения, используя именованные диапазоны. Например:
= (MIN (Bid_S1, Bid_S2, Bid_S3, Bid_S4, Bid_S5) / Bid_S3) * PriceWeighting
Теперь это работает дольше и выдает ошибку SPILL. Когда я пытаюсь поставить @ впереди, как предложено, я вижу сообщение о том, что @ не поддерживается в некоторых версиях Excel, хочу ли я его использовать.
Вариант 1 - да, я ставлю @ перед каждым именованным диапазоном, ошибка разлива. Вариант 2 - предложенная ими формула идентична той, что у меня уже была. Та же ошибка разлива.
Это будет огромной проблемой для многих компаний, конечно.
Трудно не согласиться с этим вопросом:
https://answers.microsoft.com/en-us/msoffice/forum/all/the-new-dynamic-arrays-spill-functionality-should/92f9847f-deca-4ec9-ada3-9e005a5b68da?rtAction=1579696000111&page=1
Очень странная ситуация. 4 разных компьютера. Каждый работает идентичные версии Excel, Windows.
Простой именованный диапазон с 4 ячейками, называемый PlanID
PlanID
1
2
3
4
Тип "= PlanID" рядом с первым, на 3 из машин он возвращает 1, как я и ожидал. На 4-й машине он возвращает массив формул всего диапазона. Просто потратил около 2 часов на изучение ошибок разлива и т. Д. c, но, похоже, ничто не имеет прямого отношения к двум имеющимся у меня проблемам:
- Как может что-то, что надежно работало годами, внезапно не работать
- Почему только на одной машине?
Буквально идентичные версии Excel (16.0.12325.20280 32 бит)