Cuidado com On Error Resume Next em seu código, especialmente se for um código que não foi testado completamente. Neste caso, está mascarando um erro de sintaxe na linha
graph = ActiveSheet.ChartObjects("frontier").Activate
portanto, nenhum valor é atribuído a graph . Tente isso:
Sub DeleteGraph()
Dim graph As ChartObject
On Error GoTo ErrHandler
Set graph = ActiveSheet.ChartObjects("frontier")
graph.Delete
Exit Sub
ErrHandler:
msgBox "Chart does not exist on active sheet!"
Exit Sub
End Sub
Se você não gostar do aviso pop-up quando o gráfico não for encontrado, basta remover a linha msgBox .