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

·Q¹B¥ÎExcel°µ­Ó©â¼ú

·Q¹B¥ÎExcel°µ­Ó©â¼ú

®Éªñ¸t½Ï·s¦~
¤½¥q·Q·d­Ó©â¼ú¬¡°Ê
§Î¦¡¤j­PÃþ¦üBango
·|¨Ï¥Î§ë¼v¾÷±Nµe­±©ñ¤j¨ì¿Ã¹õ¤W

ÁקK©â¯È¥Jªº¤H­J¶Ã³ø¼Æ(µL¤ß¤§¥¢³ø¿ù)
©Ò¥H·Q±N1-100ªº½s¸¹
¹B¥ÎExcel ÀH¾÷Åã¥Ü¥X¨Ó
Åã¥Ü¹Lªº½s¸¹¤£·|¦A¦¸³Q©â¤¤

­º¥ý·|¦bA¦C¦C¥X1-100ªº¼Æ¦r
µM«á¦bB¦CÅã¥Ü
¦P¨Æ­Ì¹Á¸Õ¹L¤U¥H¤U¤½¦¡
=INDEX(A1:A30,INT(30*RAND()+1))
¤£ª¾¦ó¬G¨C¿é¤J¤@¦¸
­ì¥ý¤w¥X²{¹Lªº½s¸¹ÀH§YÅܤF¥t¤@­Ó¼Æ¦r
°²»¡B1¿é¤J¤½¦¡«á¡A¥X²{ªº¼Æ¦r¬O¢²¢·
·í¦bB2¦A¿é¤J³o±ø¤½¦¡¡AB2¦AÅã¥Ü¥X¢·¢¸
¦ýB1ªº¼Æ¦rÀH§YÅܤF¢µ¢´

°ÝÃD:
¤½¦¡¦³¿ù»~¶Ü?
¦³¨S¦³¨ä¥L¤½¦¡?
¦P¼Ë¥i¥H²³æ¦a§@¥X©â¼ú

¦^´_ 1# K_Wing
      
    ¥Î¤½¦¡ªº¸Ü¡A¥i¯à·|¦³°ÝÃD¡A
    ©â¼ú¥»¨­´N¬OÀH¾÷ªº¡A©Ò¥H§A¦P¨Æ¥Î¶Ã¼Æªº¤è¦¡¬O¹ïªº¤è¦V¡A
    ¦ý¬O¡A´N§Ú¨Ï¥Î¶Ã¼Æªº±¡ªp¡A¥u­nÀx¦s®æ¦³§ïÅܨì¡A¸Ó¶Ã¼Æ´N·|³Q°õ¦æ¡A
    ¦]¦¹¡A§Ú¥u¦³¥Îvbaªº¤è¦¡¨Ó³B²z¡A½Ð¤U¸üªþ¾×¡AÀ³¸Ó¥i¥H²Å¦X§Aªº»Ý¨D¡C
    ©â¼ú¤è¦¡.rar (12.45 KB)
¾Ç²ß¤~¯à´£¤É¦Û¤v

TOP

¦^´_ 2# hugh0620
^^~
«D±`·PÁÂ¥S§ÌÀ°¦£
¬O³o¼Ëªº¼Ò¦¡¤F
¥i¬O«ö¶s©ñ±o¹L°ª
¦pªG¥i¥H½Õ§C¦ÜF35ªº¦ì¸m
´N³Ì¦n¤F

TOP

¦^´_ 3# K_Wing

   ¾Þ§@¹Ï¥Ü¡A½Ð¦Û¤v¸ÕµÛ²¾°Ê¬Ý¬Ý¡A¤~¯à¼W¥[§AªºEXCEL¯à¤O¡C
   
   
¾Ç²ß¤~¯à´£¤É¦Û¤v

TOP

¦^´_ 4# hugh0620
^^~¦¨¥\¤F
·PÁ«ü¾É
¥t·Q°Ý°Ý­Y·Q
­Y§Ú·Q¥H¹Ï¤ù¤ºªº±¡ªpÅã¥Ü©â¥X¸¹½X
¤ñ¦p¸Ü²¾¦ì«áªº21¦Ü100
®ÇÃ䪺ªÅ®æ¤w¨SªkÅã¥Ü¸¹½X
¥i¥H«ç¼Ë°µ©O

¥t¤jªÅ®æªº"37"
°£¤F¨Ï¥Î¤½¦¡"=B2"
ÁÙ¥i¥H«ç¼Ë¨Ï¥¦¦Û°ÊÅã¥Ü

TOP

¥»©«³Ì«á¥Ñ hugh0620 ©ó 2014-12-22 08:30 ½s¿è

¦^´_ 5# K_Wing


    B1§ï¦¨P6
    B2§ï¦¨K14
    ¥t¥~­n§â¨C¤@±Æ¨Ì20­Ó¤H¨Ó¨Ï¥Î¡A­n¦A¥[¤u¤@¤U¡C
¾Ç²ß¤~¯à´£¤É¦Û¤v

TOP

¦^´_ 6# hugh0620
¸U¤G¤À·PÁÂ
°ÝÃD¤w¶êº¡¸Ñ¨M:)

TOP

¥»©«³Ì«á¥Ñ hugh0620 ©ó 2014-12-22 09:45 ½s¿è

¦^´_ 5# K_Wing
1. ±Nªºµ{¦¡½X¥þ³¡§R°£
2.±N¤U­±ªºµ{¦¡½X¥þ³¡¶K¤W¡AÀ³¸Ó´N¬O§A­nªºµ²ªG

§Ú¥Îªº¬O¤ñ¸ûª½±µÅÞ¿è©Êªº§PÂ_¨Ó§¹¦¨¡A©Ò¥H·|¤ñ¸ûªø¡A
¨S¤Ó¦h®É¶¡Â²¤Æµ{¦¡½X¡A¨ä¥L¤j¤jÀ³¸Ó¦³§ó²«Kªº¤è¦¡¡C
  1. Sub ²£¥Í©â¼ú¦¸¼Æ()
  2. Dim A As Integer

  3. 'A = Range("B1")   '©â¼ú¤H¼Æ
  4. 'Range("B2").ClearContents
  5. 'Range("A5:B65536").ClearContents '²M°£Âªº¦¸¼Æ

  6. A = Range("P6")       '©â¼ú¤H¼Æ
  7. B = 20                '20¤H¤@±Æ
  8. C = A / B             '¾ã¼Æ¦³¦h¤Ö±Æ(ex. C=100/20=5)


  9. If C = Int(C) Then
  10.    D = C              '·íC¬O¾ã¼Æªº®É­Ô¡ADµ¥©óC´X±Æ¡A°j°é­n¶]ªº¦¸¼Æ
  11. Else
  12.    D = Int(C) + 1     '·íC¤£¬O¾ã¼Æªº®É­Ô¡ADµ¥©óC´X±Æ+1¡A°j°é­n¶]ªº¦¸¼Æ
  13. End If
  14.     Range("A4").Select
  15.     Range(Selection, Selection.End(xlToRight)).Select
  16.     Range(Selection, Selection.End(xlDown)).ClearContents

  17. P = 1
  18. For J = 0 To D - 1
  19.       Cells(4, J * 2 + 1) = "¤u¸¹(©m¦W)"
  20.       Cells(4, J * 2 + 2) = "©â¤¤¸¹½X"
  21.       For I = 1 To B   '²£¥Í½s¸¹
  22.           Cells(I + 4, J * 2 + 1) = P
  23.           P = P + 1
  24.       Next I
  25. Next J

  26. End Sub
  27. Sub ¤@¦¸©â¤@­Ó½s¸¹()

  28. A = Range("P6")       '©â¼ú¤H¼Æ
  29. B = 20                '20¤H¤@±Æ
  30. C = A / B             '¾ã¼Æ¦³¦h¤Ö±Æ(ex. C=100/20=5)
  31. If C = Int(C) Then
  32.    D = C              '·íC¬O¾ã¼Æªº®É­Ô¡ADµ¥©óC´X±Æ¡A°j°é­n¶]ªº¦¸¼Æ
  33. Else
  34.    D = Int(C) + 1     '·íC¤£¬O¾ã¼Æªº®É­Ô¡ADµ¥©óC´X±Æ+1¡A°j°é­n¶]ªº¦¸¼Æ
  35. End If

  36.         '==== ½T©w¸¹½X¤£·|­«½Æ==========
  37. 1
  38.         K = Int(Round(Rnd(), 3) * 100)
  39.         If K > A Then
  40.           GoTo 1
  41.         End If
  42.         
  43.         For J = 0 To D - 1
  44.               For I = 1 To B   '²£¥Í½s¸¹
  45.                   If K = Cells(I + 4, J * 2 + 2) Then
  46.                      GoTo 1
  47.                   End If
  48.               Next I
  49.         Next J
  50.         '==== ½T©w¸¹½X¤£·|­«½Æ==========
  51.         
  52.         P = Application.CountA(Range("B5:B24"), Range("D5:D24"), Range("F5:F24"), Range("H5:H24"), Range("J5:J24"))
  53.         If P < 20 Then
  54.              Range("K14") = K
  55.              If P = 0 Then
  56.                 Cells(4, 2).Offset(1, 0) = K
  57.              Else
  58.                 Cells(4, 2).End(xlDown).Offset(1, 0) = K
  59.              End If
  60.         ElseIf P >= 20 And P < 40 Then
  61.              Range("K14") = K
  62.              If P = 20 Then
  63.                 Cells(4, 4).Offset(1, 0) = K
  64.              Else
  65.                 Cells(4, 4).End(xlDown).Offset(1, 0) = K
  66.              End If
  67.         ElseIf P >= 40 And P < 60 Then
  68.              Range("K14") = K
  69.              If P = 40 Then
  70.                 Cells(4, 6).Offset(1, 0) = K
  71.              Else
  72.                 Cells(4, 6).End(xlDown).Offset(1, 0) = K
  73.              End If
  74.         ElseIf P >= 60 And P < 80 Then
  75.              Range("K14") = K
  76.              If P = 60 Then
  77.                 Cells(4, 8).Offset(1, 0) = K
  78.              Else
  79.                 Cells(4, 8).End(xlDown).Offset(1, 0) = K
  80.              End If
  81.         ElseIf P >= 80 And P < 100 Then
  82.               Range("K14") = K
  83.              If P = 80 Then
  84.                 Cells(4, 10).Offset(1, 0) = K
  85.              Else
  86.                 Cells(4, 10).End(xlDown).Offset(1, 0) = K
  87.              End If
  88.         ElseIf P >= 100 Then
  89.              MsgBox "¤w§¹©â¼ú"
  90.              GoTo 2
  91.         End If
  92. 2

  93. End Sub
½Æ»s¥N½X
¾Ç²ß¤~¯à´£¤É¦Û¤v

TOP

¦^´_  K_Wing
1. ±Nªºµ{¦¡½X¥þ³¡§R°£
2.±N¤U­±ªºµ{¦¡½X¥þ³¡¶K¤W¡AÀ³¸Ó´N¬O§A­nªºµ²ªG

§Ú¥Îªº¬O¤ñ¸û ...
hugh0620 µoªí©ó 2014-12-22 09:43

«D±`·PÁ¤@¦AÁ¿¸Ñ
¦]¤£¦P³¡ªù¦³µÛ¤£¦Pªº·N¨£
Á`¤£¯à¨C¦¸¥X²{·s·N¨£«á¤S¦A¤W¨Ó´£°Ý

­t³dªº¦P¨Æ¤w­×§ï¬°¤½¦¡
±N­ì¦³21-100ªº¤å¦r¥þ§ï¬°¥Õ¦â
Åý³o¨t¦CªºÀx¦s®æÅܦ¨ªÅ¥Õ
µM«á¦b·sªº¦ì¸m¶K¤W"=­ì¦³Àx¦s®æªº¤½¦¡"¦A¤U©Ô
¼È®É¨Ó»¡Á`ºâ¸Ñ¨M¤F°ÝÃD

¦A¦¸·PÁÂ¥S§Ìªº¼ö¤ßÀ°¦£
ÁÂÁÂ

TOP

        ÀR«ä¦Û¦b : ¨ü¤HÂI¤ô¤§®¦¡A¶··í´é¬u¥H³ø¡C
ªð¦^¦Cªí ¤W¤@¥DÃD