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

[µo°Ý] ¿z¿ï§¹«á¡A¤À§O©ñ¸m¤£¦P¤u§@ªí

[µo°Ý] ¿z¿ï§¹«á¡A¤À§O©ñ¸m¤£¦P¤u§@ªí

Dear ¤j¤j­Ì¡G
¤p°ÝÃD
1.·Q¥Hclass§@¬°¿z¿ï¡A©ñ¸m¤£¦Psheet
2.¨Ã¥H¿z¿ïªºclass°µsheet©R¦W
VBA·s¤â¡A¦b·Ð½Ð«ü¾É

µo°Ý.rar (13.56 KB)

¥»©«³Ì«á¥Ñ GBKEE ©ó 2014-12-1 10:51 ½s¿è

¦^´_ 1# jj369963
  1. Option Explicit

  2. Sub Ex_¦r¨åª«¥ó()
  3.     Dim d As Object, i As Integer, k As Variant, Sh As Worksheet
  4.     Set d = CreateObject("scripting.dictionary") '¦r¨åª«¥ó
  5.     i = 2
  6.     With Sheet1
  7.         Do While .Cells(i, "c") <> ""
  8.             d(.Cells(i, "c") & "") = ""  '¦r¨åª«¥óªº key : classÄ檺­È
  9.             i = i + 1
  10.         Loop
  11.         For Each k In d   '¦r¨åª«¥óªº key
  12.             .Range("a1").AutoFilter 3, k  '¦Û°Ê¿z¿ï ²Ä3Ä檺·Ç«h¬° k
  13.             On Error Resume Next
  14.             Set Sh = Sheets(k)        'k¤u§@ªí¤£¦s¦b·|¦³¿ù»~
  15.             If Err <> 0 Then
  16.                 Set Sh = Sheets.Add(, Sheets(1))
  17.                 Sh.Name = k
  18.                 Err.Clear
  19.                 On Error GoTo 0
  20.             End If
  21.             Sh.UsedRange.Clear
  22.            .UsedRange.Copy Sh.Range("A1")
  23.         Next
  24.         .Activate
  25.         .Range("a1").AutoFilter
  26.     End With
  27. End Sub
  28. Sub Ex_¶i¶¥¿z¿ï()
  29.     Dim Rng  As Range, Sh As Worksheet
  30.     With Sheet1
  31.         '¶i¶¥¿z¿ï¥XclassÄ椣­«½Æªº­È
  32.         .Range("C:C").AdvancedFilter xlFilterCopy, , Cells(1, .Columns.Count), True
  33.         
  34.         Set Rng = Cells(2, .Columns.Count)
  35.         Do While Rng <> ""
  36.             .Range("a1").AutoFilter 3, Rng  '¦Û°Ê¿z¿ï ²Ä3Ä檺·Ç«h¬° Rng
  37.             On Error Resume Next
  38.             Set Sh = Sheets(Rng.Text)        'Rng.Text ¤u§@ªí¤£¦s¦b·|¦³¿ù»~
  39.             If Err <> 0 Then
  40.                 Set Sh = Sheets.Add(, Sheets(1))
  41.                 Sh.Name = Rng.Text
  42.                 Err.Clear
  43.                 On Error GoTo 0
  44.             End If
  45.             Sh.UsedRange.Clear
  46.            .UsedRange.Copy Sh.Range("A1")
  47.             Set Rng = Rng.Offset(1)
  48.         Loop
  49.         .Activate
  50.         .Range("a1").AutoFilter
  51.         Rng.EntireColumn.Clear
  52.     End With
  53. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

        ÀR«ä¦Û¦b : ºw¤ô¦¨ªe¡C²É¦Ì¦¨ÅÚ¡A¤Å»´¤vÆF¡A¤Å¥Hµ½¤p¦Ó¤£¬°¡C
ªð¦^¦Cªí ¤W¤@¥DÃD