Стевен из Аустралије пише:
Направио сам ВБА макро који мора створити око 50 графикона из једног радног листа. Проблем је у томе што сваки пут када покренем програм када дођем до 33. графикона, порука о грешци приказује „Нема довољно меморије“, тада се програм Екцел закључава и морам да прекинем програм. У рачунару имам 256МГ РАМ-а и користим Екцел 97 у оперативном систему Виндовс НТ.
Да ли креирате сваки графикон као свој лист графикона? Екцел може да обради 16 милиона ћелија на радном листу, али тиха је тајна да не може да обрађује пуно радних листова. Датотека за помоћ каже да је број радних листова ограничен „расположивом меморијом“.
Ја редовно доживљавам проблем који имате. То је ужасно фрустрирајуће, јер никад не знате када ће се срушити. Ако би вам Висуал Басиц дао грешку која се може уклонити, можете зауставити макро, сачувати датотеку и започети у новој датотеци. Али немају - само се догоди пад.
Видео сам пад како се дешава већ на 130 радних листова и већ на 40. Морате да процените где ће се срушити у вашем систему, а затим ставите бројач у макро. Ако мислите да ћете се срушити након 32 графикона, зауставите поступак на 30 графикона, сачувајте их у новој радној свесци, затворите ту радну свеску и почните поново да их креирате у новој радној свесци.
Ово није лепо, али је једино решење које сам пронашао.
Још једна мисао - обавезно затворите сваки модул и кориснички образац у Висуал Басиц Едитору помоћу „Кс“ у горњем десном углу. Открио сам да једноставним затварањем свих компоненти у Висуал Басиц-у пре покретања макронаредбе можете ослободити мало више меморије и можда угурати још неколико графикона у „расположиву меморију“.
Изнад сам говорио о томе да радим ствари ради очувања памћења. Стевен је данас узвратио одличним открићем:
Открио сам да ако поставим Цхартс АутоСцалеФонт на Фалсе, могу створити око 120 графикона, што је решило мој проблем.
Зашто је то тако, немам појма, али то је Екцел. Одличан савет - угурајте овај као опскурни метод за очување меморије.