Я хотел бы получить результат, скажем, общее количество A1 - A10, в конце января 31-го в ячейке B1. Это достаточно просто, ЕСЛИ = 31/1/17 и т.д. Но мне нужно, чтобы эта цифра оставалась замороженной при этом результате, а не изменялась по мере изменения значения А1 - А10 или когда сегодня выходит за эту дату.

Возможно ли это, так как мне понадобится это на 10 столбцах 12-месячного периода?

2 ответа2

-1

@Rob, намеренно я не публиковал метод автоматизации, но, поскольку вы настолько разнородны, здесь я привел простой код VBA, который суммирует диапазон данных, если ключ Cell(D1) имеет текущую дату.

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

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

Private Sub CommandButton1_Click()


 Range("A11").Value = "=IF(ISBLANK(D1),0,IF(D1=TODAY(),SUM(A1:A10)))"


  Range("A11").Copy

  Range("A11").PasteSpecial xlPasteValues

  Application.CutCopyMode = False


End Sub
-1

@Rob, предположим, что у вас есть данные в диапазоне от A1 до A10, и вы хотите рассчитать итоговую сумму автоматически, когда Текущая дата будет 31.01.2017, и, например, вы написали эту формулу 15/01/2017.

Запишите любое место в пустой ячейке, как в D1, значение даты расчета, которое является 31.01.2017. А в А11 напишите любую из приведенных ниже формул.

= ЕСЛИ (СЕГОДНЯ ()= D1, СУММА (A1:A10), "устарела")

= СУММПРОИЗВ (- (Д1 = СЕГОДНЯ ())* A1:A10)

Как только текущая дата совпадет с датой расчета, Excel выдаст сумму в A11.

Теперь на следующем шаге, как вы уже написали, вы хотите, чтобы результат оставался в ячейке даже после истечения срока или при изменении значений в диапазоне данных от A1 до A10.

Для этого самое простое хитрое решение - скопировать ячейку A11, поместить указатель только в A11, нажать «Специальная вставка» и нажать «Значение». Вы найдете то же значение в A11, или ваш ответ останется тем же в любых условиях.

Причина этого: когда вы копируете и вставляете ЗНАЧЕНИЕ, Excel удалит формулу из ячейки A11.

Надеюсь, что помощь вам, не нужно думать о любом виде кода VBA.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .