Эксель поиск решения произошла внутренняя ошибка

Поиск решения непредвиденная внутренняя ошибка или достигнут предел памяти

Обновлено: 06.06.2023

  1. Загрузите DriverFix (проверенный файл загрузки).
  2. Нажмите «Начать сканирование», чтобы найти все проблемные драйверы.
  3. Нажмите «Обновить драйверы», чтобы получить новые версии и избежать сбоев в работе системы.
  • DriverFix в этом месяце скачали 502 786 читателей.

Если вы работаете в организации, на вашем компьютере, скорее всего, установлена ​​последняя версия пакета Microsoft Office или Office 365. Даже если вы этого не сделаете, маловероятно, что вы никогда раньше не слышали о Microsoft Excel.

1 Проверьте содержимое таблицы

  • Вставка строки или столбца
  • Выполнение расчетов
  • Копирование и вставка
  • Сортировка
  • Открытие или закрытие книги
  • Запуск VBA
  • Перепроверьте формулы
  • Перепроверьте расчеты
  • Избегайте использования лишних форм
  • Избегайте использования сложных сводных таблиц
  • Старайтесь не использовать макросы и сложные диаграммы с большим количеством точек данных.

2 Проверьте свои надстройки Excel

Если вы считаете, что надстройка Excel вызывает ошибку, попробуйте отключить ее, а затем проверьте, появляется ли ошибка снова.

3 Проверьте Excel или установите последние обновления

  1. Щелкните правой кнопкой мыши кнопку Пуск
  2. Во всплывающем меню выберите «Приложения и функции».
  3. Выберите Microsoft Excel и выберите Изменить.

В зависимости от того, является ли ваша копия Office «нажми и работай» или установлена ​​на основе MSI, следующие шаги могут немного отличаться.

3.1. Нажми и работай

Появится окно с названием Как вы хотите восстановить свои программы Office.

  1. Выберите Online Repair
  2. Выберите «Восстановить», чтобы убедиться, что все исправлено.
    • Вариант быстрого восстановления работает быстрее, но он только обнаруживает, а затем заменяет поврежденные файлы

ИСПРАВЛЕНИЕ: Microsoft Excel ошибки нехватки памяти

3.2. На базе MSI

  1. В разделе “Изменить установку” выберите ” Восстановить”.
  2. Нажмите ” Продолжить”.
  3. Следуйте данной инструкции, чтобы завершить процесс

4 Отключите антивирус

Отключите антивирусную программу и посмотрите, продолжает ли Excel обнаруживать эту ошибку. Помните, что каждая антивирусная программа отключается по-разному, поэтому дополнительную информацию можно найти в документации на веб-сайте разработчика.

Читайте также:

      

  • Как в sketchup изменить единицы измерения
  •   

  • Ошибка e105 xbox one
  •   

  • Огневка вита антивирус как принимать
  •   

  • Кабель для подключения эбу к компьютеру
  •   

  • Как вывести моноблок из защиты

I’m trying to use the solver from Excel in VBA but I’m having trouble. I keep getting the following error: «Solver: An unexpected internal error occurred, or available memory was exhausted.»

Now, I guess solver isn’t out of memory as I can solve the same problem when using the solver dialog.

Here’s my code:

Sub CoolSolverButton()

SolverReset

SolverOK setCell:=Range("$CK$203"), MaxMinVal:=1, ByChange:=Range("$BH$203:$BQ$222"), Engine:=2, EngineDesc:="Simplex LP"

SolverAdd CellRef:=Range("$BH$203:$BQ$222"), relation:=5, FormulaText:="binary"
SolverAdd CellRef:=Range("$BH$223:$BQ$223"), relation:=1, FormulaText:=Range("$BH$225:$BQ$225")
SolverAdd CellRef:=Range("$BH$227:$BH$245"), relation:=1, FormulaText:=Range("$BI$227:$BI$245")
SolverAdd CellRef:=Range("$BJ$227:$BJ$245"), relation:=1, FormulaText:=Range("$BK$227:$BK$245")
SolverAdd CellRef:=Range("$BL$227:$BL$245"), relation:=1, FormulaText:=Range("$BM$227:$BM$245")
SolverAdd CellRef:=Range("$BN$227:$BN$245"), relation:=1, FormulaText:=Range("$BO$227:$BO$245")
SolverAdd CellRef:=Range("$BP$227:$BP$245"), relation:=1, FormulaText:=Range("$BQ$227:$BQ$245")
SolverAdd CellRef:=Range("$BR$203:$BR$222"), relation:=2, FormulaText:=Range("$BT$203:$BT$222")
SolverAdd CellRef:=Range("$BU$203:$BU$222"), relation:=2, FormulaText:=Range("$BW$203:$BW$222")

SolverSolve UserFinish:=True

SolverFinish KeepFinal:=1

End Sub

Any ideas?

Thanks!

I’m trying to use the solver from Excel in VBA but I’m having trouble. I keep getting the following error: «Solver: An unexpected internal error occurred, or available memory was exhausted.»

Now, I guess solver isn’t out of memory as I can solve the same problem when using the solver dialog.

Here’s my code:

Sub CoolSolverButton()

SolverReset

SolverOK setCell:=Range("$CK$203"), MaxMinVal:=1, ByChange:=Range("$BH$203:$BQ$222"), Engine:=2, EngineDesc:="Simplex LP"

SolverAdd CellRef:=Range("$BH$203:$BQ$222"), relation:=5, FormulaText:="binary"
SolverAdd CellRef:=Range("$BH$223:$BQ$223"), relation:=1, FormulaText:=Range("$BH$225:$BQ$225")
SolverAdd CellRef:=Range("$BH$227:$BH$245"), relation:=1, FormulaText:=Range("$BI$227:$BI$245")
SolverAdd CellRef:=Range("$BJ$227:$BJ$245"), relation:=1, FormulaText:=Range("$BK$227:$BK$245")
SolverAdd CellRef:=Range("$BL$227:$BL$245"), relation:=1, FormulaText:=Range("$BM$227:$BM$245")
SolverAdd CellRef:=Range("$BN$227:$BN$245"), relation:=1, FormulaText:=Range("$BO$227:$BO$245")
SolverAdd CellRef:=Range("$BP$227:$BP$245"), relation:=1, FormulaText:=Range("$BQ$227:$BQ$245")
SolverAdd CellRef:=Range("$BR$203:$BR$222"), relation:=2, FormulaText:=Range("$BT$203:$BT$222")
SolverAdd CellRef:=Range("$BU$203:$BU$222"), relation:=2, FormulaText:=Range("$BW$203:$BW$222")

SolverSolve UserFinish:=True

SolverFinish KeepFinal:=1

End Sub

Any ideas?

Thanks!

  • Remove From My Forums
  • Question

  • I just tried to use the Solver that comes with Microsoft Office 2010. I have activated the add-in, but whenever I select it from the Analysis tab, i get an error «Solver: An unexpected internal error occurred, or available memory was exhausted.» right
    out of the box, on a brand new blank worksheet. Any ideas? I am pretty sure that unless this thing consumes 1.5 gigabytes of RAM, my memory should be enough… 

    • Moved by

      Monday, October 1, 2012 5:23 AM
      (From:Excel for Developers)

  • Remove From My Forums
  • Question

  • I just tried to use the Solver that comes with Microsoft Office 2010. I have activated the add-in, but whenever I select it from the Analysis tab, i get an error «Solver: An unexpected internal error occurred, or available memory was exhausted.» right
    out of the box, on a brand new blank worksheet. Any ideas? I am pretty sure that unless this thing consumes 1.5 gigabytes of RAM, my memory should be enough… 

    • Moved by

      Monday, October 1, 2012 5:23 AM
      (From:Excel for Developers)


  • Новое за 24 часа


  • Пользователи


  • Arise


    Senior Member

    701


    #
    16 февраля 2010 15:32

    KSIva, не будем обсуждать у кого какие знания в Экселе и гнуть пальцы.

    за ответ спасибо:beer:


  • dikar


    Клуб счастливых людей

    2587


    #
    17 февраля 2010 09:14

    друзья. непредвиденный трабл.

    надстройка — Поиск решения.

    офис 2007, но трабл не в этом.

    решение эксель мне находит, но результаты выдавать отказывается. точнее говоря матрицу решал многократно и решения выводились исправно а вот в тот момент когда я принял решение об окончательном виде матрицы и попытался вывести окончательные результаты после выполнения Поиска Решения выползает такая вот надпись:

    Поиск решения: непредвиденная внутренняя ошибка или достигнут предел доступной памяти.

    ЧТО ЭТО? и с чем его едят.

    мне победить эту запись не удалось.

    помогите плиз, кто чем может. очень нужно.

    Пишите в ЛС.


  • MaxRusak


    Senior Member

    53155


    #
    17 февраля 2010 11:55

    dikar:

    друзья. непредвиденный трабл.

    надстройка — Поиск решения.

    офис 2007, но трабл не в этом.

    решение эксель мне находит, но результаты выдавать отказывается. точнее говоря матрицу решал многократно и решения выводились исправно а вот в тот момент когда я принял решение об окончательном виде матрицы и попытался вывести окончательные результаты после выполнения Поиска Решения выползает такая вот надпись:

    Поиск решения: непредвиденная внутренняя ошибка или достигнут предел доступной памяти.

    ЧТО ЭТО? и с чем его едят.

    мне победить эту запись не удалось.

    помогите плиз, кто чем может. очень нужно.

    Эксель чувствителен к исходным данным в изменяемых ячейках.

    Легче зажечь одну маленькую свечку, чем клясть темноту. (с) Конфуций.


  • Олег


    Senior Member

    681


    #
    4 марта 2010 12:34

    Помогите правильно в макросе указать переименование страницы

    мне надо чтобы переименовывало по данным из ячейки А8 (они там меняются)

    в бейсике указывает имя из информации в ячейке, которое там было на момент написания макроса, а хочу чтобы чтобы имя было то, которое указано в упоминаемой ячейке на момент выполнения макроса

    Sheets(«2»).Select

    Sheets(«2»).Name = «Беларусь.43»


  • DimetriX


    Member

    314


    #
    4 марта 2010 19:50

    Олег,

    попробуй такой код.

    предполагается, что он выполняется на той закладке, где и расположена ячейка А8.

    то что надо?

    Sub zakladka()

    y = ActiveSheet.Name

    x = «» & y & «»

    Sheets(x).Select

    Sheets(x).Name = Cells(8, 1).Value

    End Sub


  • Олег


    Senior Member

    681


    #
    5 марта 2010 09:52

    DimetriX, спасибо, вроде работает


  • KSIva


    Senior Member

    10781


    #
    5 марта 2010 10:04

    Олег, DimetriX, а зачем эта строчка: Sheets(x).Select ? Без нее будет работать?

    «И покарал его Господь и отдал его в руки женщины». Кн. Юдифи, 16, гл. 7.


  • Олег


    Senior Member

    681


    #
    5 марта 2010 11:14

    KSIva, вроде и без неё работает


  • Артёмка


    Senior Member

    22047


    #
    9 марта 2010 14:57

    подскажите плиз, как преобразовать формат времени 5:34:00 в целое значение минут? т.е. 334 мин.

    спасибо.

    Поделись улыбкою своей — и тебе её не раз ещё припомнят…


  • KSIva


    Senior Member

    10781


    #
    9 марта 2010 15:07

    Артёмка:

    подскажите плиз, как преобразовать формат времени 5:34:00 в целое значение минут? т.е. 334 мин.

    спасибо.

    «Формат- ячейки- все форматы» указать формат [м] (буква «м» русская)

    «И покарал его Господь и отдал его в руки женщины». Кн. Юдифи, 16, гл. 7.


  • Артёмка


    Senior Member

    22047


    #
    9 марта 2010 17:28

    KSIva, в офисе гут, получилось. в гугл докс такой фокус не прокатывает. есть варианты?

    Поделись улыбкою своей — и тебе её не раз ещё припомнят…


  • KSIva


    Senior Member

    10781


    #
    10 марта 2010 09:44

    Артёмка:

    KSIva, в офисе гут, получилось. в гугл докс такой фокус не прокатывает. есть варианты?

    C гуглдокс не работаю, но попробуй значение ячейки умножить на 1440. Типа =A1*1440 , где а1 — ячейка со временем. Формат поставь числовой. Если есть секунды, округляй до целых.

    «И покарал его Господь и отдал его в руки женщины». Кн. Юдифи, 16, гл. 7.


  • Олег


    Senior Member

    681


    #
    22 марта 2010 14:27

    А можно написать макрос, который удаляет все листы кроме активного?


  • IveGotThePower


    USA Team

    3463


    #
    22 марта 2010 15:02

    Олег, можно:

    Sub DelSheet()

    For Each sh In Windows(1).SelectedSheets

    Name = sh.Name

    Exit For

    Next

    Application.DisplayAlerts = False

    For Each sh In ActiveWorkbook.Sheets

    If sh.Name <> Name Then

    sh.Delete

    End If

    Next

    Application.DisplayAlerts = True

    End Sub

    We can take that place. And than do what? Heads on pikes.


  • Олег


    Senior Member

    681


    #
    22 марта 2010 16:27

    I’ve got the power, да, работает,

    большое спасибо


  • Олег


    Senior Member

    681


    #
    23 апреля 2010 11:47

    Вот выше описывали мне как переименовать лист в соответствии со значением в определённой ячейке

    А можно ли также переименовать книгу? Нужно чтобы книга сохранялась на рабочий стол и обзывалась значением в ячейке А8 + дата и время

    помогите пожалуйста


  • DimetriX


    Member

    314


    #
    24 апреля 2010 21:31

    Олег, попробуйте. Но вместо «F:» надо прописать точный путь к рабочему столу, он у вас может быть другой, чем у меня, поэтому и не вписывал.

    Sub new1()

    d = Format(Date, «YYYYMMDD») & «_» & Format(Time, «HHMMSS») & «.xls»

    ActiveWorkbook.SaveAs Filename:=»F:» & Cells(8, 1).Value & «_» & d

    End Sub


  • Олег


    Senior Member

    681


    #
    26 апреля 2010 10:04

    DimetriX, спасибо, работает


  • Vita


    Senior Member

    2664


    #
    6 мая 2010 14:13

    как можно сделать так чтобы один и тот же колонтитул был на всех листах файла?

    а то листов много везде настраивать долго :(

    Лучше один раз вовремя — чем два раза правильно!


  • KSIva


    Senior Member

    10781


    #
    6 мая 2010 15:20

    Vita:

    как можно сделать так чтобы один и тот же колонтитул был на всех листах файла?

    а то листов много везде настраивать долго

    Выделяешь первый лист, Ctrl+щелчок по ярлыку последнего. Выделяются все листы (вверху в заголовке окна появляется слово [Группа]). Устанавливаешь колонтитулы — они утанавливаются для всех выделенных листов.

    «И покарал его Господь и отдал его в руки женщины». Кн. Юдифи, 16, гл. 7.

Поиск решения непредвиденная внутренняя ошибка или достигнут предел памяти

Обновлено: 29.01.2023

  1. Загрузите DriverFix (проверенный файл загрузки).
  2. Нажмите «Начать сканирование», чтобы найти все проблемные драйверы.
  3. Нажмите «Обновить драйверы», чтобы получить новые версии и избежать сбоев в работе системы.
  • DriverFix в этом месяце скачали 502 786 читателей.

Если вы работаете в организации, на вашем компьютере, скорее всего, установлена ​​последняя версия пакета Microsoft Office или Office 365. Даже если вы этого не сделаете, маловероятно, что вы никогда раньше не слышали о Microsoft Excel.

1 Проверьте содержимое таблицы

  • Вставка строки или столбца
  • Выполнение расчетов
  • Копирование и вставка
  • Сортировка
  • Открытие или закрытие книги
  • Запуск VBA
  • Перепроверьте формулы
  • Перепроверьте расчеты
  • Избегайте использования лишних форм
  • Избегайте использования сложных сводных таблиц
  • Старайтесь не использовать макросы и сложные диаграммы с большим количеством точек данных.

2 Проверьте свои надстройки Excel

Если вы считаете, что надстройка Excel вызывает ошибку, попробуйте отключить ее, а затем проверьте, появляется ли ошибка снова.

3 Проверьте Excel или установите последние обновления

  1. Щелкните правой кнопкой мыши кнопку Пуск
  2. Во всплывающем меню выберите «Приложения и функции».
  3. Выберите Microsoft Excel и выберите Изменить.

В зависимости от того, является ли ваша копия Office «нажми и работай» или установлена ​​на основе MSI, следующие шаги могут немного отличаться.

3.1. Нажми и работай

Появится окно с названием Как вы хотите восстановить свои программы Office.

  1. Выберите Online Repair
  2. Выберите «Восстановить», чтобы убедиться, что все исправлено.
    • Вариант быстрого восстановления работает быстрее, но он только обнаруживает, а затем заменяет поврежденные файлы

ИСПРАВЛЕНИЕ: Microsoft Excel ошибки нехватки памяти

3.2. На базе MSI

  1. В разделе “Изменить установку” выберите ” Восстановить”.
  2. Нажмите ” Продолжить”.
  3. Следуйте данной инструкции, чтобы завершить процесс

4 Отключите антивирус

Отключите антивирусную программу и посмотрите, продолжает ли Excel обнаруживать эту ошибку. Помните, что каждая антивирусная программа отключается по-разному, поэтому дополнительную информацию можно найти в документации на веб-сайте разработчика.

Читайте также:

  • Как в sketchup изменить единицы измерения
  • Ошибка e105 xbox one
  • Огневка вита антивирус как принимать
  • Кабель для подключения эбу к компьютеру
  • Как вывести моноблок из защиты

  • Remove From My Forums
  • Question

  • При открытии некоторых файлов .xls и .doc Word и Excel 2013 выдают сообщение:

    «Приложению Microsoft Excel (Word) не удается открыть или сохранить документы из-за нехватки памяти или места на диске»

    Ну и дальше предлагается список действий — «освободите память, удалите ненужные программы и т.д.»

    В журнале событий такие сообщения:

    Microsoft ExcelПриложению Microsoft Excel не удается открыть или сохранить документы из-за нехватки памяти или места на диске. • Чтобы освободить память, закройте ненужные книги или программы. • Чтобы освободить место на диске, удалите с этого диска ненужные файлы.P1: 100102P2: 15.0.4420.1017P3: 5afgP4: 

    (цифры после P1 — каждый раз разные).

    Разумеется памяти достаточно (4 Гб), места на диске тоже навалом, компьютер сам по себе среднего современного уровня.

    Происходит такая штука с определенными файлами — т.е. именно этот конкретный не открывается, но какой-то другой в это же время откроется без проблем. А те, которые не открывались, не откроются, сколько не пытайся.

    Другой момент — замечал, что файлы которые не открывались вчера, открываются в другой день.

    Проблема проявляется периодически на 3 разных машинах — на двух Windows 8 x64 (и 64-битный офис), на одной — Windows 8 32 бит (и 32-битный офис).

    Ну и конечно — те же файлы отлично открываются в Libre Office или MS Office 2010. Файлики обычные, без каких-то макросов и тп., антивирус установлен (никаких признаков вирусных заражений, система — все обновления). Подскажите, куда копать? Не хочется сносить
    2013-й (пусть пока и пробный), плюс скоро их ведь пользователям ставить будем (сам админ) — хочется разобраться в проблеме.

    • Edited by

      Wednesday, December 26, 2012 1:05 PM

Answers

  • Да, я тоже уже разобрался — снял все галки в Центре управления безопасностью в разделе «Защищенный просмотр». После этого все проблемные файлы стали «нормальными» )

    Аналогичный эффект давала также разблокировка файла через его свойства в проводнике.

    При этом у меня эти файлы находились просто в локальных папках (не расшаренных).

    Проблема фактически решена, хотя все-таки это именно баг, ведь программа при этом говорит о каком-то недостатке памяти и т.п. Да и вообще по сути файлы должны бы открываться, но с пометкой, что они заблокированы для редактирования (как это и было раньше
    для защищенных)

    • Marked as answer by
      ЖукMVP, Moderator
      Tuesday, January 8, 2013 2:07 PM
  • Проблемы как таковой на самом деле нет. Всё дело в новых настройках безопасности.- Центр управления безопасностью /параметры центра управления безопасностью/ Надёжные расположения — добавить новое расположение — путь — обзор -(выбираем
    диски С: , D:  и т.д.) ставим галочку — Также доверять всем вложенным папкам/ жмём ОК……Всё.

    • Proposed as answer by
      Alexsoft73
      Wednesday, October 8, 2014 11:34 PM
    • Marked as answer by
      ЖукMVP, Moderator
      Friday, September 22, 2017 2:50 PM
  • ;) я вообще то, ещё вводил сетевой пароль доступа с включённой опцией «запомнить логин и пароль».


    Да, я Жук, три пары лапок и фасеточные глаза :))

    • Marked as answer by
      ЖукMVP, Moderator
      Wednesday, January 10, 2018 1:27 PM
  • Сетевой путь, так же должен быть внесён в список «Надёжные расположения» с отмеченной опцией «Так же доверять всем вложенным папкам».


    Да, я Жук, три пары лапок и фасеточные глаза :))

    • Marked as answer by
      ЖукMVP, Moderator
      Friday, August 21, 2015 10:52 AM
  • Выбирать необходимо из той программы, к которой подключается сетевой диск через кнопку «Обзор» соответствующего окна программы. Путь пропишет сама программа, Вам остаётся только отметить
    опцию «Так же доверять всем вложенным папкам».

    Предварительно, протокол IPv6 должен быть включён, и с компьютера эти сетевые папки должны быть доступны.


    Да, я Жук, три пары лапок и фасеточные глаза :))

    • Edited by
      ЖукMVP, Moderator
      Tuesday, June 9, 2015 9:58 AM
    • Marked as answer by
      ЖукMVP, Moderator
      Wednesday, January 10, 2018 1:26 PM
  • Действительно, очень странное поведение программы.

    Работаю с Ms Office 2016, возникла такая же проблема при открытии файлов из почты из браузера (браузер Mozilla, почта rambler).

    Проблему удалось решить путем добавления папки с временными файлам в надежные расположения (здесь не все так просто, подробности ниже) и снятием всех галочек в Центре управления безопасностью в разделе «Защищенный
    просмотр».

    Насчет добавления папки с временными файлами в надежные расположения: MS Office 2016 не разрешает напрямую добавить эту папку. Поэтому я создал новую папку для временных файлов, указал ее в Надежных расположениях, а затем
    в настройках Windows 10 изменил путь со стандартной папки для временных файлов на новую, после чего перезагрузил компьютер.Совокупность этих действий позволила спокойно открыть документы MS Office из любой программы.

    • Marked as answer by
      ЖукMVP, Moderator
      Tuesday, April 25, 2017 8:46 PM

Привет.

Возникла проблема — есть файл МС Экселя, в котором задаются некоторые данные и вызывается надстройка «Поиск решения».
Для универа надо это оформить через Дельфи — я решил прикрутить дельфийский интерфейс к Экселю.
Сделал заполнение исходных данных — все работает нормально, теперь надо вызвать надстройку.
Искал везде — не нашел как ее вызвать напрямую, тогда сделал макрос с вызовом настройки и стал дергать его из дельфи. Вот тут-то и появилась проблема: если я зову макрос просто из Экселя, то все отрабатывает нормально. Если же я зову его из свой программы, то получаю сообщение «Поиск решения: непредвиденная внутренняя ошибка или достигнут предел доступной памяти».

Вопрос: кто-нибудь знает чего ей надо и как это ей дать?

Здравствуйте, Serg32M, Вы писали:

SM>Возникла проблема — есть файл МС Экселя, в котором задаются некоторые данные и вызывается надстройка «Поиск решения».

SM>Для универа надо это оформить через Дельфи — я решил прикрутить дельфийский интерфейс к Экселю.
SM>Сделал заполнение исходных данных — все работает нормально, теперь надо вызвать надстройку.
SM>Искал везде — не нашел как ее вызвать напрямую, тогда сделал макрос с вызовом настройки и стал дергать его из дельфи. Вот тут-то и появилась проблема: если я зову макрос просто из Экселя, то все отрабатывает нормально. Если же я зову его из свой программы, то получаю сообщение «Поиск решения: непредвиденная внутренняя ошибка или достигнут предел доступной памяти».

SM>Вопрос: кто-нибудь знает чего ей надо и как это ей дать?

Ты бы хоть пример кода кинул…. где ото вылазит…

… << RSDN@Home 1.1.4 beta 3 rev. 185>>

Здравствуйте, Vodyamba, Вы писали:

V>Здравствуйте, Serg32M, Вы писали:


SM>>Возникла проблема — есть файл МС Экселя, в котором задаются некоторые данные и вызывается надстройка «Поиск решения».

SM>>Для универа надо это оформить через Дельфи — я решил прикрутить дельфийский интерфейс к Экселю.
SM>>Сделал заполнение исходных данных — все работает нормально, теперь надо вызвать надстройку.
SM>>Искал везде — не нашел как ее вызвать напрямую, тогда сделал макрос с вызовом настройки и стал дергать его из дельфи. Вот тут-то и появилась проблема: если я зову макрос просто из Экселя, то все отрабатывает нормально. Если же я зову его из свой программы, то получаю сообщение «Поиск решения: непредвиденная внутренняя ошибка или достигнут предел доступной памяти».

SM>>Вопрос: кто-нибудь знает чего ей надо и как это ей дать?


V>Ты бы хоть пример кода кинул…. где ото вылазит…

Макрос в Ёкселе

SolverOk SetCell:=»$D$21″, MaxMinVal:=1, ValueOf:=»0″, ByChange:=»$D$9:$F$9″
SolverSolve UserFinish:=True

Вызов из Дельфи
xl: TExcelApplication;

frmMain.xl.Run(‘MacroForDelphi’); // вот тут оно и говорит такую фигню

I’m trying to use the solver from Excel in VBA but I’m having trouble. I keep getting the following error: «Solver: An unexpected internal error occurred, or available memory was exhausted.»

Now, I guess solver isn’t out of memory as I can solve the same problem when using the solver dialog.

Here’s my code:

Sub CoolSolverButton()

SolverReset

SolverOK setCell:=Range("$CK$203"), MaxMinVal:=1, ByChange:=Range("$BH$203:$BQ$222"), Engine:=2, EngineDesc:="Simplex LP"

SolverAdd CellRef:=Range("$BH$203:$BQ$222"), relation:=5, FormulaText:="binary"
SolverAdd CellRef:=Range("$BH$223:$BQ$223"), relation:=1, FormulaText:=Range("$BH$225:$BQ$225")
SolverAdd CellRef:=Range("$BH$227:$BH$245"), relation:=1, FormulaText:=Range("$BI$227:$BI$245")
SolverAdd CellRef:=Range("$BJ$227:$BJ$245"), relation:=1, FormulaText:=Range("$BK$227:$BK$245")
SolverAdd CellRef:=Range("$BL$227:$BL$245"), relation:=1, FormulaText:=Range("$BM$227:$BM$245")
SolverAdd CellRef:=Range("$BN$227:$BN$245"), relation:=1, FormulaText:=Range("$BO$227:$BO$245")
SolverAdd CellRef:=Range("$BP$227:$BP$245"), relation:=1, FormulaText:=Range("$BQ$227:$BQ$245")
SolverAdd CellRef:=Range("$BR$203:$BR$222"), relation:=2, FormulaText:=Range("$BT$203:$BT$222")
SolverAdd CellRef:=Range("$BU$203:$BU$222"), relation:=2, FormulaText:=Range("$BW$203:$BW$222")

SolverSolve UserFinish:=True

SolverFinish KeepFinal:=1

End Sub

Any ideas?

Thanks!

Помогите пожалуйста решить проблему добавления ограничений в Solver посредством кода на VBA. Суть проблемы в том, что при вводе ограничений посредством редактора VBA и последующем запуске Solver, выскакивает сообщение «Поиск решения: непредвиденная внутренняя ошибка или достигнут предел допустимой памяти». При анализе проблемы выяснилось, что такая ошибка появляется только в том случае, когда я ввожу дробные ограничения. Если целые числа, то все ОК. Привожу пример кода для пояснения:

Sub AddLimitSolver()
For i = 3 To 32
      Application.Run "Solver.xla!SolverAdd", Cells(i, 1), 1, Cells(i, 3)
      Application.Run "Solver.xla!SolverAdd", Cells(i, 1), 3, Cells(i, 2)
Next i
End Sub

SQL Server 2016 Developer — duplicate (do not use) SQL Server 2016 Enterprise — duplicate (do not use) SQL Server 2016 Enterprise Core — duplicate (do not use) SQL Server 2016 Standard — duplicate (do not use) SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise Core SQL Server 2017 Enterprise on Windows SQL Server 2017 Standard on Windows Еще…Меньше

Проблемы

Предположим, что на сервере Microsoft SQL Server установлены службы аналитики SQL Server (SSAS). При выполнении запроса МНОГОМЕРных выражений, созданного в Microsoft Excel, для доступа к неинициализированной переменной появляется следующее сообщение об ошибке:

Выполнение запроса…

Внутренняя ошибка: возникло непредвиденное исключение.

Решение

Эта проблема устранена в следующих обновлениях для SQL Server:

Накопительное обновление 11 для SQL server 2017
накопительное обновление 3 для SQL Server 2016 с пакетом обновления 2 (SP2)

Сведения о сборках SQL Server

Каждая новая сборка SQL Server включает в себя все исправления и исправления для системы безопасности, описанные в предыдущей сборке. Мы рекомендуем установить последнюю сборку для вашей версии SQL Server.

Новейшая сборка для SQL Server 2017

Новейшая сборка для SQL Server 2016

Статус

Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе «Применяется к».

Ссылки

Ознакомьтесь с терминологией , которую корпорация Майкрософт использует для описания обновлений программного обеспечения.

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Понравилась статья? Поделить с друзьями:
  • Эксель ошибка это значение не соответствует ограничениям
  • Эксель ошибка циклические ссылки
  • Эксель ошибка файла данные могут быть утеряны
  • Эксель если ошибка то пусто
  • Эксель если ошибка равно 0