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

Программирование на Visual Basic for Applications
_Mike_
Начинающий
Начинающий
 
Сообщения: 1
Зарегистрирован: 12.03.2008 (Ср) 18:36

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

Сообщение _Mike_ » 12.03.2008 (Ср) 18:51

Здравствуйте. В VBA я не сведущ, все больше Си, но понадобилось мне использовать такой вот макрос(чужой).

Код: Выделить всё
Sub Макрос1()
'
' Макрос1 Макрос
' Макрос записан 11.04.2006 (Андрей)
'
solver.xla

    Sheets("Задача 1").Select
    Range("E5").Select
    Worksheets("solver.xla").Select
    SolverOk SetCell:="$E$5", MaxMinVal:=1, ValueOf:="0", ByChange:="$B$4:$C$4"
    SolverSolve
    Sheets("Лист1").Select
    Range("E4").Select
    SolverOk SetCell:="$E$4", MaxMinVal:=1, ValueOf:="0", ByChange:="$B$4:$C$4"
    SolverSolve
    Sheets("Лист2").Select
    Range("E4").Select
    SolverOk SetCell:="$E$4", MaxMinVal:=1, ValueOf:="0", ByChange:="$B$4:$C$4"
    SolverSolve
    Sheets("Лист3").Select
    Range("E4").Select
    SolverOk SetCell:="$E$4", MaxMinVal:=1, ValueOf:="0", ByChange:="$B$4:$C$4"
    SolverSolve
    Sheets("Лист4").Select
    Range("E4").Select
    SolverOk SetCell:="$E$4", MaxMinVal:=1, ValueOf:="0", ByChange:="$B$4:$C$4"
    SolverSolve
    Sheets("Лист5").Select
    Range("E4").Select
    SolverOk SetCell:="$E$4", MaxMinVal:=1, ValueOf:="0", ByChange:="$B$4:$C$4"
    SolverSolve
End Sub


Но он жалуется на функцию SolverOk, которая по идее есть в надстройке solver.xla("сервис - надстройка - галочка "Поиск решения"). Ощущение, что он не видит эти макросы, хотя в дереве проекта они появляются. Подскажите, как исправить. Файл на всякий случай прилагаю (кнопка "рассчитать задачу", вкладка "Задача 1").
Вложения
Диаграмма в Книга1.xls
(131 Кб) Скачиваний: 97

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Сообщение KL » 14.03.2008 (Пт) 16:09

По крайней мере две вещи:

1) В проекте отсутствует ссылка на библиотеку Solver.xla (из редактора VBA. меню Сервис>Ссылки...) Недостаточно того, что она загружена в надстройках

2) Если версия Excel 2002(XP) или позднее, то возможно придется заменить SolverSolve, SolverOK и SolverAdd на SolvSolve, SolvOK и SolvAdd
Привет,
KL


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 71

    TopList