Здравствуйте! В прилагаемом файле имеются "умная" и основанная на первой сводная таблицы. Дополнительно имеется макрос, чья задача - при обновлении сводной пересоздать условное форматирование. Если после первого открытия файла обновить сводную и закрыть с сохранением, то файл безвозвратно повреждается (в Excel 2016, на других - не знаю). Понятно, что xl не нравится способ задания именованного диапазона scp. Бат вай, на каком основании, доколе??
Хочется понять логику - почему? Что, собственно, некорректно сделано?
vladjuha написал: то файл безвозвратно повреждается (в Excel 2016
У меня тоже на 2016 64бит. Да кто бы знал, почему так происходит. Вот ещё один пример такого же необъяснимого поведения. Попробуйте написать жалобу разработчикам Microsoft, если у вас есть техподдержка, может что ответят. А так - искать обходное решение.
Понимаю, что это не ответ на поставленный вопрос, но если надо
Цитата
vladjuha написал: при обновлении сводной пересоздать условное форматирование
может без макроса попробовать? Есть же возможность Условного форматирования сводной стандартными средствами. В чём заключается Условное форматирование в Вашем случае?
Условное форматирование используется для прикрутки читаемого оформления для столбцов с итогами. Они парни в эксель, видать, особые и им остальные способы раскраски нипочём. Исходный вопрос в этой теме.
Касаемо краша, похоже, виновата повреждённая структура сводной таблицы - отличается кол-во полей в умной и сводной. Пересоздание сводной на текущем тестовом файле прошла на ура, а на рабочем - нихт. Полагаю из-за наличия ещё нескольких сводных, основанных на одних и тех же данных. А может повреждена "умная таблица", но пересоздать её нереально.
В общем не стал выкаблучиваться с красивым поиском аля "только по строкам с данными", а тупо забил в scp необходимые диапазоны с запасом пустых строк. Хотя не есть кошерно, конечно. Так работает.
Кстати, вспомнил поздно, напишу всё же, может кому пригодится. Причина краша: использование именованного диапазона в правилах условного форматирования на сводной. Я два раза уже на эти грабли вставал - учёный теперь.