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

[µo°Ý] ½Ð°Ý¯à§_¨Ï¥Î¥¨¶°¨ú¥N¤H¤u¤§¿é¤J ·PÁ¯àªÌ¤j¤OÀ°§U

[µo°Ý] ½Ð°Ý¯à§_¨Ï¥Î¥¨¶°¨ú¥N¤H¤u¤§¿é¤J ·PÁ¯àªÌ¤j¤OÀ°§U

¥»©«³Ì«á¥Ñ lcctno ©ó 2015-9-22 18:10 ½s¿è

½Ð°Ý¯à§_¨Ï¥Î¥¨¶°¨ú¥N¤H¤u¤§¿é¤J ·PÁ¯àªÌ¤j¤OÀ°§U
1.³o¬OªÑ²¼ÁʶR°t¸mµ{¦¡ ­ì¥»§Ú¬O¨Ï¥Î¤H¤uºCºC¿é¤J(©ó¶À¦â®æ¤º) §Ú·QÀ³¸Ó¥i¥H¨Ï¥Î¥¨¶°¨Ó°õ¦æ ³Â·Ð°ª¤â¬Û§U ¥ýÁÂÁ±z¤F
2.­ìÀɮפӤjµLªk¤W¶Ç ¬GÁY´î¦¨³¡¤Àµ{¦¡(¥»¤HVBA¯à¤O¤£¦n ¬Gµµ¦â³¡¤À½Ð¤Å¨Ï¥Î ©Î¨ä¥L¦³¥Î¨ìªº¦a¤è¤]¾¨¶q¤£­n°Ê¨ì)
3.¶R±i¼Æ(¥u¯à¨Ï¥Î¾ã¼Æ) ¥ÑªÅ¥Õ©Î0¨ì I=I+1 ¨ì¤£¯àÅý³Ñ¾lª÷ÃB¤p©ó0
4.C12¨ìC2571¬°VBA¿é¤J¶R±i¼Æ¤§¦ì¸m








ªÑ²¼°t¸m.zip (252.45 KB)

¥»©«³Ì«á¥Ñ lcctno ©ó 2015-9-22 22:36 ½s¿è

§Úª¾¹D"³Â»¶®a±Ú°Q½×ª©" ¦³«Ü¦h°ª¤â
©Î³\±z­Ì»{¬°§Ú¥u·Q¦Y³½ ¦Ó¤£·Q¦Û¤v¾Ç³¨³½
§Ú¥u¯à»¡ ­Y³y¦¨±z­Ì¦³³oºØ¬Ýªk «D§Ú©ÒÄ@
§Úª¾¹D ·|ªº¤H «Ü§Ö´N¯à§¹¦¨³o²³æªº for next ...
¦ý§Ú§Ë¤F 3­Ó¬P´Á ÁÙ¬OµLªk§¹¦¨ ©Ò¥H¥u¦n«pÃCµo©«"¨D±Ï¤F"
Àµ½Ð¦^´_ªÌ ¯àªþ¤W'ªþµù ³o¼Ë¤~¯àÀ°§U¨ìªì¾ÇªÌ(©Î±µÄ²¤£¤[¤§¤H) ¤Þ¾É¯à¦Û¤v¾Ç³¨³½ ÁÂÁ±z­Ì¤F
­Y¦bªÑ²¼¥æ©öªºµ¦²¤ ¦³·Q­n§Ú´£¨Ñ·N¨£(¾Þ§@¤ßªk) §Ú¥i´£¨Ñ§Úªº20¦~¨Ó¤£±Ñªº¸gÅç ½Ðµoµu®ø®§µ¹§Ú

TOP

¥»©«³Ì«á¥Ñ ­ã´£³¡ªL ©ó 2015-9-22 23:33 ½s¿è

¦^´_ 2# lcctno


¢°¡DÁ٬ݤ£À´¤U³æªº®É¾÷¡A¬O§_¢ÚÄæ¿ú¨¬°÷¤F´N¤U³æ¡A¥H¯à¶Rªº±i¼Æ¬°­­¡]§tÃÒ¥æµ|¡^¡H
¢±¡DIF((C12+D12)>=0.001,1,0)¡@¤°»ò·N«ä¡H
¢²¡DIF(K12=1,0.0002,0)+IF(K12=2,0.0004,0)+IF(K12=3,0.0006,0)¡@¦ó·N¡Hª½±µ K12*0.0002¤£¦æ¶Ü¡H

¤]³\¤½¦¡´N¥i¥H¡A¦A¬ã¨s¬Ý¬Ý¡ã¡ã

°Ý°ÝÃD³£¤Ó²²¤¡AÀ³¸Ô²Ó»¡©ú»Ý¨D¬yµ{¡A
¬Ý°ÝÃDªº¤H¦n¹³­n­Ý¥~¬ìÂå¥Í¡A¸Ñ­å«á®³¾¹©x¤@¤@¬Ý¡I^ ^

TOP

¥»©«³Ì«á¥Ñ GBKEE ©ó 2015-9-23 07:28 ½s¿è

¦^´_ 2# lcctno
©Î³\±z­Ì»{¬°§Ú¥u·Q¦Y³½ ¦Ó¤£·Q¦Û¤v¾Ç³¨³½
§Ú¥u¯à»¡ ­Y³y¦¨±z­Ì¦³³oºØ¬Ýªk «D§Ú©ÒÄ@

§A18:08µo¤å22:36¦Aµo¦¹¤å,§A¤Ó¤ß«æ¤F,
³o½×¾Â¬O¤£¦¬¶O¥Îªº,¾aªº¬O¼ö¤ß¦b¦^¤åªº.
¬Ý°ÝÃDªº¤H¦n¹³­n­Ý¥~¬ìÂå¥Í¡A¸Ñ­å«á®³¾¹©x¤@¤@¬Ý¡I^ ^

»¡ªº¦n   ¦^¤å¤£¥u­n¦³¼ö¤ß,ÁÙ­n¦³­@¤ß
  1. Option Explicit
  2. Sub Ex()
  3.     Dim E As Range, i As Integer
  4.     With Range("c12:c" & Range("i" & Rows.Count).End(xlUp).Row)
  5.         For Each E In .Cells
  6.             If E.Cells(1, 10) > 0 Then
  7.                 i = Int(E.Cells(1, 10) / (E.Cells(1, 3) * 1000))
  8.                 If i > 0 Then
  9.                     E = i
  10.                     '³o¼ËÀ³¥i¿é¤J
  11.                     '¦ý¤u§@ªí¤W¦³¤@¨Ç¹³NÄ檺¤½¦¡
  12.                     '=IF(N11="²Ö­p§ë¸êª÷ÃB",-(I12+J12),-(I12+J12)+N11)
  13.                     '¬Ý¤£À´
  14.                 End If
  15.             End If
  16.         Next
  17.     End With
  18. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¦^´_ 3# ­ã´£³¡ªL
1.¤U³æªº®É¾÷
¨ä¹ê¥i¥H¤£­n²z·| ¤@¤j°ï¤º§t ¥u­n¿é¤J¶R±i¼Æ(CÄæ) ¦ý³Ñ¾lª÷ÃB(LÄæ)¤£¯à¬°­t­È ¤]´N¬O¤£¯àÅýCÄ椧®æÅܬõ¦â ·í¶R¶W¹L¥i§ë¸êª÷ÃB®É·|Åܬõ¦â

2.(C12+D12)>=0.001 ¨º¬O¹sªÑ ¤£¨¬¤@±iªÑ²¼ ¨ä¹ê±z¥i¥H¤£­n²z¨º¨Ç ¥u­nÅU¨ì(CÄæ)»P(LÄæ)¤§Ãö«Y´N¥i

3. k12 ¬O ÃÒ©Òµ|µ|²vÃþ§O 1 , 2 , 3 (¥Ø«e¥Î¤£¨ì)
ÃÒ©Òµ|µ|²vÃþ§O 0 (½æ¥X«e¤@¤éªº¥xªÑ¦¬½L«ü¼Æ8499.99ÂI©Î8499.99ÂI¥H¤U)
ÃÒ©Òµ|µ|²vÃþ§O 1 (½æ¥X«e¤@¤éªº¥xªÑ¦¬½L«ü¼Æ8500ÂI-9499ÂI)
ÃÒ©Òµ|µ|²vÃþ§O 2 (½æ¥X«e¤@¤éªº¥xªÑ¦¬½L«ü¼Æ9500ÂI-10499ÂI)
ÃÒ©Òµ|µ|²vÃþ§O 3  (½æ¥X«e¤@¤éªº¥xªÑ¦¬½L«ü¼Æ10500ÂI©Î10500ÂI¥H¤W )

ÁÂÁ±zªº¼ö¤ß §Æ±æ¥H¤W»¡©ú¯àÅý±z©ú¥Õ

TOP

¦^´_ 4# GBKEE

'=IF(N11="²Ö­p§ë¸êª÷ÃB",-(I12+J12),-(I12+J12)+N11)
³o¬O¬°¤FÅý¥þ³¡NÄ檺¤½¦¡¯à¥þ³¡¬Û¦P
ÁÂÁ±zªº¥Î¤ß ¬Ý¨Ó¤w¸g«Ü±µªñ§Ú©Ò­nªº ¦ý¦³¤Ö¼Æ´X¤ñ¶R³æ¶W¤ä¤F
¦pªþ¥ó(CÄ椺¤§³¡¤À®æ¬°¬õ©³¦â) Áٽбz¯àÄ~Äò­×¥¿¥¦ ÁÂÁÂ



ªÑ²¼°t¸mV2.zip (247.86 KB)

ªÑ²¼°t¸mV2.jpg (270.91 KB)

ªÑ²¼°t¸mV2.jpg

TOP

¦^´_ 5# lcctno


¦³®É¤£¬O·Qªº¨º»ò²³æ, ¦³¨Ç¼h­±ÁÙ¬O­n¦Ò¼{ªº¡G
¨Ò¦p¡G¹w¦ô¥i¶R¢²±i¡A¦ý¥[¤J¡eµ|¡D¶O¡f«á¡A´N·|§e­Ó¦ì¼Æªº­t¼Æ¡A³o®É´N¥u¯à¤Ö¶R¤@±i¡A
¡@¡@¡@¥[¤J¡eµ|¡D¶O¡f¤~¬O­«ÂI¡ã¡ã
¥t¡D
¢Ü¢°¢±¤½¦¡¡G=-(I12+J12)+N(N11)¡@¡÷¡@N(??)¡A¹J¤å¦r¬°¢¯¡A¹J¼Æ­È«h¬°¸Ó¼Æ­È¡A¨ä¥¦Ãþ±À
  1. Sub TEST()
  2. Dim xR As Range, SS, ST, SU
  3. With Range([E12], Cells(Rows.Count, "E").End(xlUp)(2))
  4. ¡@¡@.Offset(0, -2).ClearContents
  5. For Each xR In .Cells
  6. ¡@¡@If xR(1, 8) <= 0 Then GoTo 101
  7. ¡@
  8. ¡@¡@SU = Int(xR(1, 8) / xR / 1000) '¹w­p¥iÁʶR±i¼Æ
  9. ¡@¡@If SU <= 0 Then GoTo 101
  10. ¡@
  11. ¡@¡@SS = Round(xR * SU * 1000, 0) '¥i¶R±i¼ÆÁ`ªÑ»ù
  12. ¡@¡@ST = Application.Max(20, Int(SS * [H10]))  '­pºâµ|¶O, ³Ì§C20
  13. ¡@
  14. ¡@¡@If SS + ST > xR(1, 8) Then SU = SU - 1 '(Á`ªÑ»ù+µ|¶O)¶W¹L®É, ¤Ö¶R¤@±i
  15. ¡@¡@If SU > 0 Then xR(1, -1) = SU:  xR(1, -1).Select
  16. 101: Next
  17. End With
  18. End Sub
½Æ»s¥N½X

TOP

¦^´_ 7# ­ã´£³¡ªL
¦^³ø°ª¤â
¥Ø«e°õ¦æ°_¨Ó«Ü¥¿½T ·PÁ±zªºÀ°§U
¦ý½Ð°Ý ­YJÄæ[¨é°Ó§éÅý(°h´Ú)] ¦³¥[¤J¨ç¼Æ¤½¦¡®É(¤]´N¬O¦³°h´Ú­È®É) ¬O§_¤´¯à¥¿±`¨Ï¥Î
¦]¬°¥Ø«eÁÙ¦b¬ã¨s¸Ó¨ç¼Æ¤½¦¡ ¬GÁÙ¨S©ñ¶i¥h¨ç¼Æ¤½¦¡

TOP

¦^´_ 7# ­ã´£³¡ªL
    ST = Application.Max(20, Int(SS * [H10]))  '­pºâµ|¶O, ³Ì§C20
¨ä¹ê¤£»Ý­n¦³­pºâµ|¶O ¦]¬°¶R¬O¤£¥Îúµ| ¦ý­n¦Ò¼{ JÄæ[¨é°Ó§éÅý(°h´Ú)] ¦]¬°¶R»P½æ³£·|¦³°h´Ú
¦ý§Ú±N­pºâµ|¶O²¾°£ ´N¦³¤Ö¼Æ¶R¶W¤§²{¶H
¥Ø«e¥H¥[¤J¨é°Ó§éÅý(°h´Ú)¤§¨ç¼Æ¤½¦¡(©|¥¼§¹¥þ½T©w¤½¦¡ªº¥i¾a©Ê) Áٽбz±N´N¨Ó´ú¸Õ



ªÑ²¼°t¸mV3.zip (287.42 KB)

TOP

¦^´_ 9# lcctno
  1. Sub TEST()
  2. Dim xR As Range, SS, ST, SU, SX
  3. With Range([E12], Cells(Rows.Count, "E").End(xlUp)(2))
  4. ¡@¡@.Offset(0, -2).ClearContents
  5. For Each xR In .Cells
  6. ¡@¡@If xR(1, 8) <= 0 Then GoTo 101
  7. ¡@
  8. ¡@¡@SU = Int(xR(1, 8) / xR / 1000) '¹w­p¥iÁʶR±i¼Æ
  9. ¡@¡@If SU <= 0 Then GoTo 101
  10. ¡@
  11. ¡@¡@SS = Round(xR * SU * 1000, 0) '¥i¶R±i¼ÆÁ`ªÑ»ù
  12. ¡@¡@ST = Application.Max(20, Int(SS * [H10]))  '­pºâ¤âÄò¶O, ³Ì§C20
  13. ¡@¡@SX = Int(ST * [E10])  '°h¦þ=¤âÄò¶O*°h¦þ²v
  14. ¡@
  15. ¡@¡@If SS + ST - SX > xR(1, 8) Then SU = SU - 1 '(Á`ªÑ»ù+¤âÄò¶O-°h¦þ)¶W¹L®É, ¤Ö¶R¤@±i
  16. ¡@¡@If SU > 0 Then xR(1, -1) = SU:  xR(1, -1).Select
  17. 101: Next
  18. End With
  19. End Sub
½Æ»s¥N½X
©Ò¿×ªº¡eµ|¡D¶O¡f¡A¶R¤J®É¥u¬O¡e¤âÄò¶O¡f¡AµLêµ{¦¡­pºâ¡A³o¤£¯à¬Ù²¤
°h¦þ¡×¤âÄò¶O*°h¦þ²v
¥t¡D­pºâ¨ç¼Æ int, round ¦³®É·|®t¤@¤¸¡A½Ð¦Û¦æ¿ï¾Ü¦óºØ¤è¦¡¡I
¡@
ªþ¥ó¡G
ªÑ²¼°t¸mV3-1.rar (207.24 KB)

TOP

        ÀR«ä¦Û¦b : ¡i¥Í©R¦b©I§l¶¡¡j¦òªû»¡¡G¡u¥Í©R¦b©I§l¶¡¡C¡v¤HµLªkºÞ¦í¦Û¤vªº¥Í©R¡A§óµLªk¾×¦í¦º´Á¡AÅý¦Û¤v¥Ã¦í¤H¶¡¡C¬JµM¥Í©R¥h¨Ó³o»òµL±`¡A§Ú­Ì§óÀ³¸Ó¦n¦n¦a·R±¤¥¦¡B§Q¥Î¥¦¡B¥R¹ê¥¦¡AÅý³oµL±`¡BÄ_¶Qªº¥Í©R¡A´²µo¥¦¯uµ½¬üªº¥ú½÷¡A¬M·Ó¥X¥Í©R¯u¥¿ªº»ù­È¡C
ªð¦^¦Cªí ¤W¤@¥DÃD