½Ð°Ý¦p¦ó¥ÎARRAY°µ¸ê®Æ¤ñ¹ï¡H
| ©«¤l4901 ¥DÃD44 ºëµØ24 ¿n¤À4916 ÂI¦W267  §@·~¨t²ÎWindows 7 ³nÅ骩¥»Office 20xx ¾\ŪÅv150 ©Ê§O¨k ¨Ó¦Û¥x¥_ µù¥U®É¶¡2010-4-30 ³Ì«áµn¿ý2025-10-31 
                
 | 
                
| ¦^´_ 1# ¤p«L«È ½Æ»s¥N½XPublic k%
Sub Draw()
If Application.CountA([A:A]) >= k ^ 2 Then Exit Sub
n = Int((k ^ 2) * Rnd + 1)
Do Until IsError(Application.Match(n, [A:A], 0))
n = Int((k ^ 2) * Rnd + 1)
Loop
r = Application.CountA([A:A]) + 1
[A5].Offset(r) = n
Set a = Range("I1").CurrentRegion.Find(n, lookat:=xlWhole)
a.Interior.ColorIndex = 3
Set b = a.EntireColumn
Set c = a.EntireRow
ar = Array(b, c)
For i = 0 To 1
yn = True
 For Each x In Intersect(ar(i), Range("I1").CurrentRegion)
   If x.Interior.ColorIndex <> 3 Then yn = False: Exit For
 Next
 If yn = True Then MsgBox "Bango!!!": Exit Sub
Next
Set b = [I1]
Set c = [I1].Offset(, k - 1)
ar = Array(b, c)
For i = 0 To 1
yn = True: x = IIf(i = 0, 1, -1)
  For j = 0 To k - 1
  If ar(i).Offset(j, j * x).Interior.ColorIndex <> 3 Then yn = False: Exit For
  Next
   If yn = True Then MsgBox "Bango!!!": Exit Sub
Next
End Sub
Sub Restart()
Sheets(1).Cells.Clear
Sheets(2).Cells.Clear
Sheets(3).Cells.Clear
End Sub
Sub Paper()
k = InputBox("¿é¤J°}¦Cºû¼Æ", , 5)
ReDim ar(k, k)
ReDim ay(k, k)
For i = 0 To k - 1
   For j = 0 To k - 1
   ar(i, j) = Rnd
   Next
Next
[I1].Resize(k, k) = ar
For i = 0 To k - 1
   For j = 0 To k - 1
   ay(i, j) = Application.Rank(ar(i, j), [I1].Resize(k, k))
   Next
Next
[I1].Resize(k, k) = ay
End Sub
 | 
 | 
| ¾Ç®üµL²P_¤£®¢¤U°Ý | 
|  |  | 
|  |  |