I have a data range with just under 100,000 lines by about 60 columns. In one of the final columns I used the formula =IF(COUNTIF($A$2:A2,A2)=1,1,0) in order to set a flag the first time that each unique value in Column A appears. (I know about the remove duplicates function but the data was sorted in a certain order and I needed information specifically from the first row in which each unique value appears.) The formula works - it's not very quick, but it works.
The issue I'm encountering though is that now I want to remove that formula so it doesn't keep recalculating and every technique I use either takes forever or stalls Excel entirely. I've seen the same issue in two different spreadsheets where I used the same technique. Techniques I've tried: selecting and deleting the entire column, copying and pasting values over the formula, Selecting all the cells and pressing delete, copying and pasting an empty cell over them, Selecting and cutting and pasting the cells to another workbook. I've done these while disabling automatic recalculation and even turning off Data Filtering. I just can't understand why a simple delete operation should take so long, it shouldn't matter what is in the cell because all I want to do is delete it.
The above list represents 2 columns. The left column is 400 lines long. The right column is partially complete with 2 letter codes that represent the 6 letter codes on the right. I'm trying to convert the column in the XXYZXX format to a 2 letter column and each of those 2 letters corresponds to the 6 letter column on the left. How do I do this using any method or Vlookup? How does one convert a column of text to a corresponding column of text? I don't want to have to manually type in 2 letter codes that match up the left column. What do I do instead?
I've got a sheet which I need to analyse and split into several different sheets but the raw data format leaves a lot to be desired as there are blank rows inserted randomly between rows of data. I need the 'good' data to stay in the same order so I've written a macro to sort through the data and delete any blank rows leaving the good stuff behind.
The problem is this takes ages as there can be up to 30000 rows that need to be checked and I need to do this 5-6 times a day. I just wondered weather there was a quicker way to do this? The code I've got is detailed below:
Sub Prep2() 'Delete all blank data rows Dim Rows As Double Dim Rownum As Double Application.ScreenUpdating = False Rows = Selection.SpecialCells(xlLastCell).Row
For Rownum = 2 To Rows If Cells(Rownum, 11) "" Then GoTo NxtRownum Else
Cells(Rownum, 11).EntireRow.Delete shift:=xlUp
Rows = Rows - 1 NxtRownum: Next Rownum Application.ScreenUpdating = True End Sub
I have a couple shreadsheets I have created, one is for Purchase order's and has 4 different sheets. with one sheet holding addresses linked a drop down menu in the first sheet, all in the same workbook. Also there is a macro within this sheet to print to a specific printer, and a specific number of copies when CTRL p is pressed. The total file size is approx 9 mb. Opening this file takes approx 30 to 45 seconds. There are no links to any outside files, only links within the workbook itself.
The second File I have recently started having problems with (Our Quotation log) is A workbook containing 3 sheets, 2 sheets independant and one sheet linked to the second that Summarizes the first and also has cels to enter information on the person the quotation has come from. I have this sheet formatted as a table so I can sort by name etc when doing followups.
This workbook also takes approx 30 to 45 seconds to open, and on occasion longer. All workbooks are stored on my computer. The PO workbook has had the problem since I created it, although the Quotation log workbook has only had the issue this week.
I designed a spreadsheet which uses a lot of VLOOKUPs and it takes a very long time to recalculate. I don't know if there is another way I could do this, but this just seemed to make sense and it works just the way we want it but it just takes too long. Here is what the spreadsheet is designed to do:
We have data that is pasted into excel from another source. The data is broken up into account number, date, check number, and amount. Multiple payments from the same account can occur in one month so the data must be totaled. There is a custom function called concatif which works just like sum if but concatenates text. There are VLOOKUPs performed on the account number and the corresponding date, check number, and amount are inserted in the table.
I have a macro that is taking a long time, so long that I think something is wrong but I dont really have a great way to check. I want to put up a little window showing the progress either by saying "i'm on row XX" or having a progress bar.
Looks like msgbox requires action before the code continues so it is not a good thing to use if you want to get progress. My formula looks for bad values in a data file and fixed them. It takes forever. I would like to have a box there that simply tells me what row it is working on.
Clearly I dont want to hit the OK button for it to continue processing. I want it to update the message box on its own and then take away the message box when it is finished processing.
If InStr( Cells(i, 3).Value, "Other") > 0 Then _ Cells(i, 3).Replace What:="Other", Replacement:=Cells(i, 4).Value
This seems to work fine for the most part. However, if the value in Cells(i, 4) is too long, I seem to get a Run-time error '13': Type mismatch. Is there any way to rework this code so it can replace even if the string in Cells(i, 4).Value is too long?
I'm receiving this message when I attempt to use the Find, Replace function. Formula is too long". I have a column of cells containing text only. ( about 2-3 paragraphs worth) I'm trying to replace a name with another name, which works fine where the cell contains a single or few sentences, but fails to replace when the cell contains too much information.
I have a large spreadsheet, within which i am trying to remove commas from all cells. I get the error 'formula is too long' when I carry out the search. Some of the cells are >1024 characters in length and contain dates, text etc.
Is it possible to delete a column of numbers then replace those numbers from adjacent columns and the adjacent columns are then filled with the numbers adjacent to them
I have autofiltered a column to meet a certain criteria (which hides some of the rows), then I want to put a cell with the sum at the bottom of that column. When I do this, it takes the sum of all of the rows in that column, even the rows that are hidden. Is there a way to only take the sum of the rows showing?
I have an excel sheet that I am importing to my network software. One of the columns lists telephone numbers, but they are as follows: aaa-bbbb
I need a way to enter an area code (the same area code) for all of the numbers in the column without manually entering them (the program I am importing this list to will not work without 9-digit telephone numbers).
I am trying to write the following statement in a cell in excel lets say O3 so I can drag it down to the rest of the column, I was trying to see if there was a previous posting about this but I didn't find it. the if statement goes like this:
=IF(M3=Sheet3!$B$2,Sheet3!$C$2,IF(Sheet1!M3=Sheet3!$B$3,Sheet3!$C$3,IF(M3=Sheet3!$B$3,Sheet3!$C$3,....until it reaches to if(Sheet3!$B$20,Sheet3!$C$20,"PENDING"))
Is there a way I can do this I know probably through a VBA but I have no idea how to set it up.
I have a long list of names in Column A sorted alphabetcially. I dont know how long the list is.
I wish to find the start and end row numbers of names that begin with a specific letter, for example if the letter is B I want the first row number that starts with B and the row number that ends with B. Assuming the letter I want to use is in C1, here is what I came up with:
i have a long column pair of data, each entry in its own cell:
10/5/20088:30:00 AM 10/5/20088:46:00 AM 10/5/20089:14:00 AM 10/5/200810:18:00 AM 10/5/200810:42:00 AM 11/5/20088:30:00 AM 11/5/20088:46:00 AM 11/5/20089:14:00 AM 11/5/200810:18:00 AM 11/5/200810:42:00 AM 12/5/20088:30:00 AM 12/5/20088:46:00 AM 12/5/20089:14:00 AM 12/5/200810:18:00 AM 12/5/200810:42:00 AM 13/5/20088:30:00 AM 13/5/20088:46:00 AM 13/5/20089:14:00 AM 13/5/200810:18:00 AM 13/5/200810:42:00 AM 14/5/20088:30:00 AM 14/5/20088:46:00 AM 14/5/20089:14:00 AM 14/5/200810:18:00 AM 14/5/200810:42:00 AM
how can i program a macro to 'split' this column according to date? please refer to the attached picture as an example. i know this is probably a simple question but please bear with me i'm still new to excel programming.
I have a sheet with about 20000 rows consisting of hundreds of names which occur randomly.After each name is a date of the type 29-Jan-06.The dates are in ascending order.I wish to print in a third column how long it is in days since that name appeared previously in the list,if it never appeared before this will be zero.
I have an excel spreadsheet with a list of numbers in column A. These are all "random" numbers in that they don't follow an order, but they mean something elsewhere.
The rest of the columns have other information that is related to the number in the same row.
I have another list of random numbers which is much smaller than the original, but all of the numbers on the smaller list (which is in a different excel document but can easily be put in its own column) are in the larger list as well..
I want to compare the two lists, and if the number from the smaller list is found on the larger list, I want the entire row deleted and all the remaining cells shifted up. I do not want any blank rows between the data.
I have a macro which will search a document in specific range and find specific cells if found = replaced to data from my list ...
I want to change it to: if found = delete cell + delete 4 cells on left... + At the end I want to see msg bog saying how many time it find the spec cells... (not how many cells has been deleted.
Sub Find() Dim myList, myRange Set myList = Sheets("sheet3").Range("A1:A10") Set myRange = Sheets("sheet3").Range("D1:F100") For Each cel In myList.Columns(1).Cells myRange.Replace what:=cel.Value, replacement:=cel.Offset(0, 1).Value Next cel End Sub
what I am doing is running a parameter query. Based on the users selection it pulls in and embeds a pdf file based on a link put into cell A1. The problem is when the user selects another file. My current process deletes all of the oleobjects on the page (because I couldnt figure out how to just delete this pdf embedded object as it is named differently each time it is pulled in) My current process worked fine up until I needed to add some controls (radio buttons) now when it loads the next file it deletes the radio buttons. Is there a way to name this embedded pdf file so that I can then delete only that object? or is there a fundamental better way to handle this?
below is the section in question
Code: Private Sub Worksheet_Change(ByVal Target As Range) Dim KeyCells As Range Set KeyCells = Range("A1") If Not Application.Intersect(KeyCells, Range(Target.Address)) _ Is Nothing Then Dim wsh As Worksheet For Each wsh In ActiveWorkbook.Worksheets wsh.OLEObjects.Delete Next wsh ActiveCell.Offset(0, 0).Range("j1").Select ActiveSheet.OLEObjects.Add(Filename:=Range("a1").Value, Link:= _ False, DisplayAsIcon:=False).Select
Can you cut out part of a number and replace it in another cell. For example
A1 come in as ###+### and it will not always be a three digts all the time but I would like to keep the number in front of the "+" in A1 and the number behind the "+" into A2 cell.
I'm looking to simply delete certain words that are in cells, without having to delete rows, columns or the entire cell. I can use 'find and replace' and replace the particular word with a space, but I really want to delete the word. I'm using both Excel 2003 and 2000.
I have taken over this spreadsheet for my work, and it is basically a statement in excel. What I want to do is find a list of invoice numbers in column B populated from a remittance, and then replace column F to say a specific thing depending on check number and date paying for that invoice. So if a check printed today I would have it replace column f to say paid 1/31/13 check # xxxxx. Currently I am searching for each invoice indivudually and then replacing with check number and date. There are about 200 invoices per month that I deal with, and it is a big waste of time!
I have a table in the format below. Pin_11 in this table is CLK and Pin_12 is STRB. I want to replace Pin_11 with PIN_CLK. Basically I want to look for CLK in Column3 and record what ever is in Column1 and Column2 on the same row (base row). For every repetion of that value in column1 and column2, in the rows above and below the base row, I want to replace column 2 with PIN_<column3 value>.
See below for initial table in column 1,2,3 and final result in column 6,7,8. I have a huge file this format of data that I need to end and was wondering if there is a script or formula to do it.
I would like a macro to find the columns named "apple" and "peach" and delete them. These would always be in row 1 but would always be in different column letters which is why I want the macro to simply find these columns by their name and not by their column letter.
And yes, I do mean the entire column altogether, shifting entire columns to the left. Wipe it off the face of the earth
One of the columns on my worksheet has a list of employees. I need to replace all the names with a blank (or delete) except for those employees on my team (7 employees). VBA code to Replace/Delete all EXCEPT (a,b,c,d,e,f).......?