- クラス名・変数名に迷ったら書き込むスレ。Part25 [転載禁止]©2ch.net
854 :デフォルトの名無しさん[sage]:2015/11/20(金) 10:49:24.08 ID:v3U3Slwh - >>852
> 最初はMoviesクラスにしていましたが、複数形はよくないだろうと思って 実際にメンバで実体としてそれを持ってるかにかかわらず、外から見てMovieのCollectionに見えるのなら、 Moviesで少しもおかしくないと思うけど。 var movie = Movies.Single(id);
|
- Excel VBA 質問スレ Part38 [転載禁止]©2ch.net
883 :デフォルトの名無しさん[sage]:2015/11/20(金) 15:43:30.34 ID:v3U3Slwh - >>881
> かぶり防止の※がドローするたびに消える(記憶しないので結局かぶる) とか言われても、なんのことやらさっぱりわかりません。 某カードゲームなどと言葉を濁さずに、名称を明確にするか、そうしたくないのなら 目的をはっきりさせ、draw()の前提(状態)がどうなっているのかを説明してください。
|
- Excel VBA 質問スレ Part38 [転載禁止]©2ch.net
885 :デフォルトの名無しさん[sage]:2015/11/20(金) 16:15:12.98 ID:v3U3Slwh - >>884
なるほど、目的と手段はわかりました。 なら、こうですね。 ' デッキをもとに戻すときに呼ぶ Sub InitializeDeck() Columns("E:E").ClearContents End Sub Sub draw() Dim Ret As Integer While True Ret = Int((40 * Rnd) + 1) + 1 If Cells(Ret, 5).Value <> "*" Then Cells(Ret, 5) = "*" Cells(Ret, 1).Copy Destination:=Cells(22, 6 + i) Exit Sub End If Wend End Sub ただし、この方法は効率がよくありません。 例えば最後の1枚を探すのに、何度もループする必要があります。 運が良ければ最初の1回で見つかるかもしれませんが、運が悪ければ数百回以上ループ することになったりします。 効率の良い方法は、 「vba カード シャッフル」 でググってみてください。
|
- Excel VBA 質問スレ Part38 [転載禁止]©2ch.net
889 :デフォルトの名無しさん[sage]:2015/11/20(金) 16:43:40.25 ID:v3U3Slwh - >>888
あ、カードのドローに関しては>>885のコードで十分なので、今「効率の良い方法」を 調べる必要はないですよ。
|
- Excel VBA 質問スレ Part38 [転載禁止]©2ch.net
891 :デフォルトの名無しさん[sage]:2015/11/20(金) 17:56:13.24 ID:v3U3Slwh - >>890
山札から1枚引くこと。
|