Страницы: 1
RSS
отрицательные значения
 
Добрый день всем!  
Поиск по форуму не увенчался успехом (пока). Если у кого были подобные вычисления,, подскажите. Есть файл, вычисляющий остатки. Как запретить вычисления в нем отрицательных значений, т.е. если результатом вычисления является отрицательное значение, чтобы excel ругался и игнорировал процесс.    
Спасибо.
 
=ЕСЛИ(D2+B3-C3>=0;D2+B3-C3;"Фиговый результат")
 
В проверку ввода - тип другой - формула - =D3>=0
 
{quote}{login=Юрий М}{date=21.08.2011 11:44}{thema=}{post}=ЕСЛИ(D2+B3-C3>=0;D2+B3-C3;"Фиговый результат"){/post}{/quote}  
Эта функция хороша, но возможно ли, чтобы она оставляла значение, которое было до вычислений? Она просто напишет: "Не то, батенька" и тогда этот текст поведет ошибку дальше, т.к. эта ячейка привязана дальше.
 
{quote}{login=Hugo}{date=21.08.2011 11:53}{thema=}{post}В проверку ввода - тип другой - формула - =D3>=0{/post}{/quote}  
 
А можно поподробнее, я думала об этом, но... немного не хватает знаний :(
 
"Проверка ввода" оставляет предыдущее значение.  
Раскопировать на другие ячейки можно спецвстакой.
 
Расписывать не буду - это есть в приёмах http://www.planetaexcel.ru/tip.php?aid=77
 
{quote}{login=Hugo}{date=21.08.2011 01:05}{thema=}{post}Расписывать не буду - это есть в приёмах http://www.planetaexcel.ru/tip.php?aid=77{/post}{/quote}  
спасибо.
 
Эксплуатируем формулу Юрия :)  
=D2+B3-C3&ЕСЛИ(D2+B3-C3>=0;;" Фиговый результат")
 
{quote}{login=vikttur}{date=21.08.2011 01:17}{thema=}{post}Эксплуатируем формулу Юрия {/post}{/quote}То названия макроса у меня стырят, то паразитируют, то эксплуатируют...
 
Привет форумчанам!  
В продолжение темы хочу еще раз поинтересоваться, как запретить вычисление на листе отрицательных значений. "Проверка ввода" не подходит.  
В ячейках "А" и "В" вручную подставляются значения, в ячейке "С" стоит формула    
(= А-В). При отрицательном результате, отмена вычисления.  
Что-то вроде:  
Worksheet_Calculate()  
если при вычислении в заданном диапазоне получается отрицательное число, то    
MsgBox "Wrong number!"  
и отмена вычисления.  
Заранее спасибо.
 
Почему не подходит?
 
на примере post_251866.xls
 
на примере post_251866.xls  
Можно ведь проще:  
 
 
Private Sub Worksheet_Change(ByVal Target As Range)  
Application.EnableEvents = False  
   If [D3] < 0 Then MsgBox "Wrong number!": Application.Undo
Application.EnableEvents = True  
End Sub
 
Согласен.
 
{quote}{login=Hugo}{date=22.12.2011 10:12}{thema=re: В продолжение темы}{post}на примере post_251866.xls  
Можно ведь проще:  
 
 
Private Sub Worksheet_Change(ByVal Target As Range)  
Application.EnableEvents = False  
   If [D3] < 0 Then MsgBox "Wrong number!": Application.Undo
Application.EnableEvents = True  
End Sub{/post}{/quote}  
 
Ура! Работает! Спасибо.
Страницы: 1
Читают тему
Наверх