Двойной клик левой кнопкой мыши по ячейке B1
[vba]Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Address = "$B$1" Then
Cancel = True
UserForm1.Show
End If
End Sub
[/vba]UserForm1.Show:

Код UserForm1:
[vba]Код
Private Sub TextBox1_Change()
a = TextBox1.Value
b = Cells(Rows.Count, "b").End(xlUp).Row
c = Application.Match(a, Range("b2:b" & b), 0)
If IsNumeric(c) Then
d = Evaluate("=MAX(IF(B" & c & ":B" & b & "=""" & a & """,ROW(B" & c & ":B" & b & ")))") + 1
Label1.Caption = d
Else
Label1.Caption = ""
End If
End Sub
Private Sub CommandButton1_Click()
a = Label1.Caption
If IsNumeric(a) Then
Rows(a).Insert Shift:=xlDown
Unload UserForm1
Else
MsgBox "Не найдено!"
End If
End Sub
[/vba]