2014-02-13 2 views
1

저는 프로그래머가 아닙니다. VBA에 도움이 필요합니다. 나는 매일의 끝에 변화하는 세포의 가치를 구하려고 노력하고있다. 셀이 실시간 데이터를 받고 있기 때문에 다음 날 다른 값으로 변경되기 전에 하루가 끝날 때 다른 셀에 셀 값을 저장하고 싶습니다. 이전 데이터를 저장하고 계산에 사용하고 싶습니다. 나는 그것을 매일 자동으로하고 싶다. 엑셀을 사용하면 어떻게 할 수 있습니까? 귀하의 도움을 크게 주시면 감사하겠습니다.셀 저장 값이 Excel에서

+0

'하루 종일'에 셀 값을 변경하는 코드는 무엇입니까? –

+0

또한 셀의 주소는 무엇이며 언제 저장을 수행해야합니까 ?? –

답변

1

매일 오후 5시 또는 5시 이후에 파일을 저장하고 닫으 려한다고 가정합니다. 대신 다음 코드를 사용하여 통합 문서를 닫기 전에 실행되는 코드의 결과를 검토 할 수 있습니다, 또는

Option Explicit 
Private Sub Workbook_BeforeClose(Cancel As Boolean) 
    Dim sht As Worksheet 
    Dim celLive As Range 
    Dim celSave As Range 

    If Hour(Now()) >= 17 Then 
    ' ### change the below values to match your workbook structure ### 
     Set sht = Sheets("MySheet") 
     Set celLive = sht.Range("A1") 
     Set celSave = sht.Range("B1") 

     celSave.Value = celLive.Value 
     ActiveWorkbook.Save 
    End If 
End Sub 

: 그 가정이 정확하면 통합 문서의 구조에 맞게 다음과 같은 코드를 수정

Option Explicit 
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) 
    Dim sht As Worksheet 
    Dim celLive As Range 
    Dim celSave As Range 

    If Hour(Now()) >= 17 Then 
    ' ### change the below values to match your structure ### 
     Set sht = Sheets("MySheet") 
     Set celLive = sht.Range("A1") 
     Set celSave = sht.Range("B1") 

     celSave.Value = celLive.Value 
     With Application 
      .EnableEvents = False 
      ActiveWorkbook.Save 
      .EnableEvents = True 
     End With 
    End If 
End Sub 

두 방법 중 하나에 대한 코드를 통합 문서 모듈에 저장하면 실행되지 않습니다.

+0

고맙습니다. – matthew