Deutsch
Germany.ruФорумы → Архив Досок→ Компьютер & Co

Помогите с формулой EXEL

290  1 2 все
ДЗЕН прохожий08.11.14 12:49
ДЗЕН
NEW 08.11.14 12:49 
Последний раз изменено 08.11.14 12:55 (ДЗЕН)
Всем дзен :)
Помогите с формулой если такую можно придумать
Есть таблица с кабелем, который проложен по секциям. Секции выделены серым, число в них не важно, важно наличие или отсутствие числа.
Длина каждой секции сверху выделена зеленым.
В синих ячейках длина кабеля находящихся вне секций.
В желтой ячейке должна быть формула, которая суммирует длины секций, если в серой ячейке есть какое либо число, а также прибавляет длину из синей ячейки.

Вобщем сам я не спец по екселю, поэтому за помощью к вам.
Спасибо
2b | ! 2b (c) Шекспир Мой ДЗЕН
#1 
kaban2377 местный житель08.11.14 14:06
kaban2377
NEW 08.11.14 14:06 
в ответ ДЗЕН 08.11.14 12:49
Т.е.результат желтой ячейки В3 - это сумма ячеек С3,D3,E3 ,F3,G3 ?так что ли? А зеленое неважно?
#2 
Esslinger старожил08.11.14 14:29
NEW 08.11.14 14:29 
в ответ ДЗЕН 08.11.14 12:49
Для А3: =G3+WENN(ISTLEER(C3);0;1)*$C$1+WENN(ISTLEER(D3);0;1)*$D$1+WENN(ISTLEER(E3);0;1)*$E$1+WENN(ISTLEER(F3);0;1)*$F$1
Для остальных протянуть формулу вниз.
#3 
spaceX коренной житель08.11.14 14:29
spaceX
NEW 08.11.14 14:29 
в ответ ДЗЕН 08.11.14 12:49
для Кабеля 1 и немецкого excel(я)
=WENN(C3>0;C1;0)+WENN(D3>0;D1;0)+WENN(E3>0;E1;0)+WENN(F3>0;F1;0)+G3
#4 
ДЗЕН прохожий08.11.14 15:03
ДЗЕН
08.11.14 15:03 
в ответ spaceX 08.11.14 14:29, Последний раз изменено 08.11.14 15:03 (ДЗЕН)
н.п.
Всем спасибо за отклик.
Формула Esslingerа, то что требовалось
2b | ! 2b (c) Шекспир Мой ДЗЕН
#5 
ДЗЕН прохожий08.11.14 15:30
ДЗЕН
NEW 08.11.14 15:30 
в ответ Esslinger 08.11.14 14:29, Последний раз изменено 08.11.14 15:36 (ДЗЕН)
В ответ на:
Для остальных протянуть формулу вниз.

В этом весь кайф екселя, длины полторы тысячи кабелей посчитать протянув мышь вниз. :) Спасибо
2b | ! 2b (c) Шекспир Мой ДЗЕН
#6 
fuedor2003 патриот08.11.14 19:00
fuedor2003
NEW 08.11.14 19:00 
в ответ Esslinger 08.11.14 14:29, Последний раз изменено 08.11.14 19:00 (fuedor2003)
В ответ на:
=G3+WENN(ISTLEER(C3);0;1)*$C$1+WENN(ISTLEER(D3);0;1)*$D$1+WENN(ISTLEER(E3);0;1)*$E$1+WENN(ISTLEER(F3);0;1)*$F$1

а разве в WENN вместо единицы нельзя было поставить нужное значение?
=G3+WENN(ISTLEER(C3);0;$C$1)+WENN(ISTLEER(D3);0;$D$1)+WENN(ISTLEER(E3);0;$E$1)+WENN(ISTLEER(F3);0;$F$1)
чтоб не умножать на единицу
#7 
Bigfoot коренной житель08.11.14 20:17
Bigfoot
NEW 08.11.14 20:17 
в ответ fuedor2003 08.11.14 19:00
Чувствуется матерый оптимизатор кода. :) На добрый толк лучше использовать не ISBLANC, a ISNUMBER - в ячейке может быть пробел/-ы. Но это так, мелкий придиразм.
Oh gravity, thou art a heartless bitch! (c) Dr.Cooper
#8 
Esslinger старожил08.11.14 20:39
NEW 08.11.14 20:39 
в ответ fuedor2003 08.11.14 19:00
Ты прав конечно, можно пару знаков сэкономить. Слепил на скорую руку, т.к. торопился.
#9 
Esslinger старожил08.11.14 20:42
NEW 08.11.14 20:42 
в ответ Bigfoot 08.11.14 20:17, Последний раз изменено 08.11.14 20:42 (Esslinger)
Это на случай если ТС захочет вместо цифр другие знаки использовать.
А вообще формула с кучей wenn() мне не нравится, наверняка можно оптимировать. Но лень, т.к. результат уже достигнут.
#10 
Esslinger старожил08.11.14 20:42
NEW 08.11.14 20:42 
в ответ ДЗЕН 08.11.14 15:30
Пожалуйста
#11 
Bigfoot коренной житель08.11.14 20:48
Bigfoot
NEW 08.11.14 20:48 
в ответ Esslinger 08.11.14 20:42
Пробел в ячейке может быть ошибочно введенным, а ошибку эту найти потом будет не так просто, поэтому вариант с ISNUMBER однозначно более надежен.
Oh gravity, thou art a heartless bitch! (c) Dr.Cooper
#12 
Esslinger старожил08.11.14 21:05
NEW 08.11.14 21:05 
в ответ Bigfoot 08.11.14 20:48
Согласен.
#13 
fuedor2003 патриот08.11.14 21:33
fuedor2003
NEW 08.11.14 21:33 
в ответ Esslinger 08.11.14 20:42
В ответ на:
формула с кучей wenn() мне не нравится

можно венны поменять на сигнумы, уменьшится громоздкость
=ЗНАК(C3)*C1+ЗНАК(D3)*D1+ЗНАК(E3)*E1+ЗНАК(F3)*F1+G3
правда защиты от пробелов не будет
#14 
ДЗЕН прохожий08.11.14 23:07
ДЗЕН
NEW 08.11.14 23:07 
в ответ fuedor2003 08.11.14 21:33
Так,так,так, что значит ЗНАК ? Защита от пробелов ненужна, так как таблицу заполняю я, ошибок стараюсь не делать и все проверяю досканально.
И кстати, что не так с формулой от spaceX, она мне первую строку посчитатла правильно, а дальше где протянул нет. Насколько я понял значек ссылки "$" тоже влияет везде по разному.
2b | ! 2b (c) Шекспир Мой ДЗЕН
#15 
fuedor2003 патриот08.11.14 23:11
fuedor2003
NEW 08.11.14 23:11 
в ответ ДЗЕН 08.11.14 23:07
ЗНАК (функция ЗНАК)
В этой статье описаны синтаксис формулы и использование функции (Функция: Стандартная формула, которая возвращает результат выполнения определенных действий над значениями, выступающими в качестве аргументов. Функции позволяют упростить формулы в ячейках листа, особенно, если они длинные или сложные.) ЗНАК в Microsoft Excel.
Описание
Определяет знак числа. Возвращает значение1, если число положительное, 0 (ноль), если число равно 0, и -1, если число отрицательное
В немецком Ыкселе будет, наверное, sign
#16 
fuedor2003 патриот08.11.14 23:14
fuedor2003
NEW 08.11.14 23:14 
в ответ fuedor2003 08.11.14 23:11
ДЗЕН прохожий08.11.14 23:31
ДЗЕН
NEW 08.11.14 23:31 
в ответ fuedor2003 08.11.14 23:14, Последний раз изменено 08.11.14 23:42 (ДЗЕН)
Ах со, русские функции тоже есть? Спасибо не знал.
Если немецкому офису 2010 скормить русское ЗНАК, он его проглотит? Завтра попробую
Либреофис помнится на линуксе немецкие функции переводил в английские сам.
После чего немецкий МСОфис 2007 эти формулы не понимал и приходилось иф на вен менять ручками...
2b | ! 2b (c) Шекспир Мой ДЗЕН
#18 
ДЗЕН прохожий09.11.14 09:22
ДЗЕН
NEW 09.11.14 09:22 
в ответ fuedor2003 08.11.14 23:14, Последний раз изменено 09.11.14 09:34 (ДЗЕН)
неа, sign не работает, по немецки это называется vorzeichen
=VORZEICHEN(C3)*$C$1+VORZEICHEN(D3)*$D$1+VORZEICHEN(E3)*$E$1+VORZEICHEN(F3)*$F$1+G3
2b | ! 2b (c) Шекспир Мой ДЗЕН
#19 
fuedor2003 патриот09.11.14 10:07
fuedor2003
NEW 09.11.14 10:07 
в ответ ДЗЕН 09.11.14 09:22
ну да, по ссылке синтаксис так и описан
хотя, конечно, немцы могли бы и сократить свои названия
у них наверняка в группе формул по учету рабочего времени найдется функция ARBEITSUNFAEHIGKEITSBESCHEINIGUNGSANFANGSDATUM()
#20 
1 2 все