Доброго дня, помоги с написанием макроса который бы постоянно из одной ячейки брал результат ее расчета при помощи формулы и переносил это самое значение в другую ячейку в которую сохранял бы только значение без формул
Вот в этом примереp значение ячейки E4=А4+С4, необходимо в G4 при помощи макроса вставить только значение данного расчета (30)
Sub test()
Application.ScreenUpdating = False
Range("E4").Copy
With Sheets("Лист1").Range("G4")
.PasteSpecial Paste:=xlPasteValues
.PasteSpecial Paste:=xlPasteFormats
End With
With Application
.ScreenUpdating = True: .CutCopyMode = False
End With
End Sub
Нашел макрос который работает, подскажите как заставить его на постоянной основе что б ыкак только значение Е4 менялось, сразу бы включался макрос и копировал значение в D4
В модуль нужного листа (если у вас данные находятся на Лист1, то в модуль листа "Лист1) вставьте этот код
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, Range("E4")) Is Nothing Then Exit Sub
Range("G4").Value = Range("E4").Value 'или другие ячейки, какие вам нужны
End Sub
Макрос срабатывает на событие Private Sub Worksheet_Change(ByVal Target As Range) Вы изменяете значения в ячейке А4 или С4, вот на изменение этих ячеек и пишите макрос
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A4:C4")) Is Nothing Then
Application.EnableEvents = False
Range("E4").Copy
Range("G4").PasteSpecial xlPasteValues
Application.CutCopyMode = False
End If
Application.EnableEvents = True
End Sub