プロが教えるわが家の防犯対策術!

ExcelVBAで次の大変簡単なコードを書いてみました。
シート上の行列(100*100)の範囲にランダムに☆印を100個表示するというものです。sheet1にコマンドボタンを貼り付け押すと実行します。ところが実行時エラーが起きて止まります。(メッセージ:”アプリケーション定義またはオブジェクト定義のエラーです”)原因はなんでしょうか?6行目が問題なようです。うまく動く時もあるので不思議です。
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
For n = 1 To 100
R = Int(Rnd * 100)
C = Int(Rnd * 100)
Sheet1.Cells(R, C).Value = "☆"
Next
Application.ScreenUpdating = True
End Sub

A 回答 (1件)

R,Cに0が設定されるからではないでしょか?


EXCELのセルは1,1から始まったと思いますが。

R = Int((Rnd * 100) +1)
C = Int((Rnd * 100) +1)
    • good
    • 0
この回答へのお礼

なるほど!そういうことですね。
ありがとうございます。

お礼日時:2001/07/18 22:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!