Delete Rows With Specific Text (multiple Possibilities)
Nov 13, 2013
I need a VBA macro that deletes whole rows if the cell in one of the columns does not match one of three texts. For example, in column B, if the text in there isn't "Mary", "Joseph", or " " (empty space), the row must be deleted.
I want to delete any/all rows from a worksheet (named UK) which have the word "VAN" in column P. I have tried using a 'For Each... Next statement' in a macro, but always get a debug box "Run Time Error '91' Object variable or With block variable not set". What am I doing wrong? my code follows
Sheets("UK").Select Dim cell As Range For Each cell In Worksheets("UK").Range("P10:P200").Cells Cells. Find(What:="VAN", _ After:=ActiveCell, _ LookIn:=xlFormulas, _ LookAt:=xlPart, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlNext, _ MatchCase:=False, _ SearchFormat:=False).Activate Selection.EntireRow.Delete Next
I have a workbook with 50 sheets. Within each sheet are rows of text that I need to search for specific text.
I'd like to search each row from each sheet for specific words (e.g. "7 days") then show the resulting rows data/text in a new sheet along with the name of the sheet and row number it came from.
e.g.
Sheet 1 contains the text "7 Days" on line 40 Sheet 2 contains the text "7 Days" on line 1, 30, 50
In a new sheet, I would show the entire row in its own row that contains the text "7 Days" along with the name of the sheet and row number it was found in
I have a macro that converts all my PDF Purchase Orders to a text file and inserts the data/text horizontally into another document. However because the PDF's or the text within the PDF can be fomatted differently (that is on different lines etc) it therefore imports the information and it looks mis-aligned.I have attached a simple spreadsheet showing some sample text as it is imported and then below this how it should look like, all in line.
The range where the highlighted text in red is, is variable (but say nothing more than a variant of 10 columns). The text can also be Uppercase or Lowercase.So, I was wondering if there is macro code to find the "text" on various rows/columns and align it all in another column?
I have around 50 text files with similar design per attached file. I need to import the text files with criteria below:-
1. include file name 2. let user choose the folder 3. exclude data from "work in process summary" to "work in process cost totals" 4. only have one title in the excel files which all text files is combined "Item, Line ....." 5. If the text files do not have title like "Item, Line, ..." do not import
Is it possible to have all criteria listed above by running a macro?
Currently I am using the Kickbutt VBA Find Function of Aaron, but I would like to have something that works more efficiently. What I currently do is (assuming all possible values for Column J are A - F):
although I just want some code that says: delete all rows except those that have "F" as content in Column J. I already tried something like:
Range("1:65536").Select For Each cl In Range("J:J") If cl.Text = "A" Or cl.Text = "B" Or cl.Text = "C" Or cl.Text = "D" Or cl.Text = "E" Then Rows(cl.Row).Delete End If Next
but it also takes much to long. The major problem I think, is that the number of records is variable so I search the entire worksheet...
I created the following macro to remove all rows that contain the value 'Shutdown" in column F
Code:
Sub DeleteUniqueValues() Dim LR As Long, i As Long LR = Range("F" & Rows.Count).End(xlUp).Row For i = LR To 3 Step -1 With Range("F" & i) If WorksheetFunction.CountIf(Columns("F"), .Value) = Shutdown Then .EntireRow.Delete End With Next i End Sub
The macro runs without error, but when I checked the spreadsheet, rows matching this criteria were not deleted.
is there a code to chose certain rows using there numbers (Row number 3 to row number 9) to be deleted? yes, there is a code to delete the selected rows, but what i am after is a code to chose rows by thier numbers like delete from row3 to row9?
I have 2 spreadsheets of delivery information. Sheet 1 contains data of all stores in the UK with addresses. Sheet 2 containts contacts of all stores that promotional matrial needs to be sent to.
The only common cell in a column of 4 digit store numbers.
I need to delete all rows from sheet 1 that do not contain a value in the store number column that is displayed on sheet 2.
If I have a column of data called "ColStream" and want to delete all rows that don't contain the string "Production", whats the best way to achieve it?
I have tried a for each loop, with INSTR but as this moves down a cell from the cell whose row has just been deleted, skipping the "NEXT" row in the range, it doesn't give the correct results.
Incidentally, the end game is to copy all the remaining cells to the cell immediately below a cell called "StreamsDatabaseStart" in a worksheet called "ProdStreams" should anyone out there be feeling particularly charitable!
I need a formula that finds a value or range of values in a list and if the value meets the criteria automaticaly delete that row. For example I want to search B3:B7 for a 0 value if I find a cell in that range with a 0 value i want the formula to delete the entire row.
A macro that will delete a tab or tabs in a file if and only if rows 11, 13, 23 & 25 are completely blank within that tab? So basically ALL rows would need to be blank, if there is any data within any of those rows, then tab should NOT be deleted.
how to create one macro: I have a spreadsheet with 8 columns with various text headings. Each column has different data (some show dates, some show only figures, some show text). Specifically, column E (entitled "Sub Item Reference") has various text entries (e.g. "Newsletter" or "Booklet"). I am hoping to find a simple macro that will search column E and delete any rows where that column contains the text "Cover" or "Label". I'm sure it's the simplest thing going but I can't seem to work it out.
I have a code that goes through and deletes everything that doesn't contain a certain word, but I have several words ( Names actually) that I need to keep in my sheet, but all others can be deleted, along with their rows...the names are on in Column B...there are about 11 names currently and probably be adding a few more next month...This is a macro that is set for work to go through like I said a lot of Rows and delete all them but those that have the names of the workers I need to keep in the sheet...the names are scattered throughout, which is the reason for a need of a macro to do it for me cause it takes me forever to manually do it each day...The code for just one person I can't get to do multiple names so this is what I came up with based off what I know plus reading hundreds of pages on the net regarding similar style needs, but none exactly the same....
This is the Code that I'm trying to use but unfortunately I get Type Mismtch Error 13 ( I think it's error 13)...what am I doing wrong? (I only am working with one sheet that contains all the data...
Sub SortOutMyTeam() Dim wst As Worksheet, wstNew As Worksheet Dim rData As Range, r As Range, rTotal As Range Dim avNames() As Variant avNames = Array("Name1", "Name2", "Name3", "Name4", "Name5") Set wst = ActiveSheet Set rData = Range("B1:BL" & Cells(Rows.Count, 1).End(xlUp).Row) Application. ScreenUpdating = False wst.AutoFilterMode = False With rData For i = 0 To UBound(avCrit) Step 2 . AutoFilter field:=3, Criteria1:=avNames(i), Operator:=xlOr, Criteria2:=avNames(i + 1) On Error Resume Next Set r = .Offset(1, 0).Resize(.Rows.Count - 1).SpecialCells
I have a large report that I pull each month listing which products we sold last month. There are certain products I don't want included in the report. Until I can have the report re-written, I'm looking for a macro or a function that will find all the rows that contain these product numbers in column M and delete the entire row. The product numbers I need to delete are always the same, but some months one or more of them might not be in the report if they weren't sold.
In Summary:
Find in column M the product numbers: c1000 316140a 316140 316295a 316295 316311a 316311 316451a 316451 316450a 316450 316452a 316452
Delete those rows containing the product numbers above
I'm trying to write a macro to update a report including deleting all rows that do not contain a specific value of TP in column K. Below is one of the examples.
I need to build a macro which will look for a specific word say :"ABC" in a particular column say "B" and delete 5 rows including the row containing the word "ABC"
I need a code that will go thru column C and delete the whole row if cell value is 78315, Also it needs to shift the the rows up so there is no empty rows wheneverything is done done. I used some codes but they take forever to go thru whole sheet.
I have a command button that upon its click I would like to delete a specific row. I am using a vlookup which is giving me the row of the number I would like to delete. How do i go about deleting out this row?
this is also a radiobutton within the row that I would like to delete out as well. It is not named but it linked to column B within the row that I will be deleting.
I was searching for a macro to delete rows that obey a specific criteria. I downloaded [URL]..... and copied the Loop Example to my WorkBook.
When using Mr. de Bruin example, it worked perfectly, it did really delete the rows that obeyed my ">2" criteria. Although, when using on my workbook, the macro deleted the values, not the entire rows. Here's what's happening:
I would like to delete rows, not only values.
Code:
'The code below will delete every row in the usedrange with "ron" in the A column. 'If .Value = "ron" Then .EntireRow.Delete ' 'I use the A column in my example, change the A to your column in this code line. 'With .Cells(Lrow, "A") ' 'Change ron and the A to your search word and column before you try the macro. 'See the examples on the worksheet if you want to do something different. Sub Loop_Example() Dim Firstrow As Long
I currently had to start from scratch as my formula kept raising the debug screen. I know the answer is simple but I cant figure out what it is. I have column A, rows 9 through 1000 with data. I want to delete the entire row of any "x" value present in column A rows 9 through 1000. I am new to VBA. So simple is good.
I have a spreadsheet that I need VBA Code to do the following
1) Delete all rows where the word totals appears in Column B for eg "Totals for Vehicles Stocked in 0706" "Totals for Vehicles Stocked in 0707" etc
2) Delete all rows where the value in col m is less than 45
I have written the code, but cannot get it to work-see my code below
Sub Del_TOTALS_Underaged() FinalRow = Cells(65536, 2).End(xlUp).Row For i = FinalRow To 1 Step -1 If Cells(i, 2).Value >= "Totals" Then Cells(i, 1).EntireRow.Delete If Cells(i, 13).Value < "45" Then Cells(i, 1).EntireRow.Delete End If End If Next i
I need a VBA to delete rows with blank cells within columns F - AZ Columns A - E contain headers but also need to be deleted if cells in columns F -AZ are blank.