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

[µo°Ý] ¨â¤u§@ªí¤ñ¹ï ·s¼W­×§ï

[µo°Ý] ¨â¤u§@ªí¤ñ¹ï ·s¼W­×§ï

[ª©¥DºÞ²z¯d¨¥]
  • GBKEE(2014/1/11 13:28): ½ÐªþÀÉ»¡©ú

³o°ÝÃDÅý§Ú¦³ÂIÀY¤j@@

¾ãÅé§@·~¬yµ{¬O³o¼Ëªº

§Ú¦³2¥÷EXCEL(X,Y)¡A¥h°£±¼­«½Æ­È¦X¦¨1¥÷EXCEL(Z)
(X,Y->Z)

®æ¦¡Äæ¦ì³£¤@¼Ë

¥Ø«e§Ú¬O¥Î¥~³¡¸ê®Æªº¤è¦¡

¨C¦¸¥´¶}Z³£·|§ó·sX,Yªº¸ê®Æ

±NX,Yªº¸ê®Æ§ì¶iZªºsheet2,sheet3
(X=Zªºsheet2, Y=Zªºsheet3)

³o»ò°µ¬O·Q»¡§Ú¦bZ¤W§@·~´N¦n¤F

¦pªG³æ¯Â§âsheet2,sheet3ªº¸ê®Æ§ì¶isheet1,§R°£­«½Æ­È´N¬O§Ú­nªº¤F


¦ý²{¦b³Ì¤j°ÝÃD¬O
³Ì«á²£¥Xªºsheet1¦³´X­ÓÄæ¦ì·|Åý¨Ï¥ÎªÌ¶ñ¼g,¦ý³o¨ÇÄæ¦ì¬O¦bX,Yªº®É­Ô¤£¥Î¶ñ¼gªº
(³]©w¸ê®Æ³sµ²ªº®É­Ô¥u³]©wsheet2,sheet3·|°µªºÄæ¦ì,sheet1¤~·|¶ñ¼gªºÄæ¦ì¨S¦³°µ³sµ²,¦]¬°¦pªG³£°µ³sµ²¨º§ó·s«á´N·|ÅܪŪº)



³o¼Ëªº¸Ü§Ú¨C¦¸°µ¤@¦¸§ó·s¦X¨Ö
´N·|Åý­ì¥»¶ñ¼g¦bsheet1¤Wªº¸ê®Æ¿ù¶Ã±¼(¦]¬°sheet2,sheet3·|ÅÜ°Ê)

EX:
Äæ¦ì->            A            B               C(¦bsheet1®É¤~·|¿é¤J¸ê®Æ)

¦bsheet2       000        111     
¦bsheet3       222        333

>sheet1        000        111         AAA
                         222        333         BBB


<<§ó·s«á>>
Äæ¦ì->            A            B               C(¦bsheet1®É¤~·|¿é¤J¸ê®Æ)

¦bsheet2       000        111   
                         444        555
¦bsheet3       222        333

>sheet1        000        111         AAA
                         444        555         BBB   
                         222        333         



ªí¹F¤W¦³¨Ç½ÆÂø

¤£ª¾¦U¦ì¤j¤j¦³¨S¦³¤°»ò·Qªk¥i¥H§ïµ½

³Â·Ð¤F ÁÂÁ  :  )
¥Î¥\¨ì¥@¬É¥½¤é¨º¤@¤Ñ¡ã¡ã¡ã

¦^´_ 19# Hsieh

ªO¤j¤£¦n·N«ä §Ú±Ô­z¤W¦n¹³·|³y¦¨»~¸Ñ

§Ú¾ã²z¤@¤U
¸ê®Æ¨Ó·½¨Ó¦Û©óUserA , UserB
¦ý¬OUserA , UserBªºÄæ¦ì¥u¦³¨ìEÄæ¦ì"¶g§O        Date        «¬¸¹        Ãþ§O        ID"
«á­±ÂŦ⪺§Ú§Ñ¤F§R±¼

MATCH«á

Match A & B
¨Ó¦Û©óUserA , UserB
(¤ñ¹ï­ì«h¨Ì¾Ú¥ý«e©Ò´£ªº¬õ¦r³¡¤À->3­Ó(«¬¸¹,Ãþ§O,ID)¬°¤@²Õ)

¦ý¬O¦pªGMatch A & B «á­±ÂŦⳡ¤À¦³¸ê®Æ
¤U¦¸MATCHªº®É­Ô

¸ê®Æ¤@¼Ë¨Ó¦Û©ó
UserA , UserB
¥i¬OMatch A & B«á­±ÂŦⳡ¤À¥²¶·«O¯d

°£«DUserA , UserB ¨ºÃä¸ê®Æ¨S¤F
Match A & B¤]­n¸òµÛ¾ãÄæ§R

EX:

UserA
->  AAA   BBB   CCC
       AAA   BBB    DDD
Match A & B
-> AAA   BBB   CCC    TEST123(«e¤T­Ó¬°¤ñ¹ïªº¨Ì¾Ú¡A²Ä¥|­Ó¬°Match A & B¤~¶ñ¤Jªº¸ê®Æ)
      AAA   BBB   DDD    TEST456


<¦A¦¸MATCH>

UserA(¸ê®Æ§ïÅܤF)
-> AAA  BBB  EEE
      AAA  BBB  DDD

Match A & B
-> AAA BBB DDD TEST456 (¦]¬°¤@¶}©l¤ñ¹ï®É¦³³oµ§¡A¦A¦¸¤ñ¹ï¤@¼Ë¤S¥X²{®É¡A«á­±¨º­Ó¸ê®Æ­n¯d¤U¨Ó)
      AAA BBB  EEE                     (¦¹¬°·s¥X²{ªº¡A¸É¦b«á­±)




¥H¤W¤£ª¾³o¼Ë²M¤£²M·¡XDD

·Ð½Ð¤j¤jÀ°¦£¬Ý¬Ý

¦p¤£²M·¡§Ú¦A»¡©ú

ÁÂÁÂ
¥Î¥\¨ì¥@¬É¥½¤é¨º¤@¤Ñ¡ã¡ã¡ã

TOP

¦^´_ 18# li_hsien
15#»¡¨ì
¦pªGUserA¨S¦³ªº¡A¦ýmatchA&B¦³ªºÄæ¦ì(EX:¨Ï¥ÎªÌ)«h¯dªÅ
ªí¥ÜUSER¤ºµL¸ê®Æ«h«O¯d­ì¦s¦b©óMATCHªº¸ê®Æ
18#»¡¨ì
MATCHªº¨Ó·½¬O¨ÌUsetA,UserB¨Óªº
©Ò¥H¦pªGUserA,UserB¨S¦³ªº
MATCH¨ºÃ䥲¶·¾ãÄæ³£§R±¼
³o¬O§¹¥þ¤£ºÞMATCHªº¸ê®Æ¡A¥u¯d¤UUSERªº¸ê®Æ
³o¨âºØ±Ô­z¦n¹³¬O½Ä¬ðªº
¾Ç®üµL²P_¤£®¢¤U°Ý

TOP

¥»©«³Ì«á¥Ñ li_hsien ©ó 2014-1-20 13:34 ½s¿è

¦^´_ 17# Hsieh

[attach]17319[/attach]

MATCH¤ñ¹ï¤è¦¡¬O¹ïªº

¤£¹L­nCOPYªº¥u¦³ÂŦâ«e­±ªº³¡¤À
If d.exists(mystr) Then A.Resize(, 5) = d(mystr): d.Remove mystr
§Ú§â8§ï¦¨5¦n¹³´N¥i¥H¤F

¤£¹L¦³¤@­Ó¦a¤è©Ç©Çªº

´N¬OMATCHªº¨Ó·½¬O¨ÌUsetA,UserB¨Óªº

©Ò¥H¦pªGUserA,UserB¨S¦³ªº
MATCH¨ºÃ䥲¶·¾ãÄæ³£§R±¼

¤]´N¬O»¡
UserA,UserB¦³ªº,Match¤~»Ý­n¯dµÛ


¤j¤jªº»yªk¦n"·s"ªº·PıXDD

´X¥G³£¨S¬Ý¹L «¢«¢

§Ú±o¬ã¨s¬ã¨s¤F
¥Î¥\¨ì¥@¬É¥½¤é¨º¤@¤Ñ¡ã¡ã¡ã

TOP

¦^´_ 15# li_hsien
¬O³o¼Ëªº·N«ä¶Ü?
­YUSER¦³¹ï·Ó¨ìMATCH_A&B«h§ó·sMATCH_A&B
­YµL¹ï·Ó¨ìMATCH_A&BÀ³«h·s¼WUSER¸ê®Æ¦C¨ìMATCH_A&B
­YMATCH_A&B¸ê®Æ¥¼¥X²{¦bUSER«h«O¯d
  1. Sub ex()

  2.     Dim A As Range, Sh As Worksheet
  3.     Set d = CreateObject("Scripting.Dictionary")
  4.     For Each Sh In Sheets(Array("User A", "User B"))
  5.     With Sh
  6.        For Each A In .Range(.[C2], .[C2].End(xlDown))
  7.           Debug.Print A
  8.           d(A & A.Offset(, 1) & A.Offset(, 2)) = Array(A.Value, Sh.Name, A.Offset(, 1).Value, A.Offset(, -1).Value, A.Offset(, 2).Value, A.Offset(, 3).Value, "", A.Offset(, 4).Value)
  9.        Next
  10.     End With
  11.     Next
  12.     With Sheets("Match A & B")
  13.       For Each A In .Range(.[A2], .[A2].End(xlDown))
  14.          mystr = A & A.Offset(, 2) & A.Offset(, 4)
  15.          If d.exists(mystr) Then A.Resize(, 8) = d(mystr): d.Remove mystr
  16.       Next
  17.       For Each ky In d.keys
  18.         .Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0).Resize(, 8) = d(ky)
  19.       Next
  20.    End With
  21. End Sub
½Æ»s¥N½X
¾Ç®üµL²P_¤£®¢¤U°Ý

TOP

¦^´_ 1# li_hsien

«D±`·PÁÂÁ Hsieh ªºµ{¦¡»P»¡©ú,
Á`ºâ¹ï Scripting.Dictionary,Transpose ¦³ªì¨Bªº·§©À,
ÁÂÁÂ!!
to Hi-Hsieh:¦]¬°§Ú¬O¤p¾Ç¥Í, µLÅv¤U¸üÀÉ®×,
¥i§_±N§AªºÀÉ®× mail µ¹§Ú, ¦]§Ú«Ü·Q¬ã¨s³o­Óµ{¦¡, µ{¦¡¤Ó¯«©_¤F
[email protected]

TOP

¦^´_ 14# Hsieh

«¬¸¹&Ãþ§O&ID¬°¥D­n§PÂ_·Ç«h

UserA , UserBªºÄæ¦ì³£¤@¼Ë

±N¨â­Ó¤u§@ªí§ì¨ìmatchA&B

ÂÅ©³¬°matchA&B¤~·|¶ñªºÄæ¦ì


UserA,UserB§ì¹L¥hªº®É­Ô

¥²¶·¹ïÀ³Äæ¦ì
¦pªGUserA¨S¦³ªº¡A¦ýmatchA&B¦³ªºÄæ¦ì(EX:¨Ï¥ÎªÌ)«h¯dªÅ

¦]¬°©MmatchA&BÄæ¦ì¤£¤@¼Ë
©Ò¥H¤£ª¾¸Ó¦p¦ó¥Î­ì¥ýªº¤è¦¡¹ïÀ³


ªþÀɸ̪ºmatchA&B¬°¸Ó²£¥Xªºµ²ªG

³Â·ÐÀ°§Ú¬Ý¬Ý ÁÂÁ : )

match0117.zip (20.53 KB)
¥Î¥\¨ì¥@¬É¥½¤é¨º¤@¤Ñ¡ã¡ã¡ã

TOP

¦^´_ 13# li_hsien


    ¤£À´¤°»òA,B¤@¼ËA&B¤£¤@¼Ë
§â¸ê®Æ¤W¶Ç»¡©ú¬Ý¬Ý
¾Ç®üµL²P_¤£®¢¤U°Ý

TOP

¦^´_ 12# Hsieh

ªO¤j ¦pªG§ÚÄæ¦ì¨S¦³¤@­P
(A,B¤@¼Ë¦ý©MA&Bªº¤£¤@¼Ë)

·|Åܰʨº¸Ó¦p¦óªí¥Ü©O???

¦]¬°¥ÎTransposeÀ³¸Ó¬O¾ãÄæ¾ã¦C§a
¥Î¥\¨ì¥@¬É¥½¤é¨º¤@¤Ñ¡ã¡ã¡ã

TOP

  1. Sub ex()
  2. Dim A As Range, Sh As Worksheet
  3. Set d = CreateObject("Scripting.Dictionary")
  4. For Each Sh In Sheets(Array("User A", "User B", "Match A & B"))
  5. With Sh
  6.    For Each A In .Range(.[D1], .[D1].End(xlDown))
  7.       mystr = A.Offset(, -3) & A.Offset(, -2) & A
  8.       d(mystr) = Application.Transpose(Application.Transpose(A.Offset(, -3).Resize(, 6).Value))
  9.    Next
  10. End With
  11. Next
  12. Sheets("Match A & B").[A1].Resize(d.Count, 6) = Application.Transpose(Application.Transpose(d.items))
  13. End Sub
½Æ»s¥N½X
¦^´_ 11# li_hsien
¾Ç®üµL²P_¤£®¢¤U°Ý

TOP

        ÀR«ä¦Û¦b : ¡i°µ¤Hªº¶}©l¡j¨C¤@¤Ñ³£¬O¬G¤Hªº¶}©l¡A¨C¤@­Ó®É¨è³£¬O¦Û¤vªºÄµ±§¡C
ªð¦^¦Cªí ¤W¤@¥DÃD