You could use
ActiveWorkbook.Names.Add Name:="AllEvent", RefersTo:= "=" & all.Address(,,,True)
or use Excel's native union operator (the comma) in the defintion of AllEvent
Private Sub Worksheet_Change(ByVal Target As Range)
'Do nothing if more than one cell is changed or content deleted
If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub
If Target.Address = "$D$1" Then
ActiveWorkbook.Names.Add Name:="AllEvent", RefersTo:= "=stdprojects,users"
End If
End Sub
This approach might remove the need for a change event.
Bookmarks