| ©«¤l2843 ¥DÃD10 ºëµØ0 ¿n¤À2899 ÂI¦W0  §@·~¨t²Î¡e²¤¡f ³nÅ骩¥»¡e²¤¡f ¾\ŪÅv100 ©Ê§O¨k ¨Ó¦Û¡e²¤¡f µù¥U®É¶¡2013-5-13 ³Ì«áµn¿ý2025-10-18 
 | 
                
| ¦^´_ 9# lcctno ©Ò¿×ªº¡eµ|¡D¶O¡f¡A¶R¤J®É¥u¬O¡e¤âÄò¶O¡f¡AµLêµ{¦¡pºâ¡A³o¤£¯à¬Ù²¤½Æ»s¥N½XSub TEST()
Dim xR As Range, SS, ST, SU, SX
With Range([E12], Cells(Rows.Count, "E").End(xlUp)(2))
¡@¡@.Offset(0, -2).ClearContents
For Each xR In .Cells
¡@¡@If xR(1, 8) <= 0 Then GoTo 101
¡@
¡@¡@SU = Int(xR(1, 8) / xR / 1000) '¹wp¥iÁʶR±i¼Æ
¡@¡@If SU <= 0 Then GoTo 101
¡@
¡@¡@SS = Round(xR * SU * 1000, 0) '¥i¶R±i¼ÆÁ`ªÑ»ù
¡@¡@ST = Application.Max(20, Int(SS * [H10]))  'pºâ¤âÄò¶O, ³Ì§C20
¡@¡@SX = Int(ST * [E10])  '°h¦þ=¤âÄò¶O*°h¦þ²v
¡@
¡@¡@If SS + ST - SX > xR(1, 8) Then SU = SU - 1 '(Á`ªÑ»ù+¤âÄò¶O-°h¦þ)¶W¹L®É, ¤Ö¶R¤@±i
¡@¡@If SU > 0 Then xR(1, -1) = SU:  xR(1, -1).Select
101: Next
End With
End Sub
°h¦þ¡×¤âÄò¶O*°h¦þ²v
 ¥t¡Dpºâ¨ç¼Æ int, round ¦³®É·|®t¤@¤¸¡A½Ð¦Û¦æ¿ï¾Ü¦óºØ¤è¦¡¡I
 ¡@
 ªþ¥ó¡G
 
  ªÑ²¼°t¸mV3-1.rar (207.24 KB) | 
 |