Посчитать формулу и закрепить результат и снова посчитать и закрепить =)

Автор Ramzes_II, 15.01.2013, 18:05

« назад - далее »

Ramzes_II

Всем привет!
Возможно ли сделать такое в excel:
Дано 3 ячейки: 1-количество 2-приход 3-расход
Так вот нужно чтобы в первой ячейки получилась разница 2 и 3 ячеек, как это сделать понятно любому, но вот дальше самое интересное =)
Нужно что бы когда я ввел расход и приход получилось число в 1 ячейке и когда я очистил бы приход и расход полученное число осталось бы в 1 ячейки, но если опять ввиду приход и расход, то оно прибавилось к предыдущего полученному числа.
Надеюсь понятно выразился =)

Если не понятно, напишу пример в цифрах:
1)количество=0, приход=15, расход=5
2)В ячейке с количеством получилось число=10
3)Через некоторое время снова приход=20, расход=2
4)В ячейке с количеством должно теперь получиться следующее: 10+20-2=28
5)Далее снова пришло=1, ушло=2, в ячейке с количество должно получиться следующее: 28+1-2=27
и т.д.

Как вот это сделать? =)

NooBasTiK

Гуляет вот такой код в сети, он складывает... можно сделать что бы вычитал
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    With Target
        If .Column = 2 Then
            If IsNumeric(.Value) Then
                Application.EnableEvents = False
                .Offset(0, 2).Value = .Offset(0, 2).Value + .Value
                Application.EnableEvents = True
            End If
        End If
    End With
End Sub

NooBasTiK

есть так же итерации в excel, при включении итерации накопление можно делать на сколько я знаю :)

NooBasTiK


cheshiki1

Цитата: NooBasTiK
Гуляет вот такой код в сети,
Этот код автору не подойдет. Ему нужно при изменении 2-х значений, а в коде при изменении одного.
Цитироватьитерации в excel
тоже не подойдет.
На сколько я понял здесь нужен макрос выполнение которого происходит после изменения в двух ячейках.
В макросах не силен поэтому не подскажу.  :)

Михаил С.

Цитата: cheshiki1 от 16.01.2013, 09:30
Цитироватьитерации в excel
тоже не подойдет.
Ну почему же? Просто итерации - еще тот геморрой...

UPD. Вот только, честно говоря, зачем это нужно - не понял. ИМХО, пользоваться неудобно.
Отдельное спасибо можно на QiWi-кошелек 909-771-53-87 или ЯД 41001136675053

cheshiki1

ЦитироватьНу почему же?
Михаил С. потому что пересчет будет происходить при изменении любой из двух ячеек.
для такого варианта и для макроса моих познаний достаточно.
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Range("B3:C3"), Target) Is Nothing Then Exit Sub
[D3] = [D3] + ([B3] - [C3])
End Sub

может я и ошибаюсь - пусть автор решает.

Михаил С.

А как изменять сразу две ячейки? (разными значениями).
В принципе, можно сделать, что пока ячейки не обнулишь (через Del) и не введешь в обе новые значения - считать не будет, вот только нужно ли?
Отдельное спасибо можно на QiWi-кошелек 909-771-53-87 или ЯД 41001136675053

Wasilic

Ну так, вот же как он хочет. Ток, где он сам делся.
Цитата: Ramzes_II от 15.01.2013, 18:05
1)количество=0, приход=15, расход=5
2)В ячейке с количеством получилось число=10
3)Через некоторое время снова приход=20, расход=2
4)В ячейке с количеством должно теперь получиться следующее: 10+20-2=28
5)Далее снова пришло=1, ушло=2, в ячейке с количество должно получиться следующее: 28+1-2=27 и т.д.
Может и я на что сгожусь ... Если сгодился, можете меня по+благодарить+.