[[20151005165157]] 『同じ動作を5秒ごとに繰り返すマクロ』(ayapan) ページの最後に飛ぶ

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

 

『同じ動作を5秒ごとに繰り返すマクロ』(ayapan)

あるセル、例えばA1のセルをコピーしてB1のセルに貼るといった動作を5秒毎に繰り返す、といったようなマクロはVBAで作成可能なのでしょうか?

今非常に困っておりましてもし出来たら非常に助かるのですがどなたか助けて頂けないでしょうか。(´;ω;`)

< 使用 Excel:Excel2007、使用 OS:Windows7 >


標準モジュールに記述。

 Dim dw As Date

 Sub test()
    With Sheets(1)
        .Range("B1") = .Range("A1")
    End With
    dw = DateAdd("S", 5, Now)
    Application.OnTime dw, "test"
 End Sub

更新を止めるには、以下。(Excelを閉じる前に止めておくように)

 Sub test2()
    Application.OnTime dw, Procedure:="test", Schedule:=False
 End Sub
(???) 2015/10/05(月) 17:45

なんて優しいお方!!
本当に有難う御座いました助かりました♪

上記の2種類のコードを標準モジュールに入れればよいのでしょうか?(*´∀`*)
(ayapan) 2015/10/05(月) 17:54


また、例えばA1のセルをコピーしてB1のセルに貼る、A2のセルをコピーしてB2のセルに貼るといった感じでA300までしたいのですがもしよかったら教えてください♪(*´∀`*)
(ayapan) 2015/10/05(月) 19:05

全部コピーせずとも、変わるのは一部でしょうから…。

 Sub test()
    Dim i As Long

    With Sheets(1)
        For i = 1 To 300
            If .Cells(i, "A").Value <> .Cells(i, "B").Value Then
                .Cells(i, "B").Value = .Cells(i, "A").Value
            End If
        Next i
    End With
    dw = DateAdd("S", 5, Now)
    Application.OnTime dw, "test"
 End Sub
(???) 2015/10/06(火) 09:28

 失礼します。

 処理効率だけを考えるなら、セルの書き込み回数を極力減らしたほうがいいと思いますので

 Sub test()
    With Sheets(1)
        .Range("B1:B300").Value = .Range("A1:A300").Value
    End With
    dw = DateAdd("S", 5, Now)
    Application.OnTime dw, "test"
 End Sub

 でも、よろしいかと思います。

(β) 2015/10/06(火) 09:53


ご要望通りコーディングしてみていますが、そもそもセルの値を別セルに代入するだけなら、B1セルに「=A1」とかするのがベストですねぇ。
本当に5秒毎にコピーなんて必要なのでしょうか? コピー先が変わるわけでもなし…。
(???) 2015/10/06(火) 10:52

本当に色々有難う御座います!(*´∀`*)

実は仰るとおり、5秒毎にコピー元とコピー先のデータが変わるわけではないのですが、
リアルタイムに可変するデータがありまして、ある条件に達したときに知らせてくれる
VBAを作ったのですが、うまくアラームが上がらずに人の手でコピーしたときや手打ちで
データを変えたときにアラームが上がる仕様になってしまったので自動でコピーを繰り返せば
アラームが上がるように出来ると考えました。

おそらくそんなことしなくてももっと良い方法があるとは思うのですが。。。。

この度は本当に有難う御座いました!(*´∀`*)
皆様に良い事がありますように♪
(ayapan) 2015/10/06(火) 14:44


βさんも本当に有難う御座いました!(*´∀`*)

本当に助かりました!大切に使わせて頂きます!!
(ayapan) 2015/10/06(火) 14:46


コメント返信:

[ 一覧(最新更新順) ]


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