Editar registro do Excel no Userform

Editar registro do Excel no Userform

Gostaria de editar os registros da minha tabela usando um formulário de usuário. No entanto, o código abaixo funciona apenas para a primeira linha (não tenho ideia do porquê). Você pode me ajudar a modificar meu código para que funcione em qualquer linha que eu gostaria de modificar? Sempre recebo o erro "Type Mismatch" e depois me aponta neste código "WriteRow = Application.Match(ABnum, ABrng, 0)"

Este é o meu código até agora:

Application.ScreenUpdating = False

Dim LastRow As Long
Dim ABnum As String
Dim ABrng As Range
Dim WriteRow As Long

Sheets("CDP DATABASE").Select
With ActiveSheet
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
Set ABrng = .Range("B7:B" & LastRow)
ABnum = txtemn.Value
WriteRow = Application.Match(ABnum, ABrng, 0)
Cells(WriteRow, 1).Select
End With

With ActiveCell
.Offset(0, 1).Value = txtemn.Value
.Offset(0, 2).Value = txtcode.Value
.Offset(0, 3).Value = txttype.Value
End With

Application.ScreenUpdating = True

Além disso, gostaria de forçar meu usuário a usar apenas os formulários de usuário para adicionar e editar registros. Tentei proteger a planilha, mas com esse método não consigo editar ou adicionar nada usando formulários. Por favor ajude! Agradeço antecipadamente!

informação relacionada