ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Variable Problem. (https://www.excelbanter.com/excel-programming/351141-variable-problem.html)

Tim

Variable Problem.
 
Hi folks,

I need a help for my top problem. I spend a lot of time but I can't find a
solution for it. The following is my sample of my code. I want to sort the
value of str in ascending and the max value of str. Any help will be
appreciated.

Thanks in advance.

Tim.


Example:

Dim str As String

str = ("9, 5, 8, 3, 1, 6")

MsgBox str


Ron Rosenfeld

Variable Problem.
 
On Sun, 22 Jan 2006 08:52:02 -0800, Tim wrote:

Hi folks,

I need a help for my top problem. I spend a lot of time but I can't find a
solution for it. The following is my sample of my code. I want to sort the
value of str in ascending and the max value of str. Any help will be
appreciated.

Thanks in advance.

Tim.


Example:

Dim str As String

str = ("9, 5, 8, 3, 1, 6")

MsgBox str


Here's one way, if you have VBA6 or later:

=================================
Option Explicit

Sub foo()
Dim str As String
Dim TempArray As Variant, Temp As Variant
Dim i As Integer
Dim NoExchanges As Integer

str = ("9, 5, 8, 3, 1, 6")
TempArray = Split(str, ", ")

' 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)

str = Join(TempArray, ", ")


MsgBox (str & vbLf & "Max Value: " & TempArray(UBound(TempArray)))
End Sub
===============================


--ron

Tim

Variable Problem.
 
Hi Ron,

Thank you very much for your code. I have another question regarding the
code. How to sort the alphabet and date? Please help.

For example:

str = ("12/1/06, 12/15/05, 1/1/05, 10/10/05")

or

str = ("Peter Smith, John betz, John bocco")

Thanks in advance.

Tim.

"Ron Rosenfeld" wrote:

On Sun, 22 Jan 2006 08:52:02 -0800, Tim wrote:

Hi folks,

I need a help for my top problem. I spend a lot of time but I can't find a
solution for it. The following is my sample of my code. I want to sort the
value of str in ascending and the max value of str. Any help will be
appreciated.

Thanks in advance.

Tim.


Example:

Dim str As String

str = ("9, 5, 8, 3, 1, 6")

MsgBox str


Here's one way, if you have VBA6 or later:

=================================
Option Explicit

Sub foo()
Dim str As String
Dim TempArray As Variant, Temp As Variant
Dim i As Integer
Dim NoExchanges As Integer

str = ("9, 5, 8, 3, 1, 6")
TempArray = Split(str, ", ")

' 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)

str = Join(TempArray, ", ")


MsgBox (str & vbLf & "Max Value: " & TempArray(UBound(TempArray)))
End Sub
===============================


--ron


Ron Rosenfeld

Variable Problem.
 
On Sun, 22 Jan 2006 22:31:02 -0800, Tim wrote:

Hi Ron,

Thank you very much for your code. I have another question regarding the
code. How to sort the alphabet and date? Please help.

For example:

str = ("12/1/06, 12/15/05, 1/1/05, 10/10/05")

or

str = ("Peter Smith, John betz, John bocco")

Thanks in advance.

Tim.



What was the problem with the sort you obtained when you tried those values for
str?
--ron

Tim

Variable Problem.
 
Hi Ron,

When I ran the code with the following str (date), I got the result like
this: 1/1/05, 10/10/05, 12/1/06, 12/15/05 Max Value: 12/15/05. I am
expecting 12/1/06 is the last value but it is not.

str = ("12/1/06, 12/15/05, 1/1/05, 10/10/05")

Please help.

Thanks in advance.

Tim.

"Ron Rosenfeld" wrote:

On Sun, 22 Jan 2006 22:31:02 -0800, Tim wrote:

Hi Ron,

Thank you very much for your code. I have another question regarding the
code. How to sort the alphabet and date? Please help.

For example:

str = ("12/1/06, 12/15/05, 1/1/05, 10/10/05")

or

str = ("Peter Smith, John betz, John bocco")

Thanks in advance.

Tim.



What was the problem with the sort you obtained when you tried those values for
str?
--ron



All times are GMT +1. The time now is 04:35 AM.

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