I have a sheet with thousands of rows of ID's which are made up of a series of letters, numbers, underscores and or spaces. Within the sheet there are numerous duplicates so I need to able extract the numerical element, which is the key data to be able to identify the duplicates.
The numbers I need to extract are mainly 6 and 7 digits long however don't always sit in the same place within the ID. I don't need the 3 digit number sequences, just the 6 & 7 number sequences
I've found a formula that strips out all the numbers, however it also included the 3 digit numbers which I don't want. I've also used Text To Columns to break up the ID across a number of columns however that leaves me with 2 and sometimes 3 columns where a 6 digit ID appears
Is there a simple way to extract the number if it's a certain length? i.e. 6 or 7 digits long
In have a worksheet with about 5,000 rows. In column there is a unique identifier for each row, however the unique identifier can take one of 12 different formats, namely:
L1314LAND00001 through to L1314LAND0XXXX L1314CUST00001 through to L1314CUST0XXXX L1314COMM00001 through to L1314COMM0XXXX
M1314LAND00001 through to M1314LAND0XXXX M1314CUST00001 through to M1314CUST0XXXX M1314COMM00001 through to M1314COMM0XXXX
N1314LAND00001 through to N1314LAND0XXXX N1314CUST00001 through to N1314CUST0XXXX N1314COMM00001 through to N1314COMM0XXXX
S1314LAND00001 through to S1314LAND0XXXX S1314CUST00001 through to S1314CUST0XXXX S1314COMM00001 through to S1314COMM0XXXX
These unique identifiers won't always appear in sequentiual order. In Cells B2 to M2, I want to be able to determine what the next entry for each of the twelve variations will be, so for example, if the current highest value in column A for the 'S1314LAND' range S131400421, in cell K2, I would want it to display S1314LAND00422, and if the current highest value in column A for the 'M1314CUST' range M1314CUST0036, I would want cell C2 to display M1314CUST0037, so anyone at a glance can see the next highest unique reference for the relevant set, rather than having to go through the unique identifiers in column A manually to determine the next entry in the series.
I'm not really sure where to start, when there can be more than one aplhanumeric entries ending in the same number, e.g. S1314CUST00500 and M1314LAND00500.
I have found a very useful UDF for removing non-alpha characters from strings. (See below, Credit for posting to Stanley D Grom - Ozgrid post ´Removing Non-alpha Characters From Text´).
Private Function RemoveCharacters(InString As String) As String Dim intLoopCounter As Integer Dim intStringLength As Integer Dim intASCIIVal As Integer intStringLength = Len(InString) InString = LCase(InString) For intLoopCounter = 1 To intStringLength intASCIIVal = Asc(Mid(InString, intLoopCounter, 1)) If intASCIIVal >= 97 And intASCIIVal <= 122 Then RemoveCharacters = RemoveCharacters + Mid(InString, intLoopCounter, 1) End If Next intLoopCounter End Function
1. Could the UDF be modified such that any part of a string contained within brackets is also removed (e.g. "NLGA High Street (West-Enfield), EN6" becomes "nlgahighstreeten")?
2. Can an argument be added to the format of the UDF, such that numbers (0 to 9) are either included or excluded (e.g. RemoveCharacters(A1,1) where the argument ´1´ would include any numbers (0 to 9), so "NLGA2003 High Street (West-Enfield), EN6" becomes "nlga2003highstreeten6")? ´blank´or ´0´would exclude these numbers, i.e. would return "nlgahighstreeten"
I had an "If" formula that would grab my numeric data from one cell and dump it into the corresponding cell depending on my letter code. I had to change my code vales from apha to numeric. I enclosed the attached spreadsheet and highlighted the cells in yellow that are in my formula that don't work any longer. I was hoping someone may have a solution.
I need to find cells containing text (Alpha characters only) in a single column, an return the row(+1 then -1). The column contains Group names (Unknown) , and under each name follows numeric data until the next group name. The cells are not formatted other than BOLD names. I need to exctract the numeric data in groups.
I have manged using the following code, but this always assumes there is an "e" in the name, but would prefer a more foolproof method. (I used "e" cos it is ok so far, BUT this could change in the future)
Sc = "A" Sr = "1" With Worksheets(1).Range(Sc & Sr & ":A500").................
I have another problem with this damn address file. Column H and I have data in them that is often mixed. As shown below, I have used A and B below, but its normaly in Column H and I. I would be greatul if some could write a macro to split the data into the two columns.
Rows 2-8 is what Im presented with. I would like them to look like 11-17
Note that the number in row 8 does not match, so is left for manual intervention....
I have two columns of numbers (this week - Column A and last week - Column B). What I need to do is look at the numbers and pull two lists out in Columns C and D. In columns C a list of the numbers that are missing from last week in column D numbers that are missing that were added from the previous week. The two lists consist of about ten thousand rows of data.
I'm going to be using a spreadsheet to keep track of where different people are at. So if Person 1 is in Room 3, I will stick a 3 in the box next to their name and then can look at the spreadsheet whenever I need and see what room they are in. When I'm deciding what room to put a person in, though, I need to be able to quickly glance at a list of Room #'s and see what one's are still available. So I have a bank of Room #'s in the spreadsheet....1,2,3, etc.
What I'd like, is some way to set this up so that when I put, for example, "3" in the cell next to "Person 1" the spreadsheet automatically removes "3" from the bank of available Room #'s and when I delete the "3" because the person has left, it adds "3" back to the bank of available Rooms.
I have a mass of data which look something like this:
and I require the ranges of reference numbers to be listed in a column one above the other, which requires inserting new rows. I also need the date & description columns copied down into the newly inserted rows.
So basically for example I would want the top row to now read:
and then apply the same procedure to the other ranges below this.
A B C D E F G 23445566894 Brwn pdc aft Cat1 45687930596 $5 45687930596 Gld wdget adi Cat2 23445566894 $6
In the example above, I would like to do a vlookup in column C that matches the digits in column A to those in column F, with the output being the corresponding value in column G. I believe it involves the left function but not sure how to really use it here.
In other words, I would like product codes where the last character is a letter to be sorted ahead of product codes where the last character is a digit. The way Excel is normally set up, it sorts in just the opposite way.
I'm trying to have the macro limit the cell entry to 5 characters beginning with a "P" and the remaining 4 character being numeric. The problem I'm having is that it's not recognizing the requirement for the beginning "P" but only identifies if the length is less than 5 characters. Any idea how I can resolve this?
For PN2 = 43 To 72 If Not IsEmpty(Cells(PN2, 1)) And Left(Cells(PN2, 1), 1) "P" And Len (Cells(PN2, 1)) 5 Then MsgBox ("The employee number must be 5 characters long begining with P (e.g. P0001), please change accordingly!") Range(Cells(PN2, 1), Cells(PN2 + 2, 1)).ClearContents Cells(PN2, 1).Select End If Next
I have cells with alphanumeric values. I need to extract the numeric values based on certain criteria and put these values in adjescent rows.
The sheet I am using has 3 rows . Row B contains data. Row C is Amount, Row D is Month, Row E is Action
To put values in Rows C, D and E , I need the data from row B in following criteria.
data in B row is as follows :-
RS 555/STMT DT 170807/BP12/TO PAY MEMBERSHIP FEE RS.555/STMT 020907/BP12/ OFFER ANNFEE RS 555/- / STMT 020907 / BP 12 / FIRST TIME RS595/STMT 0807/BP12/ first time MEM FEES RS 525 /STMT 120807 / BP12/1ST TIM
criteria for row C if the cell contains "AMT" or "RS" or "INR" or "AMNT" or "RS."then extract the value till first "/" or "" and put it under Amount row. ( E.g: "AMT 595 /" or "Inr 595/" or " Rs. 595")
criteria for row D if the cell contains "stmt" or begins with "0" or endswith "07" then extract the value till first "/" or "" and put it under Month row.
criteria for row E
if the cell contains "BP" or "OP" then extarct the value till first "/" or "" and put it under department row. ( e.g " BP01 /" or "OP 02 ")