나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내
작성자:  

 황기성 (latinum)

추천:  2
파일:     Question36_es.xls (32KB) 조회:  1230
제목:   [RE]질문올립니다. 부탁드립니다.
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

1. 엑셀 버전(95,97,2000,2002): 2000
2. 윈도우즈의 버전(win95,win98,winME,winNT,win2000,winXP): winXP
3. CPU (486,PentiumI/II/III/IV...): PentiumIV
4. RAM (32,64,128,256,512MB,1G...): 128

* 아래줄에 질문을 작성하세요 >>

Ontime메서드를 작성하다가 안되는 부분이 있어서 질문올립니다. 질문내용은 첨부파일 안에 있습니다.
예전에도 도움을 받았었는데 고맙습니다. 항상 행복하시고 건강하십시요.
==============[김상수님 글에 대한 답변입니다]==============
안녕하세요? 김상수 님!

간단히...아래와 같이 하십시오.

Option Explicit

'프로시저를 위한 모듈 수준 변수 선언

Dim lngT As Long
Dim datTime As Date
Dim rngS(1 To 2) As Range

Sub dhStart()

Const Es As String = "MagicSheet & 엑사모"
    Set rngS(1) = Range("G2")
    Set rngS(2) = Range("B1")
    lngT = 1
    
    rngS(1).ClearContents
    MsgBox "1초 뒤부터 G2에 B열의 데이터가 1초마다 변경됩니다!", vbInformation, Es
    
    '원하는 시간에 시작하도록 변경하세요
    Application.OnTime Now() + TimeValue("00:00:01"), "dhAutoTimer"
    
End Sub

Sub dhAutoTimer()
'예를 간단히 하기 위해 20으로 제한 했스니다
    If lngT >= 20 Then
        Exit Sub
    Else
        lngT = lngT + 1
        rngS(1).Value = rngS(2).Offset(lngT, 0).Value
    End If
    '시간을 변경하시려면
    'TimeValue("00:00:01")에서 시간을 변경하세요
    datTime = Now() + TimeValue("00:00:01")
    Application.OnTime datTime, "dhAutoTimer" '재귀 호출
End Sub

그럼..행운이 있으시길...!
 
[불량 게시물 신고]  
김상수황기성님 감사드립니다. 매번 신세만 지게 되는군요. 항상 건강하시고 행복하세요.08-27 (21:59)
삭제 ■신고
        
  

작성일 : 2003-08-27(14:36)
최종수정일 : 2003-08-27(14:36)
 


 ◎ 관련글

  제 목   작성자   날짜
질문올립니다. 부탁드립니다. 김상수 2003-08-27
[RE]질문올립니다. 부탁드립니다. 황기성 2003-08-27