Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.05.2016, 23:52   #1
rick1177
Пользователь
 
Регистрация: 15.02.2010
Сообщений: 59
По умолчанию Небольшой но трудный макрос

Друзья... Я ранее размещал это сообщение. Полагаю, что поскольку ветка весьма давно тонула, то и ответа мне там уже не дождаться. По этой причине делаю повторную попытку открыть новую тему...

Цитата:
Сообщение от rick1177 Посмотреть сообщение
Коллеги, прошу подсказать Ваше видение по следующему вопросу...

Имеется, например, созданная с использованием данного файла модель на листе. Имеется, так называемая, "рабочая точка", представляющая собой внесённые в модель значения.(на представлено рисунке - красного цвета значения в нижнем ряду - 3,39; 2,82; 2,16; 2,94; 3,14). Эти значения получены путём "приведения" "физических значений" к "качественным оценкам" через линейные функции (80; 40; 20; 65; 15) соответственно.
Исходя из качественных значений (3,39; 2,82; 2,16; 2,94; 3,14) производится свёртка и получается комплексная оценка (на самом верху - 3,00 (красного цвета).
Что требуется (опять желательно без использования макросов, но здесь я думаю это точно не возможно)...
Требуется построить на отдельном листе так называемые функции чувствительности. Функция чувствительности – зависимость Итоговой (комплексной оценки) от изменения одного из факторов модели при прочих фиксированных.
Таблица, получаемая в результате проведения анализа чувствительности по одному из факторов представляла бы собой 3 столбца (качественная оценка фактора, физическая оценка фактора, значение комплексной оценки).
Поскольку на листе с моделями их может быть бесконечное количество, функций чувствительности таже неограниченно много, то как бы я это видел….
Есть на экране кнопка «Провести анализ чувствительности». При нажатии кнопки открывается форма, где тебя просят указать физическое значение фактора, качественное значение фактора, комплексную оценку. (просто ткнуть ячейки). Кнопка «+» позволяла бы добавить второй, третий и т.д. такой набор.
После того как все наборы были бы добавлены., но нажатие на кнопке «начать» производило бы следующие действия:
1) Создавался новый лист;
2) Генерировалась бы шапка таблицы.
3) В ячейку, указанную ранее на форме, вставлялось бы значение и копировался в таблицу результат. Далее действие бы продолжалось до тех пор, пока один критерий не пробежит от 1 до 4.
Здесь надо отметить, что когда пользователь с использованием созданной формы для создания моделей создаёт модель, то вводит он физические значения критериев, а форма сама считает качественную оценку.
Анализ же чувствительности сразу проводится в качественных оценках, что требует обратного вычисления количественных оценок.

Вот как-то так….
Помогите советом или делом, кто может.
Может базовый какой-то вариант…
Спасибо.
https://drive.google.com/file/d/0B84...ew?usp=sharing
rick1177 вне форума Ответить с цитированием
Старый 21.05.2016, 00:51   #2
rick1177
Пользователь
 
Регистрация: 15.02.2010
Сообщений: 59
По умолчанию

Вот такое у меня видение этой формы
rick1177 вне форума Ответить с цитированием
Старый 21.05.2016, 03:21   #3
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Кросс:
http://www.excelworld.ru/forum/10-23678-1
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 22.05.2016, 22:53   #4
rick1177
Пользователь
 
Регистрация: 15.02.2010
Сообщений: 59
По умолчанию

Дк, Друзья, а чего, мне никто не поможет?
rick1177 вне форума Ответить с цитированием
Старый 22.05.2016, 23:03   #5
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

а не стоило распугивать людей трудным макросом, тем более повторно...
а "трудность" макроса есть понятие неопределенное и очень относительное, как утверждал старик Эйнштейн.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 22.05.2016, 23:06   #6
rick1177
Пользователь
 
Регистрация: 15.02.2010
Сообщений: 59
По умолчанию

Игорь... ну Вы то хоть не бросайте меня... пожалуйста.
rick1177 вне форума Ответить с цитированием
Старый 23.05.2016, 00:49   #7
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

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

тут будет очень много кода
и очень сомневаюсь, что кто-то будет делать это бесплатно
оно вам надо?

тем более, для макроса это всё не нужно
это, скорее, украшения программы, - чем необходимый функционал программы
а у вас и программы-то нет

всё можно сделать в 10 раз проще, не изобретая сложную форму (с динамическим добавлением полей), - а вводя данные на отдельный лист (сами подумайте, - что может быть проще, чем на доп листе нарисовать табличку из 3 столбцов, чтобы туда данные вводить)
Сделали лист, - сэкономили себе десятки часов работы

Цитата:
нажатие на кнопке «начать» производило бы следующие действия:
1) Создавался новый лист;
2) Генерировалась бы шапка таблицы.
ну и?
в чем проблема-то?
вы не знаете, как макросом создать новый лист?
Если не знаете, и не способны найти ответ в гугле, - копите деньги, с таким уровнем знаний программу не написать.
Если знаете, - так зачем тут вообще пишете?
взяли бы, да создали эту кнопку, и написали бы 1 строку кода для создания листа:
Код:
worksheets.add
по остальным пунктам - аналогично

Вообще, у вас в задании слишком много букв, - потому, никто помогать не хочет.
Вы обратились не с конкретной проблемой (которую вам давно бы подсказали, как решить), - а с каким-то навороченным техзаданием, - а тут вряд ли кому-то охота реализовывать всё «от и до» за вас.
EducatedFool вне форума Ответить с цитированием
Старый 23.05.2016, 09:52   #8
alex77755
Форумчанин
 
Аватар для alex77755
 
Регистрация: 14.02.2009
Сообщений: 753
По умолчанию

немного почитал.
Сразу непонятки в логике
Логика таблицы будет такой (сначала для ячейки 1, 2, 3, потому что всё по аналогии). Если пользователь выставил в ячейку 1 значение F0, то в ячейку 2 ему разрешается выставить либо F1, либо F2, в ячейку 3 можно выставить F1 или F3.
Если в 1 то в 2 то в 3
F0 F0 F1 F2 F0 F1 F3
F1 F3 F4 F5 F2 F4 F5
F2 F0 F1 F2 F2 F4 F5
F3 F3 F4 F5 F0 F1 F3
В описание одно, а в таблице другое!
Чему верить?
Можно в 2 вставлять F0 как указано в таблице или нельзя как указано в описании?
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru
alex77755 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Небольшой такой вопросик ... совсем небольшой .. zipo666 Помощь студентам 0 18.12.2011 12:49
Трудный отрезок в тексте программы newerdie Помощь студентам 1 17.05.2010 08:48
Трудный отрезок в тексте программы Грехоносец Помощь студентам 2 17.05.2010 03:17
Трудный list index out of bounds Gypsy Общие вопросы Delphi 8 11.11.2009 15:12
перевести не трудный код программы из Delphi на С++ Ilius Помощь студентам 2 16.12.2008 18:11