Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Присвоить буквам значение и сумировать общую сумму - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Присвоить буквам значение и сумировать общую сумму (Формулы/Formulas)
Присвоить буквам значение и сумировать общую сумму
kolina Дата: Суббота, 26.05.2018, 23:32 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Пытаюсь оставить график рабочий
Необходимо в определённом диапозоне ячеек сосчитать количество рабочих часов в месяц. Планирую это делать буквами. Если буква большая, то присваивать этой ячейке значение 14. Если буква маленькая, то присваивать значение 12. Но так как человек работает в разных отделах, следовательно и буквы будут разные "К","О" и т.д. Следовательно какая буква будет не важно, а важно она большая или маленькая. В прикреплённом файле есть таблица, в ячейку А10 нужно что бы считались рабочие часы из диапозона (F10:AJ10). Там есть 8 маленьких букв "к", и 4 маленьких букв "м", им присваиваем значение 12 и суммируем с 3 большими буквами с присвоеным значением 14.
Смысл в чем.
При составлении графика будут вводится разные буквы:либо маленькие, либо большие, либо ячейка будет пустая. А в определённую ячейку будут суммироваться часы в зависимости от размера букв.
Если кто знает как решить такую задачу, помогите! Спасибо!
К сообщению приложен файл: 5963155.xlsx(10.4 Kb)
 
Ответить
СообщениеПытаюсь оставить график рабочий
Необходимо в определённом диапозоне ячеек сосчитать количество рабочих часов в месяц. Планирую это делать буквами. Если буква большая, то присваивать этой ячейке значение 14. Если буква маленькая, то присваивать значение 12. Но так как человек работает в разных отделах, следовательно и буквы будут разные "К","О" и т.д. Следовательно какая буква будет не важно, а важно она большая или маленькая. В прикреплённом файле есть таблица, в ячейку А10 нужно что бы считались рабочие часы из диапозона (F10:AJ10). Там есть 8 маленьких букв "к", и 4 маленьких букв "м", им присваиваем значение 12 и суммируем с 3 большими буквами с присвоеным значением 14.
Смысл в чем.
При составлении графика будут вводится разные буквы:либо маленькие, либо большие, либо ячейка будет пустая. А в определённую ячейку будут суммироваться часы в зависимости от размера букв.
Если кто знает как решить такую задачу, помогите! Спасибо!

Автор - kolina
Дата добавления - 26.05.2018 в 23:32
gling Дата: Воскресенье, 27.05.2018, 03:16 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1814
Репутация: 439 ±
Замечаний: 0% ±

2010
Попробуйте формулу массива
Код
=СУММ(ЕСЛИ(ЛЕВБ(C$9)=$F10:$AK10;(КОДСИМВ($F10:$AJ10)<224)*14+(КОДСИМВ($F10:$AJ10)>223)*12;0))


ЯД-41001506838083
 
Ответить
СообщениеПопробуйте формулу массива
Код
=СУММ(ЕСЛИ(ЛЕВБ(C$9)=$F10:$AK10;(КОДСИМВ($F10:$AJ10)<224)*14+(КОДСИМВ($F10:$AJ10)>223)*12;0))

Автор - gling
Дата добавления - 27.05.2018 в 03:16
Светлый Дата: Воскресенье, 27.05.2018, 07:50 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 559
Репутация: 131 ±
Замечаний: 0% ±

Excel 2007
Очень специфический вариант. Под конкретные буквы строго по постановке задачи. Массивная:
Код
=СУММ((ДЛСТР(F10:AJ10)=1)*ОТБР((404-КОДСИМВ(F10:AJ10&0))/14))

И более-менее расширяемая:
Код
=СУММ(МУМНОЖ(({234:236:202:204}=КОДСИМВ(F10:AJ10&0))*{12:12:14:14};ТРАНСП($F$9:$AJ$9^0)))

Доб.
Код
=СУММ(ЕСЛИ(ДЛСТР(F10:AJ10)=1;14-(КОДСИМВ(F10:AJ10&0)>223)*2))

Код
=СУММ(ЕСЛИ(ДЛСТР(F10:AJ10)=1;7-(КОДСИМВ(F10:AJ10&0)>223)))*2


Программировать проще, чем писать стихи.

Сообщение отредактировал Светлый - Воскресенье, 27.05.2018, 08:08
 
Ответить
СообщениеОчень специфический вариант. Под конкретные буквы строго по постановке задачи. Массивная:
Код
=СУММ((ДЛСТР(F10:AJ10)=1)*ОТБР((404-КОДСИМВ(F10:AJ10&0))/14))

И более-менее расширяемая:
Код
=СУММ(МУМНОЖ(({234:236:202:204}=КОДСИМВ(F10:AJ10&0))*{12:12:14:14};ТРАНСП($F$9:$AJ$9^0)))

Доб.
Код
=СУММ(ЕСЛИ(ДЛСТР(F10:AJ10)=1;14-(КОДСИМВ(F10:AJ10&0)>223)*2))

Код
=СУММ(ЕСЛИ(ДЛСТР(F10:AJ10)=1;7-(КОДСИМВ(F10:AJ10&0)>223)))*2

Автор - Светлый
Дата добавления - 27.05.2018 в 07:50
Nic70y Дата: Воскресенье, 27.05.2018, 08:12 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4737
Репутация: 1023 ±
Замечаний: 0% ±

Excel 2013
Код
=СУММ(ЕЧИСЛО(НАЙТИ(ПРОПИСН(ЕСЛИ(F10:AJ10="";"ю";F10:AJ10));F10:AJ10))*14;ЕЧИСЛО(НАЙТИ(СТРОЧН(ЕСЛИ(F10:AJ10="";"ю";F10:AJ10));F10:AJ10))*12)
К сообщению приложен файл: 6176090.xlsx(10.5 Kb)


ЯД(poison) 41001841029809
+7 978 049 98 74 (мтс)
 
Ответить
Сообщение
Код
=СУММ(ЕЧИСЛО(НАЙТИ(ПРОПИСН(ЕСЛИ(F10:AJ10="";"ю";F10:AJ10));F10:AJ10))*14;ЕЧИСЛО(НАЙТИ(СТРОЧН(ЕСЛИ(F10:AJ10="";"ю";F10:AJ10));F10:AJ10))*12)

Автор - Nic70y
Дата добавления - 27.05.2018 в 08:12
kolina Дата: Воскресенье, 27.05.2018, 10:31 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Друзья! Спасибо всем, за быстрый отклик. Вопрос закрылся. Пока выбрал последний предложенный вариант, так как там уже формула вставлена в таблицу. Спасибо всем за помощь!!!
 
Ответить
СообщениеДрузья! Спасибо всем, за быстрый отклик. Вопрос закрылся. Пока выбрал последний предложенный вариант, так как там уже формула вставлена в таблицу. Спасибо всем за помощь!!!

Автор - kolina
Дата добавления - 27.05.2018 в 10:31
Nic70y Дата: Воскресенье, 27.05.2018, 10:38 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4737
Репутация: 1023 ±
Замечаний: 0% ±

Excel 2013
так
Код
=СУММ(ЕЧИСЛО(НАЙТИ(ПРОПИСН(ЕСЛИ(ДЛСТР(F10:AJ10)=1;F10:AJ10));F10:AJ10))*14;ЕЧИСЛО(НАЙТИ(СТРОЧН(ЕСЛИ(ДЛСТР(F10:AJ10)=1;F10:AJ10));F10:AJ10))*12)
наверное правильней, вдруг у Вас ю случиться
К сообщению приложен файл: 5354352.xlsx(11.3 Kb)


ЯД(poison) 41001841029809
+7 978 049 98 74 (мтс)
 
Ответить
Сообщениетак
Код
=СУММ(ЕЧИСЛО(НАЙТИ(ПРОПИСН(ЕСЛИ(ДЛСТР(F10:AJ10)=1;F10:AJ10));F10:AJ10))*14;ЕЧИСЛО(НАЙТИ(СТРОЧН(ЕСЛИ(ДЛСТР(F10:AJ10)=1;F10:AJ10));F10:AJ10))*12)
наверное правильней, вдруг у Вас ю случиться

Автор - Nic70y
Дата добавления - 27.05.2018 в 10:38
ASWP Дата: Воскресенье, 27.05.2018, 11:30 | Сообщение № 7
Группа: Пользователи
Ранг: Участник
Сообщений: 70
Репутация: 4 ±
Замечаний: 0% ±

Excel 2007
Nic70y, [offtop]Спасибо, эта первая формула, которую я сам понял :D [/offtop]


я знаю что ничего не знаю, но другие не знают и этого
 
Ответить
СообщениеNic70y, [offtop]Спасибо, эта первая формула, которую я сам понял :D [/offtop]

Автор - ASWP
Дата добавления - 27.05.2018 в 11:30
_Boroda_ Дата: Воскресенье, 27.05.2018, 19:04 | Сообщение № 8
Группа: Модераторы
Ранг: Местный житель
Сообщений: 12744
Репутация: 5226 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Вариант немассивной формулой
Код
=14*СЧЁТЕСЛИ(F10:AJ10;"?")-2*СУММПРОИЗВ(--(КОДСИМВ(F10:AJ10&0)>223))

эта первая формула, которую я сам понял

Поясню для самостоятельного понимания
1. СЧЁТЕСЛИ(F10:AJ10;"?") - количество ячеек, в которых есть один символ (подстановочный знак "?" - это как раз один символ и есть, "??" - два символа, "*" - любое количество символов, "?*" - один или больше символов). Умножаем все это на 14 (как будто все буквы большие)
2. КОДСИМВ - дает код ANCII первого символа в ячейках. Чтобы на пустых ячейках не давал ошибку, приклеиваем справа к значениям из ячеек нолик - КОДСИМВ(F10:AJ10&0)
3. 233 - это код большой буквы "Я"
4. Все то, что меньше "Я" - это маленькие русские буквы (см. таб.4 из отсюда https://vscode.ru/filesForArticles/ascii.pdf)
5. КОДСИМВ(F10:AJ10&0)>223 - дает массив из ИСТИНА для маленьких букв и ЛОЖЬ для больших
6. --(КОДСИМВ(F10:AJ10&0)>223) - преобразовывает ИСТИНА и ЛОЖЬ из п.5 в 1 и 0 соответственно
7. СУММПРОИЗВ складывает всё из п.6, получаем количество маленьких букв
8. Умножаем п.7 на 2 (2=14-12) и вычитаем из п.1
К сообщению приложен файл: 5963155_1.xlsx(10.8 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеВариант немассивной формулой
Код
=14*СЧЁТЕСЛИ(F10:AJ10;"?")-2*СУММПРОИЗВ(--(КОДСИМВ(F10:AJ10&0)>223))

эта первая формула, которую я сам понял

Поясню для самостоятельного понимания
1. СЧЁТЕСЛИ(F10:AJ10;"?") - количество ячеек, в которых есть один символ (подстановочный знак "?" - это как раз один символ и есть, "??" - два символа, "*" - любое количество символов, "?*" - один или больше символов). Умножаем все это на 14 (как будто все буквы большие)
2. КОДСИМВ - дает код ANCII первого символа в ячейках. Чтобы на пустых ячейках не давал ошибку, приклеиваем справа к значениям из ячеек нолик - КОДСИМВ(F10:AJ10&0)
3. 233 - это код большой буквы "Я"
4. Все то, что меньше "Я" - это маленькие русские буквы (см. таб.4 из отсюда https://vscode.ru/filesForArticles/ascii.pdf)
5. КОДСИМВ(F10:AJ10&0)>223 - дает массив из ИСТИНА для маленьких букв и ЛОЖЬ для больших
6. --(КОДСИМВ(F10:AJ10&0)>223) - преобразовывает ИСТИНА и ЛОЖЬ из п.5 в 1 и 0 соответственно
7. СУММПРОИЗВ складывает всё из п.6, получаем количество маленьких букв
8. Умножаем п.7 на 2 (2=14-12) и вычитаем из п.1

Автор - _Boroda_
Дата добавления - 27.05.2018 в 19:04
ASWP Дата: Воскресенье, 27.05.2018, 20:00 | Сообщение № 9
Группа: Пользователи
Ранг: Участник
Сообщений: 70
Репутация: 4 ±
Замечаний: 0% ±

Excel 2007
_Boroda_, [offtop]Спасибо, логика данного примера понятна, но вот как прийти к такой логике, это пока сложно)[/offtop]


я знаю что ничего не знаю, но другие не знают и этого

Сообщение отредактировал ASWP - Воскресенье, 27.05.2018, 20:01
 
Ответить
Сообщение_Boroda_, [offtop]Спасибо, логика данного примера понятна, но вот как прийти к такой логике, это пока сложно)[/offtop]

Автор - ASWP
Дата добавления - 27.05.2018 в 20:00
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Присвоить буквам значение и сумировать общую сумму (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс цитирования
© 2010-2018 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!