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
  • Learn & ask questions
Solved

excel part number sort

Posted on 2010-11-29
5
389 Views
Last Modified: 2012-06-22
How do I get excel to sort part numbers so I can find my part number grouped together well.  
I need all the part numbers with 1 to show together even if its 100, 1234,1000, or 10000?

For example:
100
200
1234
1000
2000
10000
20000
200000
100000
0
Comment
Question by:rembury
5 Comments
 
LVL 58

Expert Comment

by:cyberkiwi
ID: 34232009
I those are "part numbers" (text), you should be storing them as text, by adding ' in front of them
Then they will sort as text (1's together).
For now, you can add a new column, and type this formula (If first is A1, and new column is B)
B1:  =TEXT(A1)
Copy down
Then select all your data, and sort by the new column
When Excel prompts (Sort Warning), choose the lower one (sort numbers and text separately)
0
 
LVL 24

Expert Comment

by:StephenJR
ID: 34232017
You could use =LEFT(A1,1) in the next column and sort by that one.
0
 
LVL 58

Accepted Solution

by:
cyberkiwi earned 500 total points
ID: 34232080
I meant

B1:  =TEXT(A1, "@")
...

But Stephen's LEFT does the same
0
 
LVL 12

Expert Comment

by:sstampf
ID: 34232115
You can also use the attached macro. Just select the range which you want to sort and then run this macro. You can also assign a shortcut key to it.

Regards
Shashank
Sub test()
Dim rng As Range, rng2 As Range
Set rng = Intersect(Selection, ActiveSheet.UsedRange)
For Each rng2 In rng
rng2.Value = "x" & rng2.Value
Next rng2
    ActiveSheet.Sort.SortFields.Clear
    ActiveSheet.Sort.SortFields.Add Key:=rng, _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveSheet.Sort
        .SetRange rng
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
For Each rng2 In rng
rng2.Value = Right(rng2.Value, Len(rng2.Value) - 1)
Next rng2
End Sub

Open in new window

0
 

Author Closing Comment

by:rembury
ID: 34232319
This worked great and was easy to use.

Thank-you
0

Featured Post

Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

Question has a verified solution.

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

Improved? Move/Copy Add-in Replacement - How to avoid the annoying, “A formula or sheet you want to move or copy contains the name XXX, which already exists on the destination worksheet.” David Miller (dlmille)  It was one of those days… I wa…
How to quickly and accurately populate Word documents with Excel data, charts and images (including Automated Bookmark generation) David Miller (dlmille) Synopsis In this article you’ll learn how to use ExcelToWord! to copy data,charts, shapes …
This Micro Tutorial will demonstrate on a Mac how to change the sort order for chart legend values and decrpyt the intimidating chart menu.
This Micro Tutorial will demonstrate how to create pivot charts out of a data set. I also added a drop-down menu which allows to choose from different categories in the data set and the chart will automatically update.

789 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question