[[20210912141003]] 『解説をおねがいします【乱数について】』(sakura) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『解説をおねがいします【乱数について】』(sakura)

Sub Sample()
With Range("A1:J10")
.Formula = "=CHOOSE(MOD(RAND()*10,3)+1,""A"",""B"",""C"")"
.Value = .Value
End With
End Sub

↑上記の内容の解説をおねがいします↑
VBA初心者です。
乱数のプログラムについて
内容は以下です。

●要素がA,B,Cの3種類
この3種類の要素を10×10のマスの中に
ランダムに配置するプログラム

< 使用 Excel:Excel2019、使用 OS:Windows10 >


[[20210912103033]]
こちらをご覧ください。
(きまぐれおじさん) 2021/09/12(日) 14:18

式を分解して考えてみましょう。
()がある場合は内側から外側に向かって計算します。

 =CHOOSE(MOD(RAND()*10,3)+1,"A","B","C")
   ↑  ↑  ↑    ↑   ↑      
   E列  C列  A列   B列  D列

     |[A]        |[B]        |[C]        |[D]        |[E]                    
 [1] |0.545396061|5.453960598|2.453960598|3.453960598|C                      
 [2] |0.184384086|1.843840858|1.843840858|2.843840858|B                      
 [3] |0.843326139|8.433261395|2.433261395|3.433261395|C                      
 [4] |0.688445347|6.884453472|0.884453472|1.884453472|A                      
 [5] |0.261347812|2.613478119|2.613478119|3.613478119|C                      
 [6] |           |           |           |           |                       
 [7] |=RAND()    |=A1*10     |=MOD(B1,3) |=C1+1      |=CHOOSE(D1,"A","B","C")
 [8] |           |           |           |           |                       
 [9] |           |           |           |           |                       
 [10]|A          |A          |A          |A          |A                      
 [11]|B          |A          |A          |C          |C                      
 [12]|A          |A          |A          |C          |B                      
 [13]|A          |B          |A          |A          |C                      
 [14]|B          |B          |B          |A          |C                      
 [15]|C          |A          |A          |A          |B                      
 [16]|B          |C          |C          |B          |A  

(OP) 2021/09/12(日) 15:30


きまぐれおじさん
ありがとうございます(^^)

きちんと熟読します。感謝します。
(sakura) 2021/09/12(日) 21:52


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.