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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.08.2013, 14:01   #1
nedvedav
Новичок
Джуниор
 
Регистрация: 30.08.2013
Сообщений: 1
По умолчанию чем заменить множественное использование =ЕСЛИ

Здравствуйте!
Столкнулся с такой проблемой. Имеется список состоящий из 2 столбцов(услуги и стоимость). И нужно эти данные заполнять в таблице. Выпадающий список услуг я сделал, теперь нужно чтобы автоматом(при выборе услуги) заполнялась вторая колонка(например, 1-я колонка вынос воды(выбрано из списка), 2-я заполняется автоматом 3,51, если выбрать-привоз продуктов - 4,01 и т.д.)
пример списка:
вынос дров - 3,51
пр.продуктов - 4,01
стирка - 90,02
я заполнил таблицу такой формулой:
=если(А1="вынос дров";"3,51";если(А1="пр.продуктов" ;"4,01";если(а1="стирка";"90,02" ;" ")))
Все работает, но во-первых список огромный (57 позиций);
во-вторых таблица куда заполняется эта формула тоже велика, и надо для каждой ячейки менять значения(т.е. А1=, А2=, .... А59=);
и втретьих - запись такого "4,01" вида не позволяет в итоге посчитать сумму по данной колонке, а при записи В1=4,01, ругается на циклическую ссылку.

Подскажите пожалуйста, можно ли заменить данную конструкцию чем то облегченным, чтобы не вписывать в каждую ячейку вот такую формулу:

=ЕСЛИ(R5C5="1 Побелка, штукат. стен и потол. кв.м";"4,62";ЕСЛИ(R5C5="2 Покраска стен .изгороди кв.м";"6,16";ЕСЛИ(R5C5="3 Покр. оконных рам 1 шт";"6,16";ЕСЛИ(R5C5="4 Наклейка обоев кв.м";"6,16";ЕСЛИ(R5C5="5 Мытье окон дверей -1 шт";"6,16";ЕСЛИ(R5C5="6 Мытье потолков кв.м";"4,62";ЕСЛИ(R5C5="7 Утепление окон";"3,08";ЕСЛИ(R5C5="8 Чистка ковров паласов 3 м. кв.";"3,08";ЕСЛИ(R5C5="9 Подметание пола 1 м. кв.";"1,54";ЕСЛИ(R5C5="10 Мытье паласов, дорожек 1 м.кв.";"6,16";ЕСЛИ(R5C5="11 Чистка печи от сажи 1 уел.";"15,40";ЕСЛИ(R5C5="12 Ремонт топки печи 1 печь";"15,40";ЕСЛИ(R5C5="13 Просеивание угля 1 вед.";"4,62";ЕСЛИ(R5C5="14 Колка угля 2 вед.";" 12,32";ЕСЛИ(R5C5="15 Рубка дров 0.5 куб";"15,40";ЕСЛИ(R5C5="16 Перенос дров в сарай 0.5 куб";"6,16";ЕСЛИ(R5C5="17 Вскопать огород, грядки 0.2 кв.м";"15,40";ЕСЛИ(R5C5="18 Заборонить огород, грядки 0.2 сот.";" 7,70";ЕСЛИ(R5C5="19 Посадка картофеля 0.5 сот.";" 15,40";ЕСЛИ(R5C5="20 Убор. картофеля и перенос с огорода";"15,40";ЕСЛИ(R5C5="21 Сортировка картофеля 2 вед.";" 7,70";ЕСЛИ(R5C5="22 Поднять(опустить)из подвала 2 вед.";" 3,08";ЕСЛИ(R5C5="23 Прополка огорода 0.5 сот.";" 12,32";ЕСЛИ(R5C5="24 Прополка грядок вручную кв.м";"4,62";ЕСЛИ(R5C5="25 Высадка рассады (10 штук)";" 4,62";ЕСЛИ(R5C5="26 Полив огорода шлангом кв.м.";" 1,54";ЕСЛИ(R5C5="27 Полив огорода ведрами 2 вед.";" 4,62";ЕСЛИ(R5C5="28 Дост. воды сверх гар. перечня 1 вед.";" 3,08";ЕСЛИ(R5C5="29 Сбор урожая ягод-1 кг";"4,62";ЕСЛИ(R5C5="30 Сбор урожая фруктов 1 вед.";" 4,62";ЕСЛИ(R5C5="31 Помощь в консервации 1 бан.";" 4,62";ЕСЛИ(R5C5="32 Перенос зерноотходов 2 вед.";" 4,62";ЕСЛИ(R5C5="33 Уборка подвала от мусора кв.м.";" 3,08";ЕСЛИ(R5C5="34 Уборка мусора во дворе 5 кв.м";"4,62";ЕСЛИ(R5C5="35 Скосить траву 0,5 сот.";" 9,24";ЕСЛИ(R5C5="36 Обрезка деревьев. кустарников(1 час";"12,32";ЕСЛИ(R5C5="37 Расчистка дороги от снега 5 кв.м.";" 4,62";ЕСЛИ(R5C5="38 Мытье посуды 1 уел.";" 6,16";ЕСЛИ(R5C5="39 Мытье холодильника 1ед";"6,16";ЕСЛИ(R5C5="40 Мытье газ. плиты, электр .пл. 1 ед.";" 6,16";ЕСЛИ(R5C5="41 Стирка в стир. машине 3 кг";"3,08";ЕСЛИ(R5C5="42 Стирка вруч. (полоск.и вывеш.) 1 кг";"6,16";ЕСЛИ(R5C5="43 Утюжка белья 1 кг";"4,62";ЕСЛИ(R5C5="44 Утюжка и развешив. штор 1 окно";"4,62";ЕСЛИ(R5C5="45 Генеральная уборка 1 кв.м.";"4,62";ЕСЛИ(R5C5="46 Вл.уб. св.20 кв.м., имеющ. родств.";" 1,54";ЕСЛИ(R5C5="47 Вынос тверд. быт. отх. 1 вед.";" 3,08";ЕСЛИ(R5C5="48 Вызов парикмах .на дом";"4,62";ЕСЛИ(R5C5="49 Стрижка ногтей 1 услуга";"7,70";ЕСЛИ(R5C5="50 Забой,ощип.,разделка курица 1 туш.";"7,70";ЕСЛИ(R5C5="51 утка 1 тушка";"9,24";ЕСЛИ(R5C5="52 гусь 1 тушка";"13,86";ЕСЛИ(R5C5="53 Мел. рем.одеж,швейн.усл. 15 мин.";" 3,08";ЕСЛИ(R5C5="54 Смена пост. белья 1 компл.";" 4,62";ЕСЛИ(R5C5="55 Купание обслуживаемого 1 усл.";" 15,40";ЕСЛИ(R5C5="56 Уход за комнатными растен. 1 усл.";" 3,08";ЕСЛИ(R5C5="57 Уход за захорон. усоб. род. 1 захор.";" 15,400";" ")))))))))))))))))))))))))))))))))) )))))))))))))))))))))))

Если это возможно, прикрепите пример или ссылочку. Может это можно оптимизировать с помощью макросов. Спасибо!
nedvedav вне форума Ответить с цитированием
Старый 30.08.2013, 16:42   #2
staniiislav
Форумчанин
 
Аватар для staniiislav
 
Регистрация: 16.04.2010
Сообщений: 695
По умолчанию

Вам помогут вот эти ссылки:

http://www.planetaexcel.ru/techniques/2/110/

http://www.planetaexcel.ru/techniques/2/92/
Единственный способ стать умнее, играть с более умным противником...
staniiislav вне форума Ответить с цитированием
Старый 30.08.2013, 17:11   #3
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

ВПР Вам в помощь.
формула получится символов до 50 в длину.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 30.08.2013, 19:04   #4
Czeslaw
Пользователь
 
Регистрация: 08.07.2013
Сообщений: 95
По умолчанию

"Огласите весь список пожалуйста".
Czeslaw вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
,Даны целые числа K и L. Если числа не равны, то заменить меньшее из них остатком от деления большего на меньшее, а если рав Proskurina Помощь студентам 3 25.03.2013 20:51
Чем заменить тэг <ul> Zymic HTML и CSS 2 11.06.2011 14:27
чем заменить goto? Agronom Общие вопросы C/C++ 3 19.12.2009 19:43
Чем заменить GetFreeSystemResources? rocky7 Компоненты Delphi 0 23.08.2009 20:20
Заменить значение на 1 если >5 rustam_colpal Microsoft Office Excel 18 22.05.2008 15:09