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

[µo°Ý] [µo°Ý]EXCEL ¸ê®Æ¬d´M¦^¶Ç°ÝÃD

¸Õ¸ÕVBA:
  1. Option Explicit
  2. '°ÆVBA
  3. '±N¦Uªíªº«~¶µ½s¸¹¥þ³¡¶×¤JÁ`ªíªºÄæB(¥Î¤£­«Âпz¿ï)
  4. Sub ¨ú±o¥þ³¡«~¶µ½s¸¹()
  5.     Dim sh2 As Worksheet
  6.     Dim i, shCnt, LastRow1, LastRow2 As Integer
  7.     Set sh2 = Sheets("Á`ªí")
  8.     Dim Rng1, Rng2 As Range
  9.     '²M°£¤u§@°Ï
  10.     sh2.[A3:IU65536].ClearContents
  11.     shCnt = ThisWorkbook.Sheets.Count
  12.    
  13.     '±N«~¶µ½s¸¹¥þ³¡¶×¤JÁ`ªíªºÄæIU
  14.     For i = 1 To shCnt
  15.         If Sheets(i).Name <> sh2.Name Then
  16.             LastRow1 = Sheets(i).[B65536].End(xlUp).Row
  17.             LastRow2 = sh2.[IU65536].End(xlUp).Row + 1
  18.             Sheets(i).[B3].Resize(LastRow1 - 2, 1).Copy sh2.Cells(LastRow2, 255)
  19.         End If
  20.     Next
  21.     '¨Ã±NÁ`ªíªºÄæIUªº«~¶µ½s¸¹,¥Î¤£­«Âпz¿ï¨ìÁ`ªíªºÄæA
  22.     sh2.[IU2:IU65536].AdvancedFilter Action:=xlFilterCopy, _
  23.         CopyToRange:=sh2.[A2], Unique:=True
  24.     '²M°£¼È¦s°Ï
  25.     sh2.[IU3:IU65536].ClearContents
  26. End Sub
  27. '¥DVBA
  28. Private Sub «Ø¥ßÁ`ªí_Click()
  29.     Dim sh2 As Worksheet
  30.     Dim i, j, shCnt, LastRow1, Row2, LastCol2 As Integer
  31.     Dim FindStr As String
  32.     Dim Rng1, FindRng As Range
  33.     Set sh2 = Sheets("Á`ªí")
  34.     sh2.Activate
  35.     shCnt = ThisWorkbook.Sheets.Count
  36.     ¨ú±o¥þ³¡«~¶µ½s¸¹
  37.     For i = 1 To shCnt
  38.         If Sheets(i).Name <> sh2.Name Then
  39.             LastRow1 = Sheets(i).[B65536].End(xlUp).Row
  40.             For j = 3 To LastRow1
  41.                 Set Rng1 = Sheets(i).Cells(j, 2)
  42.                 'sh2.[A:A]¬O±ý·j´M½d, ­Y·j´M¨ì FindStr «h¦s¤J FindRng, §_«h FindRng=Nothing
  43.                 FindStr = Rng1
  44.                 Set FindRng = sh2.Range("A:A").Find(FindStr, lookat:=1)
  45.                 If Not FindRng Is Nothing Then
  46.                    LastCol2 = sh2.Cells(FindRng.Row, 255).End(xlToLeft).Column + 1
  47.                    FindRng.Offset(0, LastCol2 - 1) = Sheets(i).Cells(j, 12)   '¥Í²£¤é´Á
  48.                    FindRng.Offset(0, LastCol2) = Sheets(i).Cells(j, 13)       '¦³®Ä¤é´Á
  49.                 End If
  50.             Next
  51.         End If
  52.     Next
  53.     sh2.[A2].Select
  54. End Sub
½Æ»s¥N½X
Á`ªí.gif

TOP

        ÀR«ä¦Û¦b : ­×¦æ­nô½t­×¤ß¡AÂǨƽm¤ß¡AÀH³B¾i¤ß¡C
ªð¦^¦Cªí ¤W¤@¥DÃD