в некой ячейке есть некая формула, допустим такая =СУММ(D10:D30) . если в промежутке между строками 1 и 10 добавить еще одну строку, то формула в исходной ячейке автоматически изменится на =СУММ(D11:D31). а как сделать так, что бы этого не происходило? т.е. что бы формула так и оставалась вида =СУММ(D10:D30)? p.s. =СУММ($D$10:$D$30) - не то. :о(( заранее огромное спасибо. :о))
а тоже самое, только в ОпенОффисе кто-нибудь знает? У меня проблема, правда, посложнее, наверное: данные копируются на другой лист книги, при этом, тот лист, который копируется, в свою очередь берет данные с другого листа. Так вот надо, чтоб при копировании во всех листах данные брались с одного и того же листа. Конкретно: данные берутся из листа "Расчеты" в лист ААА (к примеру): =Расчеты.B56-Расчеты.E57-Расчеты.C56*0,000413 Копирую лист ААА в лист ССС, ставлю его за листом БББ и получаю: =БББ.B56-БББ.E57-БББ.C56*0,000413 а надо-то как в листе ААА: =Расчеты.B56-Расчеты.E57-Расчеты.C56*0,000413
pm, не пойму как это работает. Как сохранить диапазон - понял, но вставить его не получается. При нажатии на Ок после выбора диапазона ничего не происходит...
а еще пара вопросов. 1) есть несколько идентичных листов с данными. в каждом листе есть ячейка с формулой, которая использует значения со своего листа. формула само-собой одна и таже в каждом листе. так вот, эта формула еще не до конца проработана и подлежит регулярной коррекции. каждый раз править её в н-ном количестве листов напрягает. можно как нибудь её вынести на отдельный лист и оттуда копировать в каждый из остальных? 2) в ячейке рассчитывает значение. это значение может получиться положительным, отрицательным либо равным 0. как сделать так, что бы при условии что значение получилось больше нуля оно "обнулялось." т.е. становилось равным нулю. :о))
1) В чем напряг-то? Какая разница на скольки листах править формулу одновременно? Или выделять лень каждый раз? 2) Кхм-м-м.... =МИН(ячейка;0). Это даже не школа, щас в детском саду такие задачки решают. ---------- Сообщение добавлено 12.10.2011 21:34 ---------- По п.1 в можно забацать такую VBA функцию: Public Function EvaluateFormula(orig As Range, data as Range) EvaluateFormula = Application.Caller.Worksheet.Evaluate(Mid(orig.Formula, 2)) End Function Использовать: =EvaluateFormula(Ячейка_с_исходной_формулой;Область_исходных_данных_для_формулы) Она будет вычислять формулу из исходной ячейки как если бы она была записана на текущем листе и возвращать результат. Область_исходных_данных_для_формулы - это те ячейки, при изменении которых формулу надо пересчитывать (можно хоть весь лист туда записать).