G
Greg
Guest
Bonjour le forum,
je cherche une solution pour resteindre le champ de recherche de la formule 'find' à une colonne ou un range designé. Je joint le code que j'utilise actuellement. Il fonctionne mais je ne le trouve pas assez securisé.
Est-ce que quelqu'un aurait une solution.
D'avance Merci,
Greg
ps: Voici le code. désolé pour la présentation
Sub Remove Row
Dim Check As Long
Dim Val As String
Dim WS As Object
Val = InputBox('Enter the name of the staff member to remove:', 'Remove Staff member')
If Val = '' Then Exit Sub
For Each WS In Worksheets
If WS.Name = ('Workers &Employees') Then Check = Application.CountIf(WS.UsedRange, '=' & Val)
Next WS
If Check = 0 Then returnValue = MsgBox(' No matching found ', vbOKOnly, ' Message ')
Else
Sheets('Labour Costs').Activate
ActiveSheet.Unprotect ('001')
Cells.Find(What:=Val, After:=ActiveCell, LookIn:=xlFormulas, LookAt _:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _False).Activate
ActiveCell.EntireRow.Delete
ActiveSheet.Protect Password:='001', DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
End Sub
je cherche une solution pour resteindre le champ de recherche de la formule 'find' à une colonne ou un range designé. Je joint le code que j'utilise actuellement. Il fonctionne mais je ne le trouve pas assez securisé.
Est-ce que quelqu'un aurait une solution.
D'avance Merci,
Greg
ps: Voici le code. désolé pour la présentation
Sub Remove Row
Dim Check As Long
Dim Val As String
Dim WS As Object
Val = InputBox('Enter the name of the staff member to remove:', 'Remove Staff member')
If Val = '' Then Exit Sub
For Each WS In Worksheets
If WS.Name = ('Workers &Employees') Then Check = Application.CountIf(WS.UsedRange, '=' & Val)
Next WS
If Check = 0 Then returnValue = MsgBox(' No matching found ', vbOKOnly, ' Message ')
Else
Sheets('Labour Costs').Activate
ActiveSheet.Unprotect ('001')
Cells.Find(What:=Val, After:=ActiveCell, LookIn:=xlFormulas, LookAt _:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _False).Activate
ActiveCell.EntireRow.Delete
ActiveSheet.Protect Password:='001', DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
End Sub