ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   CAN YOU ALPHA SORT IN A SINGLE CELL? (https://www.excelbanter.com/excel-discussion-misc-queries/165293-can-you-alpha-sort-single-cell.html)

Precious Pearl

CAN YOU ALPHA SORT IN A SINGLE CELL?
 
CAN YOU ALPHA SORT IN A SINGLE CELL?

Gary''s Student

CAN YOU ALPHA SORT IN A SINGLE CELL?
 
Yes. But it requires a VBA macro
--
Gary''s Student - gsnu200755


"Precious Pearl" wrote:

CAN YOU ALPHA SORT IN A SINGLE CELL?


Bob I

CAN YOU ALPHA SORT IN A SINGLE CELL?
 
No, sort works on a Row basis. You need more than one Row of data.

Precious Pearl wrote:

CAN YOU ALPHA SORT IN A SINGLE CELL?



iliace

CAN YOU ALPHA SORT IN A SINGLE CELL?
 
In cell A1 I have "cbdgeaf". In cells C1:C7, I enter this array
formula:

=MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)

In cell E1, I have the following formula:

=CONCATENATE(C1,C2,C3,C4,C5,C6,C7)

Select column C. Copy and paste special values. Sort column C, no
headers, ascending, and the result in E1 will be sorted.

Not a great solution, and will only work for single-character
strings. Of course you could make a ridiculous long array formula
that will split up by a delimited, but you still have to go through
the process of paste special values, resort, etc etc. You'll probably
run into function nesting limitations if you're using Excel 2003 or
earlier, formula length problems due to repeated statements for error
checking... in short you don't want to go there.

Another possibility would be using Text-to-columns, then copy/paste
special transpose, then sort. And, like Gary said, VBA is an option
as well.


On Nov 8, 3:01 pm, Gary''s Student
wrote:
Yes. But it requires a VBA macro
--
Gary''s Student - gsnu200755



"Precious Pearl" wrote:
CAN YOU ALPHA SORT IN A SINGLE CELL?- Hide quoted text -


- Show quoted text -




Ron Rosenfeld

CAN YOU ALPHA SORT IN A SINGLE CELL?
 
On Thu, 8 Nov 2007 11:31:01 -0800, Precious Pearl
wrote:

CAN YOU ALPHA SORT IN A SINGLE CELL?


You need to use a VBA macro.

To enter the macro, <alt-F11 opens the VB Editor.

Ensure your project is highlighted in the project explorer window, then
Insert/Module and paste the code below into the window that opens.

To use this, select the cell(s) you which to sort within the cell. Then
<alt-F8 opens the macro dialog box. Select the srt macro and Run.

=================================
Option Explicit
Sub srt()
Dim c As Range
For Each c In Selection
If Len(c.Text) 0 Then c.Value = bSort(c.Text)
Next c
End Sub
Function bSort(str As String)
Dim temp As Variant
Dim tempArray() As Variant
Dim i As Integer
Dim NoExchanges As Integer

ReDim tempArray(0 To Len(str) - 1)
For i = 1 To Len(str)
tempArray(i - 1) = Mid(str, i, 1)
Next i

' Loop until no more "exchanges" are made.
Do
NoExchanges = True

' Loop through each element in the array.
For i = 0 To UBound(tempArray) - 1

' If the element is greater than the element
' following it, exchange the two elements.
If tempArray(i) tempArray(i + 1) Then
NoExchanges = False
temp = tempArray(i)
tempArray(i) = tempArray(i + 1)
tempArray(i + 1) = temp
End If
Next i
Loop While Not (NoExchanges)
bSort = Join(tempArray, "")
End Function
========================================
--ron


All times are GMT +1. The time now is 11:45 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com