- ベストアンサー
数字をスクロール表示は可能?
数字をスクロール表示は可能? お世話になります。 シート1とシート2があります。 シート2にはAセルの縦列に数字が約1000個並んでいます。 この数字を頭の方からシート1のAセルに1秒間に1個づつ スクロール表示してゆくことは可能でしょうか? 結果的にシート1のAセルにはシート2の約1000個の数字が ならび終わるという感じです。 数字が1秒ごとにスクロールしながら降りて行く感じとなります。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
No.3・4です! ほんとうに何回もごめんなさい。 1000行を1秒間隔で表示させるとなると約16~17分かかる計算になってしまいます。 ちょっと時間的に長すぎますので、マクロを中断したい場合は Escキーを押してください。 一気に最後までマクロが実行されます。 どうも何度も何度も失礼しました。m(__)m
その他の回答 (4)
- tom04
- ベストアンサー率49% (2537/5117)
No.3です! たびたびごめんなさい。 投稿した後でNo.2さんの補足を読ませてもらいました。 貼り付け&実行方法ですが・・・ 当方使用のExcel2003の場合は シート見出し(画面の下側にSheet1・Sheet2・・となっている部分)の Sheet1の上で右クリック → コードの表示 を選択します。 その画面上に前回投稿したコードをコピー&ペーストしてください。 (Excel2007の場合も同様の方法でOKだと思います) そして、メニュー → ツール → マクロ → 実行 これでマクロが実行されます。 尚、Excel2007の場合はメニューの中の「開発」タブを選択すると マクロのアイコンが出ると思います。 どうも何度も失礼しました。m(__)m
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 一例です。 ↓のコードを貼り付けて実行してみてください。 Sub test() Dim i As Long For i = 1 To 1000 Worksheets("sheet1").Cells(i, 1).Activate Worksheets("sheet1").Cells(i, 1) = Worksheets("sheet2").Cells(i, 1) Application.Wait Time:=Now + TimeValue("00:00:01") Next End Sub 1秒ごとにマクロを実行する方法ではなく、 1秒待って、マクロを実行するようにしてみました。 以上、参考になれば良いのですが 的外れなら読み流してくださいね。m(__)m
- jcctaira
- ベストアンサー率58% (119/204)
VBAのコードは以下の通りになります。 Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Sub 数字スクロール() Sheets("Sheet1").Select Range("A:A").ClearContents Application.Goto Range("A1"), True For 行 = 1 To 1000 Cells(行, "A") = Sheets("Sheet2").Cells(行, "A") Application.Goto Cells(行, "A"), True Sleep (1000) DoEvents Next 行 End Sub
補足
回答をありがとうございます。 私、全くVBAというものを知らないのですがぜひやってみたいと思います。 まず、動くところを見て興味を持ちたいと思います。 このコードといわれるものはこれをどこにコピペ(?)すればいいのでしょうか?
- MRT1452
- ベストアンサー率42% (1391/3293)
セル式でそういう式があるかは、わかりかねますが、VBAであれば可能です。 タイマで1秒間隔を取り、対象セルをずらしながら転記していくようにすれば可能です。 タイマ処理の組み方に関しては、検索を掛ければ、いくつかサンプルが引っ掛かると思うので、 それらを参考にすればよいかと。
補足
ありがとうございます。 今夜やってみます。 わからないときはまたお願いします