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

[µo°Ý] ½Ð°Ý¦p¦ó¦Û°Ê¦C¥X¸ê®Æ®w¸ê®Æ

[µo°Ý] ½Ð°Ý¦p¦ó¦Û°Ê¦C¥X¸ê®Æ®w¸ê®Æ

¥»©«³Ì«á¥Ñ urlsyu ©ó 2020-2-10 14:00 ½s¿è

½Ð°Ý¤j¤j¡A°²³]§Ú¦³¸ê®Æ®w¦p¤U
·Q­n±N¨äÂà¸m¦¨³øªí¤º®æ¦¡«áA4¦L¥X¡A¤è«K²{³õ¤H­û®Ö¹ï¶i¥X³f
¨Ò¦p§Ú·Q½Õ¥X¬Y§å¸¹ªº³W®æ0~6

³o»Ý­n¦p¦ó»s§@¡HÁÂÁÂ

¬¡­¶Ã¯1.zip (24.06 KB)

ÁÂÁ½׾Â,ÁÂÁ¦U¦ì«e½ú
«á¾ÇÂǦ¹©«¥H1#½d¨Ò½m²ß°}¦C»P¦r¨å,¾Ç²ß¤è®×¦p¤U,½Ð¦U¦ì«e½ú«ü±Ð
¸ê®Æªí:


µ²ªGªí:



Option Explicit
Sub TEST()
Dim Brr, Crr(10, 11), Z, A, i&, R&, C%, T$, T3$, T4$, xR
'¡ô«Å§iÅܼÆ
'Application.ScreenUpdating = False
Set Z = CreateObject("Scripting.Dictionary")
'¡ô¥OZÅܼƬO ¦r¨å
Brr = Range([¸ê®Æ®w!E2], [¸ê®Æ®w!A65536].End(3))
'¡ô¥OBrrÅܼƬO±a¤J½d³òÀx¦s®æ­Èªº¤Gºû°}¦C
For i = 1 To UBound(Brr)
'¡ô³]¶¶°j°é!i±q1¨ìBrr°}¦CÁa¦V³Ì¤j¯Á¤Þ¦C¸¹
   T3 = Trim(Brr(i, 3)): T4 = Trim(Brr(i, 4))
   '¡ô¥OT3ÅܼƬOi°j°é¦C²Ä3ÄæBrr°}¦C­È,¥OT4ÅܼƬOi°j°é¦C²Ä4ÄæBrr°}¦C­È
   If T3 = "" Or T4 = "" Then GoTo i01 Else T = T3 & "|" & T4
   '¡ô¦pªG³W®æ©Î§å¸¹¬OªÅªº!´N¸õ¨ì¼Ð¥Ü i01¦ì¸mÄ~Äò°õ¦æ,
   '§_«h´N¥OTÅܼƬO¥H"|"²Å¸¹³s±µT3»PT4ÅܼƲզ¨ªº·s¦r¦ê

   A = Z(T): R = Z(T & "/r"): C = Z(T & "/c")
   '¡ô¥OAÅܼƬO¥HTÅܼƬdZ¦r¨å¦^¶Çitem­È,
   '¥ORÅܼƬO¥HTÅܼƳs±µ"/r"²Õ¦¨ªº·s¦r¦ê,¬dZ¦r¨å¦^¶Çitem­È
   '¥OCÅܼƬO¥HTÅܼƳs±µ"/c"²Õ¦¨ªº·s¦r¦ê,¬dZ¦r¨å¦^¶Çitem­È

   If Not IsArray(A) Then A = Crr: A(0, 0) = "§å¸¹": A(0, 1) = T3: R = 1: Z(T & "/³W®æ") = "³W®æ" & T4
   '¡ô¦pªGAÅܼƤ£¬O°}¦C!´N¥OAÅܼƬOCrrªÅ°}¦C,¥O³Ì¥ª¤W¨¤°}¦C­È¬O "§å¸¹"¦r¦ê,
   '¥O0¦C/1Äæ°}¦C­È¬OT3ÅܼÆ(§å¸¹),¥ORÅܼƬO 1
   '¥OTÅܼƳs±µ "/³W®æ"²Õ¦¨ªº·s¦r¦ê¬°key,item¬O "³W®æ"¦r¦ê³s±µT4ÅܼƲզ¨ªº·s¦r¦ê,¯Ç¤JZ¦r¨å¤¤

   C = C + 1
   '¡ô¥OCÅܼƲ֥[ 1
   If C = 11 Then C = 1: R = R + 1
   '¡ô¦pªGCÅܼƬO 11,´N¥OC=1,R+1 (°}¦C´«¦æ©ñµ²ªG­È)
   A(R, C) = Val(Brr(i, 5))
   '¡ô¥O­«¶q­È©ñ¤J°}¦C¸Ì
   Z(T & "/r") = R: Z(T & "/c") = C: Z(T) = A
   '¡ô¥O¦C¼Æ»PÄæ¼Æ¬ö¿ý¦b¦r¨å¤¤
   '¥OA¤Gºû°}¦C©ñ¦^¦r¨å¤¤

i01: Next
Sheets("³øªí").UsedRange.EntireRow.Delete
'¡ô¥Oªºµ²ªG§R°£
Set xR = [³øªí!A1]
'¡ô¥OxRÅܼƬOª«¥ó ("³øªí"¤u§@ªíªº[A1]Àx¦s®æ)
For Each A In Z.KEYS
'¡ô³]³v¶µ°j°é!¥OAÅܼƬO Z¦r¨å¸Ìªºkey¤§¤@
   If InStr(A, "/") Then GoTo A01 Else R = Z(A & "/r")
   '¡ô¦pªGAÅܼƸ̦³¥]§t"/"¦r¤¸!´N¸õ¨ì¼Ð¥ÜA01¦ì¸mÄ~Äò°õ¦æ,§_«h´N¥ORÅܼƨú¥X¬ö¿ý¦bZ¦r¨åªº¦C¼Æ
   With xR.Resize(R + 3, 12)
   '¡ô¥H¤U¬OÃö©óµ²ªG½d³òÀx¦s®æªºµ{§Ç
      .Value = Z(A)
      '¡ô¥O¸Ó½d³òÀx¦s®æ­È,¥HAÅܼƬdZ¦r¨å¦^¶Çªº°}¦C­È¼g¤J
      .Cells(R + 3, 1) = Z(A & "/³W®æ"): .Cells(R + 3, 2) = "¼Æ¶q": .Cells(R + 3, 4) = "¤p­p:"
      '¡ô¥O¸Ó½d³òÀx¦s®æ³Ì«á¦C1,2,4ÄæÀx¦s®æ¼g¤J¦r¦ê
      .Cells(R + 3, 3) = "=COUNT(" & xR.Resize(R, 12).Offset(1).Address & ")"
      '¡ô¥O¸Ó½d³òÀx¦s®æ³Ì«á¦C²Ä3ÄæÀx¦s®æ¼g¤J «DªÅ®æªºÀx¦s®æ¼Æ¤½¦¡=COUNT()
      .Cells(R + 3, 5) = "=SUM(" & xR.Resize(R, 12).Offset(1).Address & ")"
      '¡ô¥O¸Ó½d³òÀx¦s®æ³Ì«á¦C²Ä5ÄæÀx¦s®æ¼g¤J Àx¦s®æ¼Æ­ÈÁ`©M¤½¦¡=SUM()
      For i = 7 To 10: .Borders(i).Weight = 4: Next
      '¡ô¥O¸ÓÀx¦s®æ½d³ò³Ì¥~³ò³]¬°²Ê®æ½u
   End With
   Set xR = xR(R + 4, 1)
   '¡ô¥OxRÅܼƬO¤U­Óµ²ªG½d³òªº²Ä1®æÀx¦s®æ
A01: Next
End Sub
¥Î¦æ°Ê¸Ë¸mÂsÄý½×¾Â¾Ç²ß«Ü¤è«K,ÁÂÁ½׾¸gÀç¹Î¶¤
½Ð¤j®a¤@°_¤W½×¾Â¨Ó¥æ¬y

TOP

(»²§U ¨ú§å¸¹¤£­«½Æ) ¸ê®Æ®wF1 ¤U©Ô{=INDEX(B:B,MIN(IF((COUNTIF(F$1:F1,B$2:B$999)=0)*(B$2:B$999<>""),ROW($2:$999),4^8)))&""

®w¦sA3 ¤U©Ô {=IFERROR(INDEX(¸ê®Æ®w!F:F,SMALL(IF(SUMIF(¸ê®Æ®w!B:B,¸ê®Æ®w!F$2:F$99,¸ê®Æ®w!$D:$D)-SUMIF(¥X³f!$C:$C,¸ê®Æ®w!F$2:F$99,¥X³f!$E:$E),ROW($2:$99)),ROW(A1))),"")
google"EXCEL°g"  blog  ©Îgoogleºô§}:https://hcm19522.blogspot.com/

TOP

¦^´_ 12# hcm19522

¤j¤j¦w¦w~
­è­è¸Õ¹L¡A¤£¯à¥¿½TÅã¥Ü
¬¡­¶Ã¯1.zip (33.9 KB)


¤j¤j·P®¦~

TOP

¥»©«³Ì«á¥Ñ hcm19522 ©ó 2020-2-17 09:44 ½s¿è

¦^´_ 11# urlsyu

=IFERROR("A"&TEXT(SMALL(IF(SUMIF(¸ê®Æ®w!B:B,"A"&TEXT(ROW($1:$99)-1,"0000"),¸ê®Æ®w!$D:$D)-SUMIF(¥X³f!$C:$C,"A"&TEXT(ROW($1:$99)-1,"0000"),¥X³f!$E:$E),ROW($1:$99)-1),ROW(A1)),"0000"),"")
google"EXCEL°g"  blog  ©Îgoogleºô§}:https://hcm19522.blogspot.com/

TOP

¦^´_ 10# hcm19522

¤j¤j§A¦n
®w¦sA3 ¤U©Ô{=IFERROR("A000"&SMALL(IF(SUMIF(¸ê®Æ®w!B:B,"A000"&ROW($1:$9)-1,¸ê®Æ®w!$D:$D)-SUMIF(¥X³f!$C:$C,"A000"&ROW($1:$9)-1,¥X³f!$E:$E),ROW($1:$9)-1),ROW(A1)),"")
³o¥y¼gªk¦³­Ó°ÝÃD¡A¸U¤@§Úªº½s¸¹¶W¹L¤Qµ§(¦p¡GA0011)´NµLªk¨Ï¥Î

ÁÂÁ§A

TOP

¦^´_ 9# urlsyu


®w¦sA3 ¤U©Ô{=IFERROR("A000"&SMALL(IF(SUMIF(¸ê®Æ®w!B:B,"A000"&ROW($1:$9)-1,¸ê®Æ®w!$D:$D)-SUMIF(¥X³f!$C:$C,"A000"&ROW($1:$9)-1,¥X³f!$E:$E),ROW($1:$9)-1),ROW(A1)),"")

®w¦sB3 ¥k©Ô ¤U©Ô=IF($A3="","",SUMIFS(¸ê®Æ®w!$D:$D,¸ê®Æ®w!$B:$B,$A3,¸ê®Æ®w!$C:$C,B$2)-SUMIFS(¥X³f!$E:$E,¥X³f!$C:$C,$A3,¥X³f!$D:$D,B$2))
google"EXCEL°g"  blog  ©Îgoogleºô§}:https://hcm19522.blogspot.com/

TOP

¦^´_ 8# hcm19522

¦A¦¸·PÁ¤j¤j
³Ì«á·Q±N®w¦s¥u¦C¥X©|¦³®w¦s§å¸¹¦pÀɮשҦC¡A¬ã¨s¦n´X¤Ñ¼g¤£¥X¨Ó:dizzy:
¬¡­¶Ã¯1.zip (33.69 KB)

·P®¦·P®¦

TOP

¦^´_ 7# urlsyu


    ®w¦s C3:I4=SUMIFS(¸ê®Æ®w!$E:$E,¸ê®Æ®w!$C:$C,$B3,¸ê®Æ®w!$D:$D,C$2)-SUMIFS(¥X³f!$E:$E,¥X³f!$C:$C,$B3,¥X³f!$D:$D,C$2)
google"EXCEL°g"  blog  ©Îgoogleºô§}:https://hcm19522.blogspot.com/

TOP

¦^´_ 6# hcm19522

½Ð°Ý¤j¤j
¥[¤J¥X³f¸ê®Æ«á¡A·Q»s§@®w¦s¸ê®Æ¡A­n¦p¦ó§PÂ_³W®æÄæ¡H

·P®¦~
¬¡­¶Ã¯1.zip (32.91 KB)

TOP

        ÀR«ä¦Û¦b : ·O´d¨S¦³¼Ä¤H¡A´¼¼z¤£°_·Ð´o¡C
ªð¦^¦Cªí ¤W¤@¥DÃD