The item_description is a combination of XXX, Part_no and Part_description all clubbed randomly. ( So I cannot use text-to-columns to bifurcate them).
Now Sheet B contains the part_number as follows :
SlNos, Part_no, ….,….,
I need a macro ( a procedure / function ) in Excel-vba, which would select each part_no in sheet – B one by one, find all those rows in which it appears in Item_Description column of Sheet-A and add a comment in the next column to it.
The Vlookup function cannot be used as it is not an exact match as the part_no is embedded among other things in item_description.
I work on a daily basis with spreadsheets in excel. The number of columns is the same, but every single spreadsheet has a different number of rows. I recorded this macro in a table with 1196 rows and I would like to use this macro also in other tables with a different number of rows.
I have a spreadsheet like the one below. The data is just a bunch of 1s but they are in specific cells:
A1 A2 A3 A4 1 A5 1 A6 A7 A8 1 A9 A10
I need to calculate the number of rows between the first piece of data and the last. In the above example the answer would be A8-A4 = 4 Rows.
I am thinking I need an array that searches for the first data point, then returns the cell ID, does the same for the last data point then subtracts the higher cell id from the lower.
I am trying to write a macro to clean up a CSV file which automatically hard codes titles throughout the spread sheet. I am getting an error on the "FindNext" method below. I am getting "Unable to get FindNext propety of the Range Class" error. Also, the code for the For loop for multiple lines does not appear to be working.
Sub cleancsv() lastRow = Range("A1").End(xlDown).Row pmpt = InputBox(Prompt:="What text are you looking for?", _ Title:="Text", Default:="i.e.: Finished Goods Inventory") numrows = InputBox(Prompt:="How many rows to delete (counting original):", _ Title:="Number of Rows", Default:="i.e.: 1") Set cell = Range("A1:A" & lastRow). Find(pmpt) If Not cell Is Nothing Then For l = cell.Row To cell.Row + numrows Range("A" & l).EntireRow.delete Next l End If Do
I need to find the total number of rows down to the next blank cell (and then perform a function based on that number).
I'm using:
CountA(A1,xlDown) Situation: I have a raw data import - each record is anywhere from 2 to 9 rows, and I need to move each row in that group into a column.
I would like to use something like:
totalRows = Application.WorksheetFunctions.CountA(Range("A1, xlDown")) If totalRows = 4 Then ActiveCell.Offset(1, 0).Range("A1").Select Selection.Cut ActiveCell.Offset(-1, 1).Range("A1").Select ActiveSheet.Paste etc.
I have huge sorting job in Excel.I have a excel file from each year.And I put these together to a huge excel file. And I need to track down the last activity if the customer is listed multiple times.I could just go through and delete the rows, but the last row.But, that takes a lot of time.
Format: Last activity (year only) - Customer number - Customer name
2010 - 1001 - Company A 2011 - 1001 - Company A 2012 - 1001 - Company A
I have a dataset in Excel 2007 where I need to determine the number of census tracts (as rows) it takes for each column of data values (populations of different ethnic groups) to reach a cumulative percentage of 50% of their City group total. This is a measure of concentration that will vary from group to group.
I can do this manually by sorting each column from largest population percentage to smallest population percentage, then shift-click selecting the first row, scrolling down until I see the sum of percentages shown in the bottom right corner first reaches 50.000% or more.
Is there a cell formula I can use to determine the number of rows it takes to meet the criteria? I have to do this for 250 columns.
Is there a cell formula I can use to determine the number of rows it takes for a column of data values to reach a specific amount, that is first reach a cumulative percentage of 50.000% of the column total? It must be based on the data values from largest to smallest but I don't want to have to manually sort each column I have.
I have a very large spreadsheet (46,000 rows). There are a couple hundred rows I need to find and highlight, and also insert potentially-linked contract numbers in a second column.
Is there a quick way to do this without using find and replace to highlight all several hundred of these rows? I have an hour and a half until I leave work and my boss wants it today! Compounded is the problem that there are about 100 versions of this spreadsheet I need to do this for.
Name Address Phone # zip Danielle 4561 Danielle 9852 Danielle 22 Danielle 69 Joe 895 Joe 28 John 9821 John 1114 John 698
Say I did a search for Joe. I want to report back all the addresses in which he resided but there's no way to tell how many rows of data each person has. Joe has 2 rows, Danielle has 4 rows and John has three. How do I report back all the relevant rows?
I have a sheet with "Yes", "No', and "N/A' in most of the Columns. (E - Q) and about 100 rows of data.
I only want to count the number of rows that have "No" in column E and Yes in all the others. If "no" occurs in any of the other columns in that row (D-Q) I dont want it to be part of the count.
I've a large excel file contain a sheet of values. With a Macro I would like to 1) find the smallest absolute value in a certain column 2) find the row number where this value was found 3) Copy certain values from this row to another place.
I have a workbook with several sheets that have basically the same template but some have many more rows that others..
I am using the following code to hide columns based on cell value to "tidy it up" for printing.
Code: Dim i As Long For i = 170 To 2 Step -1 Cells(39, i).EntireColumn.Hidden = Cells(39, i).Value = "N" Next i
I would like the VBA to determine what the row number is based on the row header e.g. "Prioritised Courses", rather than having to maintain the code each time new rows are added.
I would put it at the top or way down the bottom, but multiple (even less excel skilled) users will be using the "hide columns" functionality.
I would like to create a VBA macro which would do the following:
There will be three columns A, B, and C. Each cell in each column will have a number with two places after the decimal. Each integer corresponds to a letter code. In the fourth column (D), I would like the letter codes from the corresponding three numbers in the same row to be combined in one cell as follows (if possible):
It is important that the macro only pay attention to the whole number, and ignore the numbers after the decimal. However, the numbers after the decimal must remain in the chart.
I have a worksheet that is several thousand rows long. It is sectioned into various "topics" (e.g. Revenue, Profit); each topic (there are about 100) has 10 companies. The 10 companies are the same for each topic. For instance, if 2 of the companies are Microsoft and Intel, then there will be a Microsoft row and an Intel row within each topic.
I am trying to write some code to delete every instance of a company (the user indicates the company in a form). So, for instance, if I want to delete Microsoft, the user would enter the stock ticker, MSFT, into the form and press the appropriate command button. When the command button is pressed, the code should find each row that contains the ticker MSFT (the tickers happen to be in column B) and delete it.
I have written the following unsuccessful Private Sub CommandButton1_Click()
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 want to create a macro that will automatrically number cells in the same column. Here is the hard part. I will never start with the same number and the range nor the increment between numbers will be the same. I will start in the same cell. And the number must look like 125+45.65
I need to find data in columns B and C and add the figures from column F, which drop down one line. I have written the following formula which is giving me far higher figures than I should be getting
Sub Provaregress() r = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row Application.Run "ATPVBAEN.XLAM!Regress", ActiveSheet.Range("$J$2:$J$r") _ , ActiveSheet.Range("$K$2:$M$r"), False, False, 99, "ANOVA", False, _ False, False, False, , False Cells.Select Cells.EntireColumn.AutoFit Range("A1").Select End Sub
But it gives me an error. The only way i was able to do it without error was:
Code: Sub Provaregress() Application.Run "ATPVBAEN.XLAM!Regress", ActiveSheet.Range("$J$2:$J$53968") _ , ActiveSheet.Range("$K$2:$M$53968"), False, False, 99, "ANOVA", False, _ False, False, False, , False Cells.Select Cells.EntireColumn.AutoFit Range("A1").Select End Sub
But as u can see it has a fixed number of rows. ( I need variable number of rows detected on column J, and then run regression with K,L,M as depending variables).
I am not the best at this, but we recorded a macro and we want to delete whole rows after we 'control' find something from a specific column. WHen we recorded our macro, it finds the first instance and we hightlight the whole row and 'control' 'shift' 'end' and delete all of the rows. We did this because we sorted and made sure the information we wanted to delete was at the bottom of the worksheet. we realized that each day the spreadsheet we pull from an ip address gets bigger and the row that we started from to delete starts on a different row each day. How do we get all the information to delete everyday, even when the row that Owned starts on changes? ...
i want a macro that will start on D25 and enter a 1 for five rows up to D29 than change and enter a 2 starting on d30 and enter a 2 for five rows up to D34 than change an enter a 3 up to D39 ....... on and on up D225.
I've then used a simple count formula to add up the number by each stage and it's these numbers that I want the macro to use when determining how many rows to input.
Complete2Reporting1In Progress1Planning1
A second worksheet hosts the desired output - a simple report template, split into stages for each status type (completed, planning etc.) with the correct number of rows for each.
Completed AuditsCharlieDeltaReportingBetaAudits in ProgressAlphaAudits in PlanningOmega
So, I want the macro to ensure that we have the right number of rows for each stage, as this month will be run on a monthly basis and the stage each audit is at will change, and the number of rows required in each section will also be different.
I can't seem to find the answer to this. In VBA, how do you Find a cell or row based on multiple criteria? All I need is to find it's location. If it helps, here's an example:
Sheet 1 contains source data: Date Name Time Complete
Sheet 2 contains an interactive worksheet using this data. On Sheet 1 there's an entry: 9/12/2006 George 03:30 PM
Sheet 2 displays those records with adjacent cells for entering data. When data is entered, I need the system to go back to Sheet 1, find the entry that matches this one, and put an "x" in the Complete column.
create a macro that will insert a certain number of blank rows to my spread sheet. The number of rows is determined by the #of tasks calculated for that day and is in column B. For example if in column A the date is 01-07-14 and in column B it has 7, I would like 7 rows inserted with the date in column A to remain the same in all 7 rows. Ideally I would like to use this macro for every row, so if the next row down has 02-07-14 and 6, I would like it to add 6 new rows with the same date.
I have attached a copy of the spread sheet for reference.