Sodori, By default the list control has the $LB_SORT style which forces a sort of the items and also assumes that they are in string format, which leads to the rather unexpected order you see. So you need to remove that style from the list when you create it and sort the values as numbers before adding them to the list: #include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Array.au3>
; Array of values as strings
Global $aList_String[8] = ["1", "2", "3", "12", "134", "14", "256", "8"]
; And sorted as strings
_ArraySort($aList_String)
; Array of values as numbers
Global $aList_Number[8] = [1, 2, 3, 12, 134, 14, 256, 8]
; And sorted as numbers
_ArraySort($aList_Number)
$hGUI = GUICreate("Test", 500, 500)
; Create lists without the sort style
$cList_String = GUICtrlCreateList("", 10, 10, 230, 300, BitOr($WS_BORDER, $WS_VSCROLL))
$cList_Number = GUICtrlCreateList("", 260, 10, 230, 300, BitOr($WS_BORDER, $WS_VSCROLL))
; Add items to the lists
For $i = 0 To 7
GUICtrlSetData($cList_String, $aList_String[$i])
GUICtrlSetData($cList_Number, $aList_Number[$i])
Next
GUISetState()
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEndAll clear? M23