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

[µo°Ý] ¦p¦ó«Ø¥ß¥u¿ï¨ú''«DÁôÂÃÀx¦s®æ''ªº´`Àô»y¥y

¦^´_ 1# HSINLI
¥i­×§ï¦p¤U
  1.   For i = 2 To ¥æ.Range("d2").End(xlDown).Row
  2.             If ¥æ.Range("c" & i).RowHeight Then 'RowHeight > 0 'Àx¦s®æ¤£¬OÁôÂêº
  3.                 If ¥æ.Range("c" & i) = "Bought" Then
  4.                     po.Range("c" & ipo) = po.Range("c" & ipo) + ¥æ.Range("e" & i)
  5.                 ElseIf ¥æ.Range("c" & i) = "Sold" Then
  6.                     po.Range("c" & ipo) = po.Range("c" & ipo) - ¥æ.Range("e" & i)
  7.                 End If
  8.             End If
  9.         Next i
½Æ»s¥N½X
¤]¥i¦p¦¹
  1. Option Explicit
  2. Sub Ex()
  3.     Dim po As Worksheet, ¥æ As Worksheet
  4.     Dim ipo As Integer, Bought As Integer, Sold As Integer
  5.     Set po = Sheets("position")
  6.     Set ¥æ = Sheets("¥æ©ö¬ö¿ý")
  7.     Application.ScreenUpdating = False
  8.     po.Range("a5", po.[A5].End(xlDown)) = ""
  9.     'AdvancedFilter xlFilterCopy ¦b«ü©wªº¨ä¥L½d³òªºÄæ¦ì(µL¦r¦ê,½Æ»s¥þ³¡Äæ¦ì¡C¦³¦r¦ê,¶·¬°¸ê®Æ®wªºÄæ¦ì)
  10.     ¥æ.ListObjects("ªí®æ1").Range.Range("D:D").AdvancedFilter xlFilterCopy, , po.Range("a5"), True
  11.       
  12.     'AdvancedFilter(¶i¶¥¿z¿ï)  ,AutoFilter(¦Û°Ê¿z¿ï)
  13.     'AdvancedFilter Action:= xlFilterInPlace  ¦b¿z¿ïªº½d³òÅã¥Ü¿z¿ï«áªº¸ê®Æ
  14.     With po
  15.         For ipo = 6 To .Range("a5").End(xlDown).Row          '
  16.             ¥æ.ListObjects("ªí®æ1").Range.AutoFilter field:=4, Criteria1:=.Range("a" & ipo)
  17.             With ¥æ.ListObjects("ªí®æ1").Range
  18.                     .AutoFilter field:=3, Criteria1:="Bought"
  19.                     Bought = Application.Sum(.Range("E:E").SpecialCells(xlCellTypeVisible))
  20.                     'Application.Sum ¤u§@ªí¨ç¼Æ
  21.                     '.SpecialCells [¯S®íªºÀx¦s®æ] (xlCellTypeVisible) °Ñ¼Æ:=¥i¨£ªºÀx¦s®æ
  22.                     .AutoFilter field:=3, Criteria1:="Sold"
  23.                     Sold = Application.Sum(.Range("E:E").SpecialCells(xlCellTypeVisible))
  24.             End With
  25.             .Cells(ipo, "C") = Bought - Sold
  26.         Next
  27.     End With
  28.     ¥æ.ListObjects("ªí®æ1").Range.AutoFilter  '¨S¦³·Ç«h = ¨ú®ø¦Û°Ê¿z¿ï
  29.     Application.ScreenUpdating = True
  30. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¦^´_ 4# HSINLI
¤w§ä¨ìªþÀɵ{¦¡½Xªº¿ù»~¦p¤U
  1. For i = 2 To ¥æ.Range("d2").End(xlDown).Row
  2.             If ¥æ.Range("c" & i).RowHeight Then 'RowHeight > 0 Àx¦s®æ¤£¬OÁôÂêº
  3.                 If ¥æ.Range("c" & i) = "Bought" Then
  4.                     '³o¿ù»~ ipo¨S¦³µ¹­È ********
  5.                     po.Range("c" & ipo) = po.Range("c" & ipo) + ¥æ.Range("e" & i)
  6.                     '***************************
  7.                 ElseIf ¥æ.Range("c" & i) = "Sold" Then
  8.                     po.Range("c" & ipo) = po.Range("c" & ipo) - ¥æ.Range("e" & i)
  9.                 End If
  10.             End If
  11.     Next i
½Æ»s¥N½X
½Ð±N  If ¥æ.Range("c" & i).RowHeight Then 'RowHeight > 0 Àx¦s®æ¤£¬OÁôÂêº
®M¨ì§A²Ä¤@©«ªºµ{¦¡½X¸Õ¬Ý¬Ý
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¦^´_ 6# HSINLI
·Q½Ð°Ý¦pªGµo¥Í³oºØ¿ù»~ªº¸Ü¡A­n«ç»ò§ä¥X°ÝÃD¦b­þ¸Ì°Ú¡I¡H
«Ý§AVBA ªº¸gÅç­È´£¤É«á,À³¥i¦Û¦æ§ä¥X.
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

        ÀR«ä¦Û¦b : ¸Ü¦h¤£¦p¸Ü¤Ö¡A¸Ü¤Ö¤£¦p¸Ü¦n¡C
ªð¦^¦Cªí ¤W¤@¥DÃD