![]() |
Delete Row
In Excel, I need a macro that will delete an entire row based on a name
entered into an input box that would match a worksheet with that name in column "A". Thanks, Bernie |
Delete Row
I hope i've understood your question. The macro below looks in the sheet
entered into the input box to get the sheet name you want to delete a row in and finds that name in A1. It then deletes row 13 in the sheet with the name it finds in that cell. Sub deleterow() msg = "Which sheet has the name of the sheet you want to delete a row in" sname = InputBox(msg) If sname = "" Then End Else sheettodeletein = Worksheets(sname).Cells(1, 1).Value End If Worksheets(sheettodeletein).Cells(13, 1).Select Selection.Rows.EntireRow.Delete End Sub "Bernie" wrote: In Excel, I need a macro that will delete an entire row based on a name entered into an input box that would match a worksheet with that name in column "A". Thanks, Bernie |
Delete Row
It's close.
The name I input is the name of a person in the speadsheet whose row I need to delete. I will have the sheet selected before the macro runs. Hope that is more clear. Thanks, Bern On Jan 25, 12:54 pm, Mike wrote: I hope i've understood your question. The macro below looks in the sheet entered into the input box to get the sheet name you want to delete a row in and finds that name in A1. It then deletes row 13 in the sheet with the name it finds in that cell. Sub deleterow() msg = "Which sheet has the name of the sheet you want to delete a row in" sname = InputBox(msg) If sname = "" Then End Else sheettodeletein = Worksheets(sname).Cells(1, 1).Value End If Worksheets(sheettodeletein).Cells(13, 1).Select Selection.Rows.EntireRow.Delete End Sub "Bernie" wrote: In Excel, I need a macro that will delete an entire row based on a name entered into an input box that would match a worksheet with that name in column "A". Thanks, Bernie- Hide quoted text -- Show quoted text - |
Delete Row
Then perhaps this will assist:
Sub MatchAndDelete() Dim WhoToFind As String Dim anyRange As Range Dim startRange As String startRange = Selection.Address WhoToFind = InputBox$("Enter Name to find", "Name", "") If WhoToFind = "" Then Exit Sub ' no entry given End If Set anyRange = Range("A:A") ' change as required anyRange.Select On Error Resume Next ' in case of no match Selection.Find(What:=WhoToFind, After:=ActiveCell, _ LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, _ MatchCase:=False, SearchFormat:=False).Select If Err < 0 Then Err.Clear On Error GoTo 0 Range(startRange).Select ' back to where we were MsgBox "No match for the entered name found" Exit Sub End If On Error GoTo 0 Selection.EntireRow.Delete End Sub "Bernie" wrote: It's close. The name I input is the name of a person in the speadsheet whose row I need to delete. I will have the sheet selected before the macro runs. Hope that is more clear. Thanks, Bern On Jan 25, 12:54 pm, Mike wrote: I hope i've understood your question. The macro below looks in the sheet entered into the input box to get the sheet name you want to delete a row in and finds that name in A1. It then deletes row 13 in the sheet with the name it finds in that cell. Sub deleterow() msg = "Which sheet has the name of the sheet you want to delete a row in" sname = InputBox(msg) If sname = "" Then End Else sheettodeletein = Worksheets(sname).Cells(1, 1).Value End If Worksheets(sheettodeletein).Cells(13, 1).Select Selection.Rows.EntireRow.Delete End Sub "Bernie" wrote: In Excel, I need a macro that will delete an entire row based on a name entered into an input box that would match a worksheet with that name in column "A". Thanks, Bernie- Hide quoted text -- Show quoted text - |
All times are GMT +1. The time now is 01:10 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com