Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Формула возводящая отрицательное чисто в 0 / 23 сообщений из 23, страница 1 из 1
02.11.2009, 10:12
    #36285199
Garnizone
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Здравствуйте

Нужна формула возводящая отрицательное чисто в 0

Мой пример:

Есть 2 формулы в А1 =слчис()-0,5 и в B1 =если(А1<0;0;A1)

Если ли возможность разместить это все в 1 ячейке?

Заранее спасибо
...
Рейтинг: 0 / 0
02.11.2009, 10:55
    #36285303
MaximuS_G
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
=если((слчис()-0,5)<0;0;слчис()-0,5)) так ?
...
Рейтинг: 0 / 0
02.11.2009, 13:03
    #36285736
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
MaximuS_G=если((слчис()-0,5)<0;0;слчис()-0,5)) так ? - я так попробовал - ерунда почему-то получается. Когда одновременно видны оба варианта, заметно, что результаты разные у рандомизе, или это совмещённая формула переделывает. Кроме того, отрицательные значения тоже проскакивают. Мой синтаксис =IF((RAND()-0.5)<0,0,RAND()-0.5) или даже так:
=IF((RAND()-0.5)<0,0,(RAND()-0.5))
Даже интересно, времени только разбираться нет... Может этот RAND() на каждом этапе работы формулы новый?
...
Рейтинг: 0 / 0
02.11.2009, 13:18
    #36285776
Garnizone
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
MaximuS_G=если((слчис()-0,5)<0;0;слчис()-0,5)) так ?

Не получается, я так пробовал, каждая запись слчис() или rand() генерирует новое случайное число.
Я думал может в excel завалялась за поле моих знаний функция типа ABS только чтобы отрицательное число в 0 превращала.

Доп.инфа:
У меня таблица вероятность рассчитывает и на листе около тысячи примерно таких формул =ОКРУГЛ(((СЛЧИС()*(Ow1*1,5-Ow1/2)+Ow1/2)*(ЕСЛИ((Ow1/(Ow1+Cur2)+СЛЧИС())>1;1;0))*(ЕСЛИ(((Ow2/(Ow2+Cu2))*2)*(СЛЧИС()*100)>50;1;0)+1))-(СЛЧИС()*(Cur2-Cur2/2)+Cur2/2);0)

Дело не в формуле, я им имена присвоил и с ними все нормально, но их приходится всю тысячу размещать и еще рядом это =если(А1<0;0;A1) тоже тысячу.

Как бы это загнать в несколько ячеек?
...
Рейтинг: 0 / 0
02.11.2009, 14:02
    #36285889
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Что-то вроде этого, единственное под локаль подогнать нужно будет:

=--ТЕКСТ(СЛЧИС()-0,5;"Основной;""0"";0")
...
Рейтинг: 0 / 0
02.11.2009, 15:37
    #36286218
Garnizone
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
DeggasadЧто-то вроде этого, единственное под локаль подогнать нужно будет:

=--ТЕКСТ(СЛЧИС()-0,5;"Основной;""0"";0")

О! Спасибо, работает.

Задача выполнена. Не зря я сюда обратился.



ТЕКСТ(значение;формат)
Преобразует значение в текст в заданном числовом формате.

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

Все гениальное просто.

Не понял правда зачем двойной минус, вроде формула не дает логического значения.
А про третий параметр формата не знал, который показывает результат в случае 0.
Сколько в excel работаю никогда ТЕКСТ не пользовался, век живи век учись.
...
Рейтинг: 0 / 0
03.11.2009, 08:40
    #36287348
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Garnizone...
Не понял правда зачем двойной минус, вроде формула не дает логического значения.
...
Формула дает текстовое значение. Поэтому как и в случае с логическим значением - если после используются арифметические вычисления, то не нужен двойной минус, но если отдельно формулу рассматривать, то вернет текст а не число.
...
Рейтинг: 0 / 0
16.11.2009, 11:10
    #36311982
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
=A1*(ЗНАК(A1)=1)
...
Рейтинг: 0 / 0
16.11.2009, 11:13
    #36311987
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Опять поспешил :(
...
Рейтинг: 0 / 0
16.11.2009, 11:14
    #36311988
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
vikttur=A1*(ЗНАК(A1)=1)
Читай внимательней...
нужно в одной формуле, без промежуточной ячейки. А слчис() при двойном вызове в одной формуле генерит 2 разных случайных числа :).
...
Рейтинг: 0 / 0
16.11.2009, 12:59
    #36312306
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Так написал же, что ошибся. Модераторам - посты можно удалить, информации не содержат.
...
Рейтинг: 0 / 0
16.11.2009, 13:14
    #36312349
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
не успел заметить - одновременно писали :)
...
Рейтинг: 0 / 0
16.11.2009, 15:19
    #36312761
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Утром все-таки была правильная мысль. Но пришла, посмотрела на непроснувшийся мозг и ушла :)
Рассуждаем.
По задаче - необходимо исключить отрицательные значения.
Возможны несколько вариантов.

1. Не допустить отрицательных, т.е. вывести значения от 0 до 0,5. В таком случае
а) =(СЛЧИС()*4+1)/10
б) =СЛУЧМЕЖДУ(0;5)/10 или =СЛУЧМЕЖДУ(0;50000000)/100000000
Для СЛУЧМЕЖДУ: Сервис-Надстройки-Пакет_анализа-галка.

2. Заменить отрицательные на ноль. В таком случае, по теории вероятностей, количество нулей будет равно количеству положительных. Даже нулей больше - ведь кроме -/+ может быть еще и ноль. Для этого варианта
=((СЛЧИС()*4+1)/10)*(СЛЧИС()>0) или то же со СЛУЧМЕЖДУ.
Первая часть - случайное число между 0 и 0,5, вторая - случайное выпдение "1" или "0"
3. Не обнаружен :)
Найдете - поделитесь.
...
Рейтинг: 0 / 0
16.11.2009, 16:05
    #36312894
qwrqwr_
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
vikttur
=((СЛЧИС()*4+1)/10)*(СЛЧИС()>0) или то же со СЛУЧМЕЖДУ.
Первая часть - случайное число между 0 и 0,5, вторая - случайное выпдение "1" или "0"
3. Не обнаружен :)
Найдете - поделитесь.делимся:
красненький сомножитель даст (почти) всегда TRUE, т.е. домножит на единицу.
если запустите много-много раз - возможно поймаете разик, когда СЛЧИС() вернет точно нуль - тогда все произведение обратится в нуль, независимо от значения СЛЧИС() в 1ой части формулы - которое будет совсем другое.
Прочтите тут еще раз.
...
Рейтинг: 0 / 0
16.11.2009, 16:13
    #36312916
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
читайте условие, тама формулка посложнее будет и всю ее вместе нужно обработать искомым выражением.
...
Рейтинг: 0 / 0
16.11.2009, 16:18
    #36312937
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Смотрите между строк :)
Ошибся, подразумевалось авторское слчис()-0,5:
=((СЛЧИС()*4+1)/10)*(СЛЧИС()-0,5>0)
...
Рейтинг: 0 / 0
16.11.2009, 16:30
    #36312967
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
viktturСмотрите между строк :)
Ошибся, подразумевалось авторское слчис()-0,5:
=((СЛЧИС()*4+1)/10)*(СЛЧИС()-0,5>0)

Как тебе еще объяснить?
См сюда
Там увидишь, например:
ОКРУГЛ(((СЛЧИС()*(Ow1*1,5-Ow1/2)+Ow1/2)*(ЕСЛИ((Ow1/(Ow1+Cur2)+СЛЧИС())>1;1;0))*(ЕСЛИ(((Ow2/(Ow2+Cu2))*2)*(СЛЧИС()*100)>50;1;0)+1))-(СЛЧИС()*(Cur2-Cur2/2)+Cur2/2);0)
Все это выражение нужно заключить в некую формулу, которая в идеале предполагает использования выражения один раз, так как при повторном пересчете дает другой результат. Если у тебя идеи как исходные формулы по другому написать это другой вопрос, тут не приводились все формулы и вряд ли можно судить о потребности автора. Тут рассматривалась именно задача в вышеописанном контексте.
...
Рейтинг: 0 / 0
16.11.2009, 16:33
    #36312974
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
У-у-у... А слона-то...
Каюсь.
...
Рейтинг: 0 / 0
16.11.2009, 22:47
    #36313667
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Еще вариант, который раньше не выкладывал, т.к. он длиннее, но зато он в любой локали может работать
=--ЗАМЕНИТЬ(ПОДСТАВИТЬ(СЛЧИС()-0,5;"-";ПОВТОР(0;50));50;50;"")
...
Рейтинг: 0 / 0
16.11.2009, 23:11
    #36313692
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Из той же серии:
=--ПСТР(ПОДСТАВИТЬ(СЛЧИС()-0,5;"-";ПОВТОР(0;50));1;50)
=--ЛЕВСИМВ(ПОДСТАВИТЬ(СЛЧИС()-0,5;"-";ПОВТОР(0;50));50)
...
Рейтинг: 0 / 0
16.11.2009, 23:14
    #36313696
Deggasad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Вы все будете смеяться
=МАКС(СЛЧИС()-0,5;0)
я долго смеялся
...
Рейтинг: 0 / 0
16.11.2009, 23:46
    #36313716
qwrqwr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Deggasad
=МАКС(СЛЧИС()-0,5;0)
Респект! красиво.
...
Рейтинг: 0 / 0
17.11.2009, 00:43
    #36313750
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Формула возводящая отрицательное чисто в 0
Во как! А оно рядом лежало!

Так как я поднял тему и вдруг автора еще заинтересует, то слово по формуле.
Garnizone, Вашу формулу можно несколько упростить за счет замены ЕСЛИ на логическое выражение. Например:
ЕСЛИ((Ow1/(Ow1+Cur2)+СЛЧИС())>1;1;0)
равнозначно
Ow1/(Ow1+Cur2)+СЛЧИС()>1
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Формула возводящая отрицательное чисто в 0 / 23 сообщений из 23, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]