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

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

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

¦p¦ó±N¥h­«ªºARR¸ê®ÆÂà¤JBÄ檺ÅçÃÒ²M³æ¤¤,·P®¦.

ÅçÃÒ²M³æ.rar (15.74 KB)

§ù¤p¥­

¦^´_ 1# dou10801


    ÁÂÁ«e½úµoªí¦¹¥DÃD»P½d¨Ò
¬O³o·N«ä¶Ü?
1.jpg
2022-12-19 15:49


.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:=Join(arr, ",")
¥Î¦æ°Ê¸Ë¸mÂsÄý½×¾Â¾Ç²ß«Ü¤è«K,ÁÂÁ½׾¸gÀç¹Î¶¤
½Ð¤j®a¤@°_¤W½×¾Â¨Ó¥æ¬y

TOP

¦^´_ 1# dou10801


    ¥H¤U¬O«á¾ÇÂǦ¹ÃD½m²ß¦r¨å¥h°£­«½Æªº¤ß±o»Pµù¸Ñ
Option Explicit
Sub ¸ê®Æ¥H¦r¨å¥h°£­«½ÆÂରÅçÃÒ²M³æ()
Dim i&, Y, arr
'¡ô«Å§iÅܼÆ:i¬Oªø¾ã¼Æ,(Y,arr)¬O³q¥Î«¬ÅܼÆ
Set Y = CreateObject("Scripting.Dictionary")
'¡ô¥OY¬O ¦r¨å
For i = 1 To [A65536].End(xlUp).Row
'¡ô³]¶¶°j°é!i±q1¨ìAÄ榳¤º®eÀx¦s®æ³Ì«á¦C¸¹
   Y(Trim(Cells(i, "A"))) = ""
   '¡ô¥O°j°éÀx¦s®æªº­È¥h°£ÀY§ÀªºªÅ¥Õ¦r¤¸«á·íkey,item¬OªÅ¦r¤¸,©ñ¤J¦r¨å¤¤
Next
arr = Application.Transpose(Application.Transpose(Y.KEYS))
'¡ô¥Oarr¬O¤@ºû°}¦C!¥ÎY¦r¨åªºkeyÂà¸m¨â¦¸ªº­È©ñ¤J³o°}¦C¤¤
With [¤u§@ªí1!B:B].Validation
      .Delete
      .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:=Join(arr, ",")
      '¦]¬°Formula1:=«á­±­nµ¹¤@­Ó","²Å¸¹¥i¤À³Îªº¦r¦ê,©Ò¥HJOIN() ´N¥i¥H¤F
      'https://learn.microsoft.com/zh-tw/office/vba/language/reference/user-interface-help/join-function

End With
Set Y = Nothing
Erase arr
End Sub
¥Î¦æ°Ê¸Ë¸mÂsÄý½×¾Â¾Ç²ß«Ü¤è«K,ÁÂÁ½׾¸gÀç¹Î¶¤
½Ð¤j®a¤@°_¤W½×¾Â¨Ó¥æ¬y

TOP

·PÁ¨â¦ì«e½ú«ü¾É.
TO:Andy2483=arr = Application.Transpose(Application.Transpose(Y.KEYS))
                             '¡ô¥Oarr¬O¤@ºû°}¦C!¥ÎY¦r¨åªºkeyÂà¸m¨â¦¸ªº­È©ñ¤J³o°}¦C¤¤
¸g´ú¸Õ arr=Y.KEYS    §Y¥i.
§ù¤p¥­

TOP

¦^´_ 4# dou10801


   ÁÂÁ«e½ú¦^´_
¤Ó¦n¤F,¤S¾Ç¨ì¤@­Ó¸gÅç,«á¾Ç±N¦r¨å»P¤@ºû°}¦C·d²V¤F!ÁÂÁ¤À¨É´ú¸Õ¤ß±o
¥Î¦æ°Ê¸Ë¸mÂsÄý½×¾Â¾Ç²ß«Ü¤è«K,ÁÂÁ½׾¸gÀç¹Î¶¤
½Ð¤j®a¤@°_¤W½×¾Â¨Ó¥æ¬y

TOP

¥»©«³Ì«á¥Ñ 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

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

¦^´_ 6# singo1232001


    ÁÂÁ«e½ú«ü¾É
«á¾Ç·Pı¦n©¯¹B,¯à±o¨ì«e½úªº¦^ÂЫü¾É
«á¾Ç¾Ç¨ì«e½ú«ü¾Éªº¤ß±o,¥Î¥ßÅé°±¨®³õ¤ñ³ë:
1.¤@¯ë°}¦C¬O¾r¾p¦Û¤v¶}¶i°±¨®,¦Û¤v¨ú¨®¶}¥X (Array)
2.¦r¨å¹³¬O¦Û°Ê¥ßÅé°±¨®³õ¾÷¾¹,±N¨®¿é°e¨ì¥ßÅé°±¨®®æ,¾÷¾¹¨ú¥X¨®¤l
3.°±¨®®æs¬O°}¦C,¨®¤l¬O°}¦C­È (items)
4.¿é°eªº¾÷¾¹s¤]¬O°}¦C (keys)
5.¦Û°Ê¥ßÅé°±¨®³õªº¨®¤l­n³z¹L¾÷¾¹¤~¯à¶i¥X

½Ð«e½ú¦A«ü¾É,ÁÂÁÂ
¥Î¦æ°Ê¸Ë¸mÂsÄý½×¾Â¾Ç²ß«Ü¤è«K,ÁÂÁ½׾¸gÀç¹Î¶¤
½Ð¤j®a¤@°_¤W½×¾Â¨Ó¥æ¬y

TOP

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

¦^´_ 6# singo1232001


    «e½úªº¸É¥Rª¾ÃÑ¥]§t«Ü¼s,¦³¨Ç«á¾ÇÁÙ¤£·|¥Î,½Ð«e½ú¥H«á¦A´£ÂI
¦Ü©ó¦r¨å¸Ìªº°}¦C¤j¤p¤£¯à§ï,«á¾Ç¦³¾Ç¨ì¥ý±N¦r¨å¸Ì©ñ¤J¤@­Ó°÷¥ÎªºªÅ°}¦C,´N¥i¥HÅܳq¨Ï¥Î
ÁÂÁ«e½ú¦A«ü¾É

¸É¥R¤ß±o:
¦r¨å¥i³z¹LAdd,Remove,RemoveAll°µ¦r¨å¼W´î
¥Î¦æ°Ê¸Ë¸mÂsÄý½×¾Â¾Ç²ß«Ü¤è«K,ÁÂÁ½׾¸gÀç¹Î¶¤
½Ð¤j®a¤@°_¤W½×¾Â¨Ó¥æ¬y

TOP

Formula1:=Join(Y.keys, ",")
¥»¨­§Y¬O°}¦C, ¤£¶·¦AÂ൹¨ä¥¦°}¦CÅܼÆ

TOP

·PÁ¦U¦ì«e½ú«ü¾É,¦p¦ó±NY.KEYS§@±Æ§Ç,ÁÂÁÂ.
§ù¤p¥­

TOP

        ÀR«ä¦Û¦b : ¦³¤ß´N¦³ºÖ¡A¦³Ä@´N¦³¤O¡A¦Û³yºÖ¥Ð¡A¦Û±oºÖ½t¡C
ªð¦^¦Cªí ¤W¤@¥DÃD