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

½s¦C§Ç¸¹°ÝÃD

½s¦C§Ç¸¹°ÝÃD

¦p¦óÅý½s¸¹¦Û°Ê²£¥Í
¸ß¨D¦U¦ì¤j¤jÀ°¦£

§Ç¸¹°ÝÃD.rar (22.24 KB)

¦p¦óÅý½s¸¹¦Û°Ê²£¥Í
¸ß¨D¦U¦ì¤j¤jÀ°¦£
sheau-lan µoªí©ó 2015-6-11 08:44

§Aªº½d¨ÒÀɦ³¨Ç¦a¤èÅÞ¿è©Ê¤£¤@­P,
³o¸Ì¥u¯à¥ý¨Ì§Ú²z¸Ñªº³W«h¨Ó¸Õ°µ.

1.¨C­Ó Range ¶¡©T©w¥u¯d 4 ªº­¿¼ÆªºªÅ¥Õ¦C,
¶W¹L¥B¥¼¹F 4 ªº­¿¼ÆªºªÅ¥Õ¦CµL±ø¥ó§R°£,
¨C¦h 4 ­ÓªÅ¥Õ¦C ³W®æªº§Ç¸¹¥[ 1

2.¥u¦Ò¼{Åܧó «~¸¹ ©Ò¦b¦C¦Û°Ê½s¸¹ ³W®æ-­^¤å¦r,
¹ï©ó¨ä¤U¸ê®Æ¨Ã¥¼°µ­«·s½s¸¹ªº³B²z.
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. On Error GoTo 99
  3. Dim TG As Range
  4. With Target
  5. If .Row >= 3 And .Column = 1 Then
  6.      If .Value = "" Then
  7. 98:      .Offset(0, 2) = ""
  8.          .Offset(0, 3) = ""
  9.          .Offset(0, 5) = ""
  10.          .Offset(0, 6) = ""
  11.   
  12.   Else: Set TG = Sheet7.[H3:H9999].Find("*" & .Value & "*", , , xlWhole)
  13.              If TG Is Nothing Then GoTo 98
  14.                 .Offset(0, 2) = TG.Offset(0, -6).Value
  15.                TG2 = .Offset(0, 2).Value
  16.                 .Offset(0, 3) = TG.Offset(0, -3).Value
  17.                 .Offset(0, 9) = TG.Offset(0, -2).Value
  18.                 .Offset(0, 5) = Application.VLookup(TG2, Sheet15.[A4:H9999], 8, False)
  19.                      If IsError(.Offset(0, 5).Value) Then .Offset(0, 5) = ""
  20.                 .Offset(0, 6) = TG.Offset(0, 1).Value
  21.                 Dim N%, N1%, S1$, C%, S2$
  22.                 N = 0
  23.                 Set TG = .Offset(-1, 7)
  24.                 While TG = ""
  25.                   Set TG = TG.Offset(-1)
  26.                   N = N + 1
  27.                 Wend
  28.                
  29.                 N1 = Mid(TG, 2, Len(TG) - 3)
  30.                 S1 = Right(TG, 1)
  31.                
  32.                 C = 0
  33.                 S2 = TG
  34.                 While TG = S2
  35.                   Set TG = TG.Offset(-1)
  36.                   C = C + 1
  37.                 Wend
  38.                
  39.                 If N > 3 Then
  40.                   N1 = N1 + Int((N - 3) / 4) + 1
  41.                   S1 = "A"
  42.                   With Range(.Offset(0), .Offset(, 9)).Borders(xlEdgeTop)
  43.                     .LineStyle = xlContinuous
  44.                     .ColorIndex = 37
  45.                     .Weight = xlHairline
  46.                   End With
  47.                   N = N - (Int(N / 4) * 4)
  48.                 Else
  49.                   If C > 3 Then S1 = Chr(Asc(S1) + 1)
  50.                 End If
  51. Application.EnableEvents = False
  52.                 .Offset(, 7) = "M" & N1 & "-" & S1
  53.                 If N > 0 And N < 4 Then
  54.                   Range(Rows(.Row - 1), Rows(.Row - N)).Delete
  55.                   .Offset(1).Select
  56.                 End If
  57. Application.EnableEvents = True
  58.              End If
  59.   End If
  60. End With
  61. 99
  62. End Sub
½Æ»s¥N½X

TOP

luhpro ¤j¤j..´N¬O³o¼Ë....ÁÂÁ§A¼Ú..·P¿E¤£ºÉ...

TOP

luhpro¤j,¤W¦¸¬O§AÀ°§Ú¸Ñªº,³o¦¸½s½X¦³¤@¨Ç¤£¤@¼Ë,¦ý¤j¦P¤p²§
¥i§_½Ð¦AÀ°¦£

¦Û°Ê½s½X.rar (11.2 KB)

TOP

        ÀR«ä¦Û¦b : ¤@­Ó¯Ê¤fªºªM¤l¡A¦pªG´«¤@­Ó¨¤«×¬Ý¥¦¡A¥¦¤´µM¬O¶êªº¡C
ªð¦^¦Cªí ¤W¤@¥DÃD