Hello,

I have several working VBA codes.
First I want to work this code working when "Yes" is selected in a vbYesNo MsgBox:

Private Sub Worksheet_Change(ByVal Target As Range)
 Dim Y
 If Target.Cells.Count > 1 Then Exit Sub
 If Not Intersect(Target, Range("I3:O200")) Is Nothing Then
 With Target
 If IsNumeric(.Value) And Not IsEmpty(.Value) Then
 Y = Target.Row
 Range("D" & Y).Value = Range("D" & Y).Value + Range("I" & Y).Value + Range("K" & Y).Value _
 + Range("M" & Y).Value + Range("O" & Y).Value
 End If
 End With
 End If
 If Target.Cells.Count > 1 Then Exit Sub
 If Not Intersect(Target, Range("I3:P200")) Is Nothing Then
 With Target
 If IsNumeric(.Value) And Not IsEmpty(.Value) Then
 Y = Target.Row
 Range("R" & Y).Value = Range("R" & Y).Value + Range("P" & Y).Value + Range("N" & Y).Value _
 + Range("L" & Y).Value + Range("J" & Y).Value
 End If
 End With
 End If
 End Sub
When this VBA is done I want a MsgBox:

Dim Sum As Double

 For Each Sh In ThisWorkbook.Worksheets
 Sum = Sum + Application.WorksheetFunction.Sum(Sh.Range("Q3:Q200"))
 Next
 If Sum > 0 Then MsgBox "Text"
When I click "Ok" in this MsgBox it should be great if (I3:I200; K3:K200; M3:M200 and O3;O200) will be cleared of all values.

Thanks