In the worksheet code module, try using the Change event handler
I did a test where N9 is the result of a VLookup()Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) If IsError(Me.Range("N9").Value) Then Me.Rows(23).Hidden = True ElseIf Len(Me.Range("N9").Value) = 0 Then Me.Rows(23).Hidden = True Else Me.Rows(23).Hidden = False End If End Sub