VBA Deleting Entire Row When Certain Word Appears?
Dec 12, 2012
I currently have the following code that works great and deletes the row from my spreadsheet when the word "vacant" appears in column F.
Sub test()
Dim r As Range
With ActiveSheet[code]....
The problem is, "Vacant" also sometimes appears in column G. So, as this code is now it is finding the word "Vacant" in either column F or column G and then deleting the row.
How can I write the code so that it only deletes the row where "Vacant" appears in column F but ignores it when it is in column G?
I need my macros to search for the word "Cancel" or "Cancelled" in columns "T" and "U". Once found, I need the macros to make that entire row an opaque shading.
There will be other wording in these cells that contain "Cancel" or "Cancelled". Is it possible for the macros to search in the sentence and find the words "Cancel" or "Cancelled"
What I am doing is taking the below info which is only a portion of what I am really using but I need to calculate who appears in the lowest 25% of the entire ranking but also if they were there for both months... is this possible cause I cant seem to figure this out?
I have a worksheet containing codes in column A. Where the first 2 digits of the code contains "78" for eg 7801, 7825, 7892 etc then the entire row must be deleted.
The above statement works great, but when I try to replace the HQA01 (worksheet name) with a cell reference it doesn't work anymore. I want to point to the cell that has that name of the sheet in it rather than hardcode each sheet name.
Is there a macro to delete an entire row if a duplicate entry appears only in a certain column.
1. Look for the column header with the name "File Number" 2. Anytime the same number under the "File Number" column appears more than once in that column, keep the row that contains first occurrence of that number buy delete the entire row anytime that number is repeated in another row in that same column.
This is regardless of what is contained in the other columns. For example..let's say these cells contained this data...
In this case, I would want to keep rows 1, 2, and 3. But, I would want to delete rows 4 & 5 because the number "UTE00225" has already appeared first in B1. I'm using Excel 2003.
I am trying to create a graph that is conditional on two different columns. The first column is a date column, the second column has various categories. I want to show how many times each category appears per month. This database is continually added to so I wanted the formula to reflect the entire column range.
For example, let say I have 5 categories (Grapes, Apples, Peach, Pear, Banana). Column A would show a date (in a M/D/Y format) and Column B would list the fruit type. I want to show how many Grapes were input in January, February, March, etc. and then move on to show how many apples in each month, and so on.
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 have a 2007 Excel spreadsheet (saved as .XLS) with worker names in column A and error types in column B. Column B can have multiple entries (which are sometimes duplicative of each other) separated by a hard return.
What I need to do is run tallies to determine the number of errors by type for each person, counting the value every time it appears, even if it is more than once in a particular cell. The ultimate goal is to generate a formula to track the number of occurrences for all error types types for the person in Column A (i.e. one formula each to track ABC's Procedural errors, ABC's Technical errors, ABC's Admin errors, DEF's Procedural, etc) though ideally I just need a formula to calculate any one of those and I can edit it to get the rest. Here's a sample screenshot:
The COUNTIFS formula is where I started but that only seems to count cells with the value as opposed to occurrences of the value. I did find this formula in my searches but it doesn't seem to work:
I have a single work book with 8 sheets (I am using Excel 2010 BTW) and I am trying to find a total of times a word appears across all the sheets in column "C"
I found this formula on another thread. =SUM(COUNTIF(INDIRECT("Sheet"&{1,2,3}&"!C1:C1000"),"="&H3)) with an example. I made the changes that I needed for my purposes
This worked but only after I renamed the sheets to Sheet1, Sheet2, etc.
Is there a way get the same results from the above formula if all the sheets are named after our reps? Example: sheet1 is named Dan, Sheet2 is Nick, etc?
I have a spreadsheet with thounsands of rows. Some of the rows I'd like to delete because thier values are below 5%. I wrote a VBA code, which primary function is to look for a cell and delete the row if the value is less than or equal to 5%. The code looks fine but I get an "Infinite Loop" anytime the first row value is not true. Below is the code,
-jungleman1
Sub Delete_Zero_Factors()
Dim i As Integer Dim CUSIP As String
Sheets("Report").Select
Range("B5").Select i = 0
While Not (IsEmpty(ActiveCell.Offset(i, 0).Value)) CUSIP = ActiveCell.Offset(i, 0).Value
Need the code for deleting multiple columns simultaneously in an excel depending on some search criteria.Suppose I want to delete the columns whose names are "Roll No" ,"Age" & "Class"
I am trying to delete entire row that has certain text, let say "hi". I was able to delete cells with exact word "hi", but was not able to delete cells that have texts other than "hi". ex) "hi myname." Below is my vba code, and I keep getting run-time error and cannot execute the code.
VB: Sub HiDelete() Dim srchRng As Range Set srchRng = ActiveSheet.Range("g:g") For i = srchRng.Rows.Count To 1 Step -1 If worksheefunction.Search("hi", Cells(i, 7)) > 0 Then Rows(i).Delete Next i End Sub
I've been tasked with developing a macro that will generate schedules. For background, we're taking a QuickBooks Customer file and exporting it to be picked up by the macro. I've got that part working, but now I need to delete various rows based on certain criteria.
The spreadsheet has a field for Job Status which we use to define whether an account is under contract (2 in QuickBooks), or some other status. Basically what I need to do is delete the entire row of data where JobStatus (Column R) is anything but 2.
Working on some code that will find the Column Name "CL" and delete the entire column. Here is what I have so far...it does not give me a error when it compiles, but for some reason the statement in red is being ignored. I tried switching Range with Columns, but that did not work.
Private sub coldelete () Dim Rng2 as Range
shUCLR = sheets("Unit Cost").usedrange.rows.count Set Rng2 = Sheets("Unit Cost").Range("A1:BF1")
For Each d In Rng2 If d = "CL" Then colnum = d.Column colletter = Left(Sheets("Unit Cost").Cells(1, colnum).Address(False, False), (colnum)
I have a long list (over 1000 lines) of numbers, some of which are duplicated. Up to now I have been sorting them, adding in a simple check column to see if the number is a duplicate of the one below, and then manually deleting this cell.
Is there a better way to do this using VBA? The only way I have managed to find is by deleting the entire row, but I cannot do this as I have additional data to the right that I need to keep.
I also cannot install any add-ons as this on a work computer.
I have 1 big sentance in cell A1 which contain one unique word starting with IE0025 or IE0027. I wanted to extract that word from entire sentance and this data is till 1000 rows. Not necessary that it will be in a constant position because always it get change to some other position within sentance.
I have a large database of customers. I would like to edit this database so that it only lists those customers that have an email address listed in that particular column. I can then save that as a separate list to upload to my marketing campaign.
Is there an easier way than just deleting entire rows at a time? About a 2,000 name list with maybe 30% having email addresses.
I'm trying to come up with a macro that can delete an entire column based on formatting of the cells. Basically what I have is a range of cells, and if all cells in a particular column have no fill color, then delete the entire column.
What I want to do is select all rows that contain the word conveyor in it. So far I have managed to select all the cells, I have also managed to select the entire row but one row at a time, I have even been able to turn all the cells a different color but I just want to highlight them for other formatting, copying, and several other things that need to be done. I have other documents this could be very useful in too so i want to make it a generic multi-line highlight rather than adding the formatting into the formula.
I have data in following order and wanted to split particular word from that.
for example : -
In Cell A1 i have address like N/A 12A, carbon court OSBORNE PARK WA 6017. I wanted to Split city name OSBORNE PARK & Post Code 6017 from that entire address in seperate cloumn. Like in cell A2 i want city name & in Cell A3 want Post code.
The following sub will look in the file ("FY09 SOF"), in column "A", search for the strings that begin with "2109", "3009", or ends in "-1", and copy the entire row. It will then paste these in the file ("FY09 PR Log Blank").
I also need it to look in column "C" in the ("FY09 SOF") file and pull the entire row if it finds the word "Payroll".
For some reason it will pull everything needed except the "Payroll" rows. What am I doing wrong?
Sub get_data() Dim wb As Workbook, wbDest As Workbook Dim ws As Worksheet, wsDest As Worksheet Dim lngCalc As Long Dim FoundCells As Range Dim FoundCell As Range
Set wb = Workbooks("FY09 SOF") Set wbDest = Workbooks("FY09 PR Log Blank") Set wsDest = wbDest.Worksheets("Paste all here, then sort")
With Application .ScreenUpdating = False..........................
I'm trying to automate a redundant task. I have several Word files in one central folder. I need to open each file, remove all paragraph marks (via find/replace all), copy the result, and paste it into an Excel sheet. This process will be repeated for each file in the folder.
The code I have is almost there, however, I can't get it to do the find/replace. Below is an extract of my code for the Word application part. The code for the copy and paste will be inserted after the replace action works:
Dim Wapp As Object Dim i As Integer
WorksheetsLocation = TextBox1.Value ' this is the folder location brought in from an input box
On Error Resume Next Set wApp = GetObject(, "Word.Application") If Err.Number 0 Then 'Word isn't already running Set wApp = CreateObject("Word.Application") End If On Error GoTo 0
I had alot of cells that has replication in the same cell. I would like to find out if the cell has any replication. If there is, delete the repeated data if not go to next cell
Example,
Before Peter, John Peter, John, John Peter, John, Peter John, John, John Peter, Peter, Peter
After Peter, John Peter, John Peter, John John Peter
[edit] The example above is 1 cell per line [/edit]
I have the following code, but it takes longer than expected to run. Is there anyway to speed this up? I am not sure if autofilter is a option. I just want to search through range A16:Z16 and if the word "FALSE" exists delete the entire column. The word "TRUE" is the only other word that would exist in range A16:Z16