Solved

# Sequential Unique ID Number

Posted on 2013-10-23
304 Views
I had assistance writting the following code:

``````Sub Fill_ID()
Dim LastRow As Long, MaxN As Long, StoreN As String
Dim Rng As Range, A() As String, i As Integer
Worksheets("TEMPLATE").Activate
'Find ID column
For i = 1 To 50
If Cells(1, i).Value = "TrackerNo" Then Exit For
Next i
If i = 50 Then
Exit Sub
End If
ColN = i
LastRow = Cells(65536, ColN).End(xlUp).Row ' In Excel 2007 and later last row could be more then 65536
StoreN = Right(Cells(2, 1).Value, 3)
If LastRow = 1 Then
MaxN = 1
Else
A = Split(Cells(LastRow, ColN).Value, "-")
StoreN = Right(Cells(LastRow, ColN).Value, 3)
MaxN = A(0)
End If
MaxN = MaxN + 0
Do While Cells(LastRow + 1, 6).Value <> ""  'Fill cells where Column F is not empty
StoreN = Right(Cells(LastRow + 1, 1).Value, 3) 'Get Store Number from column 1
If MaxN < 999 Then
Cells(LastRow + 1, ColN).Value = StoreN & "-" & Format(MaxN, "000")
LastRow = LastRow + 1
MaxN = MaxN + 1
Else
Exit Do
End If
Loop
End Sub
``````

Need additional help just noticed when additional rows of data are added the TrackerNo is not updating correctly.  If possible I would like to have the TrackerNo update sequentially.  Attaching sample you will see that the number jumps from 789-012 to
EE-TrackerNo.xlsm
0
Question by:jmac001
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• 3
• 2

LVL 30

Accepted Solution

gowflow earned 250 total points
ID: 39594696
What is the rule ? Just sequentially regardless of the data that is there ? as looking at the logic I see that it looks at the storenumber to build the sequence

So what do you want ?
gowflow
0

LVL 21

Assisted Solution

CompProbSolv earned 250 total points
ID: 39594717
In Line 17 change:
MaxN = A(0)
to:
MaxN=StoreN + 1

and I think you will have it.
0

Author Comment

ID: 39594772
Thank you that resolved the issue.
0

LVL 30

Expert Comment

ID: 39594792
Not so quick !!!
in appearance it give you the correct figure but the code should be

to change this line
MaxN = A(0)

into this line
MaxN = A(1) + 1

as it is taking the second part of the last sequential and adding 1 whereas by changing it to variable StoreN you may not always hit it correctly.

gowflow
0

LVL 30

Expert Comment

ID: 39599983
Looking at this again you can have both solutions
MaxN = A(1) + 1

or
MaxN=StoreN + 1

gowflow
0

LVL 21

Expert Comment

ID: 39607382
Actually, goflow's solution is better.  His uses the characters after the "-" delimiter, regardless of how many there are.  My solution relied on the StoreN calculation, which assumes that the last three characters exactly contain the number.

To see the difference, change P10 from 789-009 to 789-09, delete P11 to the end, and run the macro.  With my solution you will get some odd results (double hyphens).  With goflow's solution you will get what you expect.

My solution works properly with proper data.  Goflow's is somewhat more fault-tolerant (at least for a missing digit).  I've not considered all of the other fault conditions  (e.g. non-numeric characters) and how the two solutions would differ.

I would suggest splitting the points.
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

### Suggested Solutions

This code takes an Excel list of URL’s and adds a header titled “URL List”. It then searches through all URL’s in column “A”, looking for duplicates. When a duplicate is found, it is moved to the top of the list. The duplicate URL’s are then highlig…
Access developers frequently have requirements to interact with Excel (import from or output to) in their applications.  You might be able to accomplish this with the TransferSpreadsheet and OutputTo methods, but in this series of articles I will di…
Graphs within dashboards are meant to be dynamic, representing data from a period of time that will change each time the dashboard is updated with new data. Rather than update each graph to point to a different set within a static set of data, t…
This Micro Tutorial will demonstrate the scrolling table in Microsoft Excel using the INDEX function.
###### Suggested Courses
Course of the Month5 days, 15 hours left to enroll