ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

[µo°Ý] ¦p¦ó±NARR¸ê®ÆÂà¤JBÄ檺ÅçÃÒ²M³æ

¥»©«³Ì«á¥Ñ singo1232001 ©ó 2022-12-21 11:15 ½s¿è

¦^´_ 5# Andy2483


1.¦r¨å¥»¨­¬Oª«¥ó

2.³Ð«Ø¦r¨åd«á,¦r¨å¥»¨­·|¶¶«K³Ð«Ø   d.keys  ¸òd.items ¨â­Ó¤@ºû°}¦C

3.³o¨â­Ó°}¦C¥iª½±µ¨ú¥Î
   ¦ý»P¤@¯ëªº°}¦C¤£¦P
   µLªkª½±µ­×§ï(¥iŪ¤£¥i§ï)
  
   ­n­×§ï¤@¼Ë±o±q¦r¨åª«¥ó¥h­×
   ©ÎªÌ
   ¦p«e´X¼Óªº¤è¦¡ ¥ý§â¸ê®Æ¶×¤J·sªºarr°}¦C §ï¥Îarr­×§ï³B²z¸ê®Æ  


¸É¥R:¦b¦r¨å»P°}¦C¤¬¬Û¤í®Mªº¦UºØ¤è¦¡¤¤  ( ª«¥ó¥]°}¦C ª«¥ó¥]ª«¥ó  °}¦C¥]ª«¥ó  °}¦C¥]°}¦C)
         ¥u­n°}¦C¦bª«¥ó¤§¤U,¬Ò¤£¯à­×§ï ¥u¯àŪ¨ú,©Ò¥H¥u¦³²Ä¤@¦¸¾ã²Õ¶×¤Jªº¾÷·|,¤@¶i¥h´N¤£¯à¦A§ï
         ¥u¦³°}¦C¦s¦b°}¦C¤U,¤~¯à­×§ï¤l°}¦C   
         ¨Ò¦p:¤Gºû°}¦Car(1,1) ©Î ²Ä¤G¼h°}¦Car(1)(1)
         ³o¨âºØ°}¦C¤]³£¥i¥H¥s¤Gºû°}¦C ¤£®e©ö°Ï¤À ¹ê°È¤W¨Ã¨S¦³¯S§O°Ï¤ÀÁ¿ªk
          ¦]¬°¦bºû«×ªº·§©À¤W,¬O¤@¼Ëªº ,¥u¦³®Ä²v¤W·|¦³¨Ç³\®t§O,¸òÀ³¥Î¤W¦³¨Ç¨ú®t§O

TOP

¦^´_ 10# dou10801


    Sub SortArray()
  arr = Array("a", "b", "c", "d", "e", "C", "b")
  'arr = Y.keys()
  QuickSort arr, LBound(arr), UBound(arr)
  Debug.Print Join(arr, ",")
End Sub

Function QuickSort(ByRef ar, ByVal iLo As Long, ByVal iHi As Long)
  Dim pivot As Variant, lo, hi As Long
  
  lo = iLo: hi = iHi
  pivot = UCase(ar((lo + hi) \ 2))
  
  While lo <= hi
    While (UCase(ar(lo)) < pivot And UCase(lo) < UCase(iHi)): lo = lo + 1: Wend
    While (UCase(ar(hi)) > pivot And UCase(hi) > UCase(iLo)): hi = hi - 1: Wend
    If (lo <= hi) Then
      tmp = ar(lo): ar(lo) = ar(hi): ar(hi) = tmp
      lo = lo + 1: hi = hi - 1: tmp = ""
    End If
  Wend
  
  If hi > iLo Then QuickSort ar, iLo, hi
  If lo < iHi Then QuickSort ar, lo, iHi
End Function

TOP

¥»©«³Ì«á¥Ñ singo1232001 ©ó 2023-3-2 09:44 ½s¿è

¦^´_ 14# Scott090

¤]¦³½Õ¥ÎSQLªº¼gªk   ¦¹ºØ¼gªk­n³Ð¤@±i¦W¬°"sortSQL"ªº¤u§@ªí,ªí¥iÁôÂà ÀÉ®×­n¦³ÀɦW
Sub SortArray()
arr = Array("a", "b", "c", "d", "e", "C", "b")
orderSQL arr
Debug.Print Join(arr, ",")
End Sub

Function orderSQL(ar)
With CreateObject("adodb.connection"): V = Application.Version
If V >= 12 Then V = "Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=Excel 12.0; "
If V < 12 Then V = "Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=Excel 8.0; "
.Open V & "Data Source=" & ThisWorkbook.FullName
Set s = Sheets("sortSQL"): s.[A:A].ClearContents: s.[a1] = "sort"
s.[a2].Resize(UBound(ar) + 1, 1) = Application.Transpose(ar)
q = "select * from [sortSQL$A:A] order by sort"
ar = Application.Index(.Execute(q).getrows, 1, 0): End With
End Function

½Õ¥ÎSQL±Æ§Ç.zip (16.04 KB)

TOP

        ÀR«ä¦Û¦b : §g¤l¥ß«í§Ó¡A¤p¤H«í¥ß§Ó¡C
ªð¦^¦Cªí ¤W¤@¥DÃD