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

[µo°Ý] °j°é°ÝÃD

  1. Sub Ex()
  2. Dim ¤âÄò¶O As Integer, N As Integer, B As Single
  3. Sheets("Sheet1").Select
  4. Sheets("Sheet1").Names.Add "¤âÄò¶O²v", 0.001425
  5. Sheets("Sheet1").Names.Add "¥´§é", 0.28
  6. Sheets("Sheet1").Names.Add "ÃÒ¥æµ|²v", 0.003
  7. '=========================='½Õ¾ãC°ÏªÑ»ù³W«h
  8. For Each A In Range("A:A").SpecialCells(xlCellTypeConstants, xlNumbers)
  9.     B = Application.Lookup(A, Array(0, 11, 51, 101, 501, 1001), Array(0.01, 0.05, 0.1, 0.5, 1, 5))
  10.     A(1, "C") = Round(A, 2) * 1000              '¶R¶iªÑª÷
  11.     ¤âÄò¶O = IIf(A(1, "C") * [¤âÄò¶O²v] * [¥´§é] > 20, A(1, "C") * [¤âÄò¶O²v] * [¥´§é], 20)
  12.     A(1, "D") = ¤âÄò¶O                          '¤âÄò¶O
  13.     A(1, "E") = A(1, "C") + ¤âÄò¶O
  14.     N = 1                                       '
  15.     A(1, "G") = Round(Round(A, 2) + (B * N), 2) 'C°ÏªÑ»ù
  16.     A(1, "H") = "=RC[-1]*1000"                  '½æ¥XªÑª÷
  17.     A(1, "I") = "=Round(IF(RC[-1] *¤âÄò¶O²v * ¥´§é > 20, RC[-1] * ¤âÄò¶O²v * ¥´§é, 20), 0)" '½æ¥X¤âÄò¶O
  18.     A(1, "J") = "=Round(RC[-2] *ÃÒ¥æµ|²v,0)"                                                'ÃÒ¥æµ|
  19.     A(1, "K") = "=RC[-3]-RC[-2]-RC[-1]"                                                     '½æ¥Xª÷ÃB
  20.     A(1, "M") = "=RC[-2]-RC[-8]"                                                            'Àò§Qª÷ÃB
  21.     A(1, "N") = "=(RC[-3]-RC[-9])/RC[-9]"                                                   'Àò§Q%¼Æ
  22.     '
  23.     A(1, "N").GoalSeek Goal:=0.01, ChangingCell:=A(1, "G") '***** ¥Ø¼Ð·j´M  Àò§Q%¼Æ=0.01 ·|¨D±o±µªñªº[½æ»ù]
  24.     '****  ¤]¥i¥Î°j°é¨D¸Ñ   ¨D¸Ñ«áªº[½æ»ù] ·|¬O¯u¹êªº[[ ÀÉ»ù ]]     ********
  25.     'Do Until A(1, "M") >= A(1, "E") * 0.01          '    Àò§Q%¼Æ=0.01
  26.     'N = N + 1
  27.     'A(1, "G") = Round(A, 2) + (B * N)
  28.     'Loop
  29.     '*******************************
  30.     A(1, "G").Resize(, 8) = A(1, "G").Resize(, 8).Value     '®ø°£¤½¦¡Åã¥Ü­È
  31. Next
  32. End Sub
½Æ»s¥N½X
¦p¹Ï ½Ð­×§ï Äæ¦ì¦WºÙ

TOP

¥»©«³Ì«á¥Ñ GBKEE ©ó 2012-3-25 16:40 ½s¿è

¦^´_ 9# spermbank
   
§Ú¹Á¸Õ§âA.Offset(, 0) = Application.Ceiling(A, B)¶ë¤Jµ{¦¡½X²Ä9¦Ü10¦æ¤¤¶¡
    ¥i¥H¸Ñ¨M¶R¶iªÑ»ù²Å¦X¼Æ¦r³W«h¡AÅý¤âÄò¶O¡B¶R¶iª÷ÃB¤]²Å¦X
    ¥i¬O§Ú«o¤£ª¾¹D­n¦p¦ó½Õ¾ãC°ÏªÑ»ù¤]²Å¦X¼Æ¦r³W«hªº±¡ªp¤U

¬O­n­×§ïA°ÏªÑ»ù§a ªþÀɤ¤²Ä¤@­ÓªÑ»ù¬°   12.3333333
  1. Sub Ex()
  2. Dim ¤âÄò¶O As Integer, N As Integer, B As Double
  3. Sheets("Sheet1").Select
  4. Sheets("Sheet1").Names.Add "¤âÄò¶O²v", 0.001425
  5. Sheets("Sheet1").Names.Add "¥´§é", 0.28
  6. Sheets("Sheet1").Names.Add "ÃÒ¥æµ|²v", 0.003
  7. '=========================='½Õ¾ãC°ÏªÑ»ù³W«h
  8. For Each A In Range("A:A").SpecialCells(xlCellTypeConstants, xlNumbers)
  9.     B = Application.Lookup(A, Array(0, 11, 51, 101, 501, 1001), Array(0.01, 0.05, 0.1, 0.5, 1, 5))
  10.     A.Value = Application.Ceiling(A, B)             '¦b¦¹­×§ï A°ÏªÑ»ù²Å¦X¶R½æªÑ»ù³W«hªº[[ ÀÉ»ù ]]
  11.     A(1, "C") = A * 1000                            '¶R¶iªÑª÷
  12.     ¤âÄò¶O = IIf(A(1, "C") * [¤âÄò¶O²v] * [¥´§é] > 20, A(1, "C") * [¤âÄò¶O²v] * [¥´§é], 20)
  13.     A(1, "D") = ¤âÄò¶O                              '¤âÄò¶O
  14.     A(1, "E") = A(1, "C") + ¤âÄò¶O
  15.     N = 1                                           ' ²Å¦X¶R½æªÑ»ù¼Æ¦r³W«h ªº¦¸¼Æ
  16.     A(1, "G") = A + B * N                           'C°ÏªÑ»ù
  17.     A(1, "H") = "=RC[-1]*1000"                      '½æ¥XªÑª÷
  18.     A(1, "I") = "=Round(IF(RC[-1] *¤âÄò¶O²v * ¥´§é > 20, RC[-1] * ¤âÄò¶O²v * ¥´§é, 20), 0)" '½æ¥X¤âÄò¶O
  19.     A(1, "J") = "=Round(RC[-2] *ÃÒ¥æµ|²v,0)"                                                'ÃÒ¥æµ|
  20.     A(1, "K") = "=RC[-3]-RC[-2]-RC[-1]"                                                     '½æ¥Xª÷ÃB
  21.     A(1, "M") = "=RC[-2]-RC[-8]"                                                            'Àò§Qª÷ÃB
  22.     A(1, "N") = "=Round(((RC[-3]-RC[-9])/RC[-9]),4)"                                        'Àò§Q%¼Æ
  23.     '****  ¥Î°j°é¨D¸Ñ   ¨D¸Ñ«áªº[½æ»ù] ·|¬O²Å¦X¶R½æªÑ»ù³W«hªº[[ ÀÉ»ù ]]
  24.     Do Until A(1, "M") >= A(1, "E") * 0.01              'Àò§Q%¼Æ=1%
  25.         N = N + 1                                       '¦¸¼Æªº²Ö¥[
  26.         A(1, "G") = A + (B * N)                         'B -> ²Å¦X¶R½æªÑ»ù³W«hªº¼Æ¦r
  27.     Loop
  28.     A(1, "G").Resize(, 8) = A(1, "G").Resize(, 8).Value     '®ø°£¤½¦¡Åã¥Ü­È
  29. Next
  30. End Sub
½Æ»s¥N½X

TOP

        ÀR«ä¦Û¦b : ¥Ç¿ù¥XÄb®¬¤ß¡A¤~¯à²M²bµL·Ð´o¡C
ªð¦^¦Cªí ¤W¤@¥DÃD