●EXCEL・VBAの教えて ..
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
256:デフォルトの名無しさん 07/02/14 23:16:03 すみませぬが質問です。フォームにラベルを作り、そのラベルにランダムの行数のセルを表示させ、 ちょっと時間をおいてその隣のセルを表示させる、というプログラムを作りましたが 上手いこといきません。アドバイス下さいませ。 Option Explicit Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) 'メイン Private Sub userform_initialize() Call 表示 End Sub '表示 Sub 表示() '乱数発生 Randomize Dim 行番号 As Long Dim 乱数 As Long 行番号 = Worksheets("sheet1").Range("a65536").End(xlUp).Row 乱数 = Int(Rnd * 行番号) + 1 Label1.Caption = Cells(乱数, 1).Value Sleep (1000) Label1.Caption = Cells(乱数, 2).Value End Sub 257:デフォルトの名無しさん 07/02/15 00:01:44 >>256 なにが上手いこといかないのか良く分からないんですが、 きっとエラーになるのではなくて、いきなり表示がCells(乱数,2)の値に なると仮定してレス Private Sub userform_initialize() はFormが表示されるまえに起こるイベントなんで、 表示されたときにはCells(乱数,2)が表示されてしまうと思います。 あとは、 Label1.Caption = Cells(乱数, 1).Value '追加↓ DoEvents Sleep (1000) Label1.Caption = Cells(乱数, 2).Value と、DoEventsを入れないと Sub 表示()の処理がすべて終わるまで 表示が更新されないと思いますよ。
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
5400日前に更新/123 KB
担当:undef