| ©«¤l4901 ¥DÃD44 ºëµØ24 ¿n¤À4916 ÂI¦W267  §@·~¨t²ÎWindows 7 ³nÅ骩¥»Office 20xx ¾\ŪÅv150 ©Ê§O¨k ¨Ó¦Û¥x¥_ µù¥U®É¶¡2010-4-30 ³Ì«áµn¿ý2025-10-31 
                
 | 
                
| ¦^´_ 11# sax868 ¬On§â"Updated Data"¹ïÀ³ªºÈ¼g¤J¨CÓ¤u§@ªíªº12¦C¥H¤U¤§AUÄæ¶Ü?
 ½Æ»s¥N½XSub Ex()
Dim Sh As Worksheet, Ar()
Set d = CreateObject("Scripting.Dictionary") '³Ð«Ø¦r¨åª«¥óÀx¦s"Updated Data"¹ïÀ³ªºÈ
For Each Sh In Sheets
With Sheets("Updated Data")
   For Each a In .Range(.[A2], .Cells(.Rows.Count, 1).End(xlUp))
     d(a & a.Offset(, 3) & a.Offset(, 12)) = a.Offset(, 49).Value '¥HA¡BD¡BM¬°¯Á¤Þ¦s¤JAXÄæ¦ìªºÈ
    Next
End With
With Sh
  If UBound(Filter(Array("Currency", "DATA", "Updated Data"), .Name, True)) < 0 Then '°£¤F³o¨Ç¤u§@ªí¥H¥~°õ¦æ
  ReDim Preserve Ar(57, x) 'ÂX¼W°}¦C
  If IsEmpty(Ar(0, 0)) Then '¡A¦pªG°}¦CÁÙ¨S«Ø¥ß¥ý¼g¤J¼ÐÃD¦C
     Ar(0, x) = .[B1].Value: Ar(1, x) = .[B2].Value: Ar(2, x) = .[D1].Value
     s = 3
     For Each a In .[A11:BB11].Value
        Ar(s, x) = a
        s = s + 1
     Next
     x = x + 1
   End If
   r = 12 '±q²Ä12¦C¥H¤U¶}©lŪ¤J¸ê®Æ¨ì°}¦C¤¤
   Do Until .Cells(r, 1) = "" 'ª½¨ìAÄæ¬°ªÅ¥Õ¬°¤î
      ReDim Preserve Ar(57, x)
         Ar(0, x) = .[C1].Value: Ar(1, x) = .[C2].Value: Ar(2, x) = .[E1].Value
         s = 3
         For Each a In .Range(.Cells(r, "A"), .Cells(r, "BB")).Value '±NA:BBÄæ¦ìŪ¤J°}¦C
            Ar(s, x) = a
            s = s + 1
         Next
         .Cells(r, "AU") = d(Ar(0, x) & Ar(3, x) & Ar(12, x)) '±N¤u§@ªíªºAUÄæ¦ì¼g¤J¹ïÀ³ªºUpdated DataÈ
         x = x + 1: r = r + 1 '¤U¤@¦C
   Loop
  
  End If
End With
Next
With Sheets.Add(after:=Sheets(Sheets.Count)) '·s¼W¤u§@ªí©ó³Ì«á
For i = 0 To UBound(Ar, 2)
   For j = 0 To 56
   .[A1].Offset(i, j) = Ar(j, i) '¤@¤@±N°}¦C¤¸¯À¼g¤JÀx¦s®æ
   Next
Next
End With
End Sub
 | 
 |