Есть надстройка в готовых решениях ABC.xls, прошу помочь ее модернизировать. Надстройка предназначена для ABC&XYZ анализа. Есть ли возможность в самой форме сделать возможным использовать только ABC или только XYZ (c сортировкой естественно), т.к. часто использую только один из анализов. Конечно, можно использовать без изменений, потом удалить лишнее не сложно, а вот перекрашивать шрифт и менять сортировку уже процесс достаточно долгий.
Есть надстройка в готовых решениях ABC.xls, прошу помочь ее модернизировать. Надстройка предназначена для ABC&XYZ анализа. Есть ли возможность в самой форме сделать возможным использовать только ABC или только XYZ (c сортировкой естественно), т.к. часто использую только один из анализов. Конечно, можно использовать без изменений, потом удалить лишнее не сложно, а вот перекрашивать шрифт и менять сортировку уже процесс достаточно долгий.Rama
Сообщение отредактировал Rama - Четверг, 03.10.2013, 12:15
Пробуйте приложенный вариант. Он, конечно, пока ещё не айс, но...
Что изменено: - правильный расчёт сдвига для расчетно-отчетных данных - возможность как совместного, так и раздельного расчёта (попробуйте снять галочки), при этом при расчете только XYZ сортировка выполняется по KV, при совместном ABC&XYZ - как было - исходный диапазон не форматируется, только рисуется граница - все значения переменных (за исключением диапазона) сохраняются на отдельном листе, поэтому настройки не теряются - цвета для показателей можно изменять в справочнике
Пробуйте приложенный вариант. Он, конечно, пока ещё не айс, но...
Что изменено: - правильный расчёт сдвига для расчетно-отчетных данных - возможность как совместного, так и раздельного расчёта (попробуйте снять галочки), при этом при расчете только XYZ сортировка выполняется по KV, при совместном ABC&XYZ - как было - исходный диапазон не форматируется, только рисуется граница - все значения переменных (за исключением диапазона) сохраняются на отдельном листе, поэтому настройки не теряются - цвета для показателей можно изменять в справочникеAndreTM
AndreTM, отличное решение, спасибо. Единственная маленькая просьба, убрать лист Data c настройками и оставить как было (настройка не напрягает, а лишний лист "утяжеляет" решение), у меня в одной надстройке куча макросов и борюсь за каждый Кб (если это долго, то все и так отлично, можно не править.)
AndreTM, отличное решение, спасибо. Единственная маленькая просьба, убрать лист Data c настройками и оставить как было (настройка не напрягает, а лишний лист "утяжеляет" решение), у меня в одной надстройке куча макросов и борюсь за каждый Кб (если это долго, то все и так отлично, можно не править.)Rama
Сообщение отредактировал Rama - Четверг, 03.10.2013, 22:42
Вы боретесь за каждый килобайт на терабайтном HDD? А лист Data в XLSM занимает всего 1,5 кб. У вас наверняка комментарии в коде на порядок больше места занимают
И вообще-то, бороться надо не за место, занимаемое исходным кодом...
Вы боретесь за каждый килобайт на терабайтном HDD? А лист Data в XLSM занимает всего 1,5 кб. У вас наверняка комментарии в коде на порядок больше места занимают
И вообще-то, бороться надо не за место, занимаемое исходным кодом...AndreTM
Обнаружил один момент. Надстройка работает если открываешь файл ABC_2.xlsm и в нем работаешь с массивом. Если в другую надстройку копируешь форму, модуль и лист с настройкой, и открываешь новую чистую книгу и начинаешь работать в ней с массивом, то ошибка на ...Sheets("Data")... Скорее форма и модуль ищут лист Data в новой книге, а не в надстройке.
Далее мой эксперимент ("от балды"): В модуле везде Sheets("Data") меняю на ThisWorkbook.Sheets("Data"), заработало...но опять модуль работает только от настроек листа Data (то есть в самой форме проставлять значения не имеет смысла, приходиться в лист настроек заходить и менять там.
P.S Вот поэтому я и не дружу с листами в надстройках...
Обнаружил один момент. Надстройка работает если открываешь файл ABC_2.xlsm и в нем работаешь с массивом. Если в другую надстройку копируешь форму, модуль и лист с настройкой, и открываешь новую чистую книгу и начинаешь работать в ней с массивом, то ошибка на ...Sheets("Data")... Скорее форма и модуль ищут лист Data в новой книге, а не в надстройке.
Далее мой эксперимент ("от балды"): В модуле везде Sheets("Data") меняю на ThisWorkbook.Sheets("Data"), заработало...но опять модуль работает только от настроек листа Data (то есть в самой форме проставлять значения не имеет смысла, приходиться в лист настроек заходить и менять там.
P.S Вот поэтому я и не дружу с листами в надстройках... Rama
Сообщение отредактировал Rama - Пятница, 04.10.2013, 09:44
:) Ну, я ведь сначала просто делал по вашим запросам, не вдаваясь в подробности. Например того, что вы будете использовать ABC даже не как отдельную надстройку, а вообще в составе вашей персональной книги...
Вот, попробуйте этот вариант использовать у себя. Возможно, получатся ваши хотелки.
:) Ну, я ведь сначала просто делал по вашим запросам, не вдаваясь в подробности. Например того, что вы будете использовать ABC даже не как отдельную надстройку, а вообще в составе вашей персональной книги...
Вот, попробуйте этот вариант использовать у себя. Возможно, получатся ваши хотелки.AndreTM