Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ordinare valori di un campo

39 views
Skip to first unread message

Akery

unread,
Jan 11, 2024, 2:59:33 AM1/11/24
to
Buongiorno,

ho un campo di testo in cui ci sono dei valori separati da una virgola,
ho la necessità di mettere questi valori in ordine, c'è una funzione che
può risolvere il mio problema?

Grazie

Ammammata

unread,
Jan 11, 2024, 3:35:54 AM1/11/24
to
Akery explained on 11/01/2024 :
la funzione SPLIT divide una stringa in più sottostringhe, dato un
delimitatore e un paio di altri parametri

https://support.microsoft.com/en-us/office/split-function-876f246a-5144-44fa-889f-10078c7878f5

ti genera un array che puoi ordinare e successivamente rimettere
insieme

--
/-\ /\/\ /\/\ /-\ /\/\ /\/\ /-\ T /-\
-=- -=- -=- -=- -=- -=- -=- -=- - -=-
........... [ al lavoro ] ...........

RobertoA

unread,
Jan 11, 2024, 3:36:39 AM1/11/24
to
Non credo
Con la SPLIT ti separi i numeri
Ma poi per ordinarli devi ciclare, controllarli uno alla volta
O meglio, una funzione che realizzi quanto chiedi esistera' appena
l'avrai realizzata

Akery

unread,
Jan 11, 2024, 3:44:44 AM1/11/24
to
immaginavo non fosse così semplice!

provo a creare l'array con split e ricostruire il campo

Ammammata

unread,
Jan 11, 2024, 4:53:01 AM1/11/24
to
Ammammata wrote on 11/01/2024 :
> ti genera un array che puoi ordinare e successivamente rimettere insieme

con SQL uso prima XML PATH per accodare i dati e poi il comando STUFF
per togliere l'ultimo separatore

shado gps

unread,
Jan 11, 2024, 4:57:13 AM1/11/24
to
Private Function srt(a As String) As String

Dim b() As String

b = Split(a, ";")

WizHook.SortStringArray b

srt = Join(b, ";")

End Function


Private Sub Comando0_Click()

MsgBox srt("ff;cc;aa;zz;qq")

End Sub

Akery

unread,
Jan 11, 2024, 5:41:54 AM1/11/24
to
wow! grazie

Ammammata

unread,
Jan 11, 2024, 5:43:49 AM1/11/24
to
shado gps explained :
> WizHook.SortStringArray b

facciamo luce:

https://isladogs.co.uk/wizhook/

https://nolongerset.com/wizhook/

e altro ancora che non riporto

Bruno Campanini

unread,
Jan 11, 2024, 1:26:51 PM1/11/24
to
Ammammata presented the following explanation :
> shado gps explained :
>> WizHook.SortStringArray b
>
> facciamo luce:
>
> https://isladogs.co.uk/wizhook/
>
> https://nolongerset.com/wizhook/
>
> e altro ancora che non riporto

Troppo infantile questa... si insegnava alle "alimentari",
la chiamavano Bubble Sort:
==================================
Public Sub SortArray()
Dim S, i, j, Swap
S = Split("ff;cc;aa;zz;qq", ";")

For i = LBound(S) To UBound(S) - 1
For j = i + 1 To UBound(S)
If S(i) > S(j) Then
Swap = S(j): S(j) = S(i): S(i) = Swap
End If
Next
Next

End Sub
================================

Bruno

Ammammata

unread,
Jan 12, 2024, 2:15:47 AM1/12/24
to
It happens that Bruno Campanini formulated :
> Bubble Sort

molto semplice e buono se i dati non sono tanti, come nel caso dell'OP

ricordo che una delle prime versioni del Qbasic (incluso inel MSDOS)
proponeva come demo 3 o 4 algoritmi di ordinamento diversi, mettendone
a confronto le prestazioni

c'era anche lo heap-sort, ma non ho ancora capito come gestirlo :)

Bruno Campanini

unread,
Jan 12, 2024, 4:25:40 AM1/12/24
to
Ammammata pretended :
> It happens that Bruno Campanini formulated :
>> Bubble Sort
>
> molto semplice e buono se i dati non sono tanti, come nel caso dell'OP
>
> ricordo che una delle prime versioni del Qbasic (incluso inel MSDOS)
> proponeva come demo 3 o 4 algoritmi di ordinamento diversi, mettendone a
> confronto le prestazioni
>
> c'era anche lo heap-sort, ma non ho ancora capito come gestirlo :)

Col Quick Basic 4.5 usavo Shell-Metzner Sort.
Le prove comparative che feci allora lo davano molto più veloce
del Bubble Sort (che è il sistema naturale e quindi il più
semplice) mi pare sui 30-40 elementi da ordinare.
Voglio rifare tali prove su qualche migliaio di casi in
Excel-Access.
Sicuramente il più veloce in assoluto è l'SQL, non ho dubbi.

Bruno

Ammammata

unread,
Jan 12, 2024, 4:56:35 AM1/12/24
to
Bruno Campanini wrote on 12/01/2024 :
> Sicuramente il più veloce in assoluto è l'SQL, non ho dubbi.

ti piace vincere facile :)
0 new messages