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

[µo°Ý] Ãö©ó¶i¾P¦sªº¥­§¡®w¦s¦¨¥»¸Ó¦p¦ó­pºâ?

[µo°Ý] Ãö©ó¶i¾P¦sªº¥­§¡®w¦s¦¨¥»¸Ó¦p¦ó­pºâ?

½Ð±Ð¦U¦ì¥ý¶i¡G

°²³]A¡BB¡BC¤T­Ó¤u§@ªí¤À§O¬OA¶i³f¡AB¾P³f¡AC®w¦s¡÷(¦pªþ¥ó TEST2.rar (9.38 KB) )

CªíªºDÄ欰¦¨¥»Äæ

±ý­pºâAªí¦]¤£¦P®É¶¡¶i³f©Ò²£¥Í¤£¦P¦¨¥»ªº§¡»ù

¦ý¥²¶·±Æ°£Bªí¤w¾P³fªº³¡¤À

Ä´¦p¡÷Aªí¸Ì²Î­p1¤ë¥÷IPHONE6¦@¶i³f38¥x

¦ý¦b¦P¤ë¥÷½æ¤F15¥x³Ñ23¥x

¤w½æ±¼ªº17¥x¬O¦b1¤ë16¤é¤§«e¶iªº¦¨¥»

©Ò¥HÀx¦s®æ­pºâÀ³¸¨¦b1¤ë17¤é¤§«á¨ì1¤ë31¤é

¦Ó¤£¥h²Ö­p1¤ë4¤é¨ì1¤ë16©Ò¶iªº³æ»ù

º¸«áBªí¦³¦A¾P³f¤]·|¦Û°Ê¦A¦©°£¸û¤é´Áªº¦¨¥»

¸Ó¤½¦¡©Î»yªkÀ³¦p¦ó¼¶¼g?

ÁÂÁÂ~

¦^´_ 1# united7878
¸Õ¸Õ¬Ý
  1. Option Explicit
  2. Sub Ex()
  3.     Dim Rng As Range, Quantity(1 To 2) As Integer, Total(1 To 2) As Double
  4.     Set Rng = Sheets("C").[B2]
  5.     Do While Rng <> ""
  6.          With Sheets("A")
  7.             .Range("a1").AutoFilter Field:=2, Criteria1:=Rng
  8.             Quantity(1) = Application.Sum(.Range("d:d").SpecialCells(xlCellTypeVisible))
  9.             Total(1) = Application.Sum(.Range("E:E").SpecialCells(xlCellTypeVisible))
  10.         End With
  11.         With Sheets("B")
  12.             .Range("a1").AutoFilter Field:=2, Criteria1:=Rng
  13.             Quantity(2) = Application.Sum(.Range("d:d").SpecialCells(xlCellTypeVisible))
  14.             Total(2) = Application.Sum(.Range("E:E").SpecialCells(xlCellTypeVisible))
  15.         End With
  16.         With Rng
  17.             .Cells(1, 2) = Round(Quantity(1) - Quantity(2))
  18.             .Cells(1, 3) = Round((Total(1) - Total(2)) / .Cells(1, 2))
  19.         End With
  20.         Set Rng = Rng.Offset(1)
  21.     Loop
  22. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¦^´_ 2# GBKEE
ÁÂÁÂG¤j~

¦ý¤Ï½Æ¹ê´ú«áµo²{­pºâµ²ªG¤ñ¤â°ÊºâªºÁÙ§C

§¡»ù§C©ó³Ì§C¶i»ù?!

¸Ó¦p¦ó­×¥¿©O?

·P®¦!!

TOP

¦^´_ 3# united7878
¸Õ¸Õ¬Ý
  1. Option Explicit
  2. Sub Ex()
  3.     Dim Rng As Range, Quantity(1 To 2) As Integer, Total(1 To 2) As Double
  4.     Dim Sh As Worksheet, i(1 To 2) As Integer
  5.     Set Rng = Sheets("C").[B2]
  6.     Set Sh = Sheets.Add    '·s¼W¤u§@ªí
  7.     Do While Rng <> ""
  8.          With Sheets("A")
  9.             .Range("a1").AutoFilter Field:=2, Criteria1:=Rng
  10.             Quantity(1) = Application.Sum(.Range("d:d").SpecialCells(xlCellTypeVisible))
  11.             Total(1) = Application.Sum(.Range("E:E").SpecialCells(xlCellTypeVisible))
  12.         End With
  13.         With Sheets("B")
  14.             .Range("a1").AutoFilter Field:=2, Criteria1:=Rng
  15.             Quantity(2) = Application.Sum(.Range("d:d").SpecialCells(xlCellTypeVisible))
  16.             Total(2) = Application.Sum(.Range("E:E").SpecialCells(xlCellTypeVisible))
  17.         End With
  18.         With Rng
  19.             .Cells(1, 2) = Quantity(1) - Quantity(2)             '®w¦s¼Æ¶q
  20.             If .Cells(1, 2) > 0 Then '¦³®w¦s¼Æ¶q
  21.                 If Total(2) > 0 Then  '¾P³f¼Æ¶q
  22.                     Total(2) = 0
  23.                     i(1) = .Cells(1, 2)
  24.                     With Sh
  25.                         .UsedRange.Clear
  26.                         Sheets("A").UsedRange.Copy .[A1]     '½Æ»s: Aªí¦Û°Ê¿z¿ï«áªº¼Æ­È
  27.                         i(2) = .UsedRange.Rows.Count         '¸ê®Æªº³Ì«á¤@¦C
  28.                         Do While i(1) > 0        '®w¦s¼Æ¤j©ó 0
  29.                             Do While .Cells(i(2), "D") > 0 And i(1) > 0
  30.                                 Total(2) = Total(2) + .Cells(i(2), "c")
  31.                                 i(1) = i(1) - 1   '®w¦s¼Æ - 1
  32.                                 .Cells(i(2), "D") = .Cells(i(2), "D") - 1 '¶i³f¼Æ¶q -1
  33.                             Loop
  34.                             i(2) = i(2) - 1 '¸ê®Æ¦C ¤W²¾ ¤@¦C
  35.                         Loop
  36.                     End With
  37.                 .Cells(1, 3) = Round(Total(2) / .Cells(1, 2), 1)
  38.                 Else  ' ¾P³f¼Æ¶q¬°0
  39.                     .Cells(1, 3) = Round((Total(1) - Total(2)) / .Cells(1, 2), 1)
  40.                 End If
  41.             Else   '¨S¦³®w¦s¼Æ¶q
  42.                 .Cells(1, 3) = 0
  43.             End If
  44.         End With
  45.         Set Rng = Rng.Offset(1)
  46.     Loop
  47.     Application.DisplayAlerts = False
  48.     Sh.Delete    '§R°£:·s¼Wªº¤u§@ªí
  49.     Application.DisplayAlerts = True
  50. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¦^´_ 4# GBKEE

G¤j¯u¯«¤H¤]~
¤§«e¥Î°}¦C¤½¦¡¡A«ç»òºâ³£¦³»~®t¡AVB¤S¤£¤Ó¼ô¡A
§éÄ˦h®É²×©ó¨D±o¥­§¡¦¨¥»ªº²Î­p¤è¦¡
¦ý³o»yªk¤Ó¦h¼h¤F¡A¦b¤U¸ê½è¾q¶w¡AÁÙ¦b§V¤O°Ñ®©¤¤...

·PÁ½ç±Ð!!!

TOP

¦A«×½Ð±ÐG¤j
§e¤W­±½d¨Ò¡A¦pªG­n¤Àªí¿é¤J®É¸Ó«ç»ò§ó´«¸ô®|?
¨Ò¦pAÅܦ¨[A.Xlsx'Sheet1]¡BBÅܦ¨[B.Xlsx'Sheet1]¡BCÅܦ¨[C.Xlsx'Sheet1]
¥¨¶°¼Ò²Õ©ñ¦b[C.Xlsx]

ÁÂÁ¡I

TOP

        ÀR«ä¦Û¦b : ¤H¥Í³Ì¤jªº¦¨´N¬O±q¥¢±Ñ¤¤¯¸°_¨Ó¡C
ªð¦^¦Cªí ¤W¤@¥DÃD