Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.misc
Saxman
 
Posts: n/a
Default Macro With Timer Event

I wish to write a macro using the normal tools which consists of a simple
copy/paste over series of events.

How can I incorporate a timer to delay the copy/paste events for something
like 30 to 60 seconds?

Is there a useful bit of code that I can obtain and paste into the code
that I will be creating or will it require something like a hidden dialogue
box with a timer on it?
  #2   Report Post  
Posted to microsoft.public.excel.misc
Dave O
 
Posts: n/a
Default Macro With Timer Event

VBA has a function called Timer, a long-type integer that represents
the current number of seconds since midnight. You can use this in code
to create a delay of a number of seconds like this:

Sub Delay()
Dim Beg As Long

Beg = Timer
Do
Loop Until Timer - Beg = 30

End Sub

This assigns the variable Beg (for Begin) with the current Timer value.
Then a DO loop starts that does nothing but loop until 30 seconds
elapses.

Does that do it for you?

  #3   Report Post  
Posted to microsoft.public.excel.misc
Saxman
 
Posts: n/a
Default Macro With Timer Event

On 9 Dec 2005 07:14:45 -0800, Dave O wrote:

VBA has a function called Timer, a long-type integer that represents
the current number of seconds since midnight. You can use this in code
to create a delay of a number of seconds like this:

Sub Delay()
Dim Beg As Long

Beg = Timer
Do
Loop Until Timer - Beg = 30

End Sub

This assigns the variable Beg (for Begin) with the current Timer value.
Then a DO loop starts that does nothing but loop until 30 seconds
elapses.

Does that do it for you?


I'll let you know!

Thanks.
  #4   Report Post  
Posted to microsoft.public.excel.misc
Saxman
 
Posts: n/a
Default Macro With Timer Event

On 9 Dec 2005 07:14:45 -0800, Dave O wrote:

VBA has a function called Timer, a long-type integer that represents
the current number of seconds since midnight. You can use this in code
to create a delay of a number of seconds like this:

Sub Delay()
Dim Beg As Long

Beg = Timer
Do
Loop Until Timer - Beg = 30

End Sub

This assigns the variable Beg (for Begin) with the current Timer value.
Then a DO loop starts that does nothing but loop until 30 seconds
elapses.

Does that do it for you?


Below is the code which gives me a compile error on the 2nd Sub Delay().
It is a simple copy from sheet 1 to sheets 2,3,4 and 5. Can you see
anything wrong. Help much appreciated.

Thanks.
.................................................. ....................

Sub Macro1()
'
' Macro1 Macro
' Macro recorded 10/12/2005 by John
'
' Keyboard Shortcut: Ctrl+m
'
Range("A1:A5").Select
Selection.Copy
Sheets("Sheet2").Select
ActiveSheet.Paste
End Sub
Sub Delay()
Dim Beg As Long

Beg = Timer
Do
Loop Until Timer - Beg = 30
Sheets("Sheet1").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet3").Select
ActiveSheet.Paste
End Sub
Sub Delay()
Dim Beg As Long

Beg = Timer
Do
Loop Until Timer - Beg = 30
Sheets("Sheet1").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet4").Select
ActiveSheet.Paste
End Sub
Sub Delay()
Dim Beg As Long

Beg = Timer
Do
Loop Until Timer - Beg = 30
Sheets("Sheet1").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet5").Select
ActiveSheet.Paste
Sheets("Sheet1").Select
End Sub
  #5   Report Post  
Posted to microsoft.public.excel.misc
Dave O
 
Posts: n/a
Default Macro With Timer Event

Hi, Sax-
The reason you got an error is because you have "ambiguous" names for
your routines: you have 3 macros all named "Delay". You need to make
them unique, maybe Delay1, Delay2, and Delay3, or combine them all into
one routine called Delay, which I've done below.

Sub Delay()
Dim Beg As Long

Beg = Timer
Do
Loop Until Timer - Beg = 30
Sheets("Sheet1").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet3").Select
ActiveSheet.Paste

Beg = Timer
Do
Loop Until Timer - Beg = 30
Sheets("Sheet1").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet4").Select
ActiveSheet.Paste

Beg = Timer
Do
Loop Until Timer - Beg = 30
Sheets("Sheet1").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Sheet5").Select
ActiveSheet.Paste
Sheets("Sheet1").Select
End Sub



Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Event Macro adjustment needed - need to change font color also nick s Excel Worksheet Functions 2 November 28th 05 05:50 PM
It seems to me that I need an event Macro, nick s Excel Worksheet Functions 8 November 28th 05 05:37 PM
Clear Cell based on event w/o macro? Paul987 Excel Worksheet Functions 2 October 27th 05 08:44 PM
Closing File Error jcliquidtension Excel Discussion (Misc queries) 4 October 20th 05 12:22 PM
Macro triggered by an event AussieAVguy Excel Discussion (Misc queries) 2 June 16th 05 05:51 AM


All times are GMT +1. The time now is 07:13 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"