Note: The other languages of the website are Google-translated. Back to English

셀이 변경 될 때 날짜와 시간을 자동으로 기록하는 방법은 무엇입니까?

정적 날짜 및 시간을 수동으로 삽입하거나 수식을 사용하여 시스템 시간에 따라 변경되는 동적 날짜를 삽입하는 것은 쉽습니다. 값을 변경하거나 입력 할 때 날짜와 시간을 자동으로 기록하려는 경우이 문제는 처리하기에 다소 다를 수 있습니다. 그러나이 기사에서는 다음 단계를 통해이 작업을 해결할 수 있습니다.

VBA 코드로 셀이 변경되면 자동으로 날짜 및 시간 기록

Office 탭 Office에서 탭 편집 및 찾아보기를 활성화하고 작업을 훨씬 쉽게 ...
Excel용 Kutools는 대부분의 문제를 해결하고 생산성을 80% 증가시킵니다.
  • 무엇이든 재사용 : 가장 많이 사용되거나 복잡한 수식, 차트 및 기타 항목을 즐겨 찾기에 추가하고 나중에 빠르게 재사용 할 수 있습니다.
  • 20 개 이상의 텍스트 기능 : 텍스트 문자열에서 숫자 추출; 텍스트의 일부 추출 또는 제거 숫자와 통화를 영어 단어로 변환합니다.
  • 병합 도구: 여러 통합 문서와 시트를 하나로; 데이터 손실없이 여러 셀 / 행 / 열 병합; 중복 행과 합계를 병합합니다.
  • 분할 도구: 값을 기준으로 데이터를 여러 시트로 분할합니다. 하나의 통합 문서에서 여러 Excel, PDF 또는 CSV 파일로; 한 열에서 여러 열로.
  • 붙여 넣기 건너 뛰기 숨겨진 / 필터링 된 행; 수와 합계 배경색 별; 개인화 된 이메일을 여러 수신자에게 대량으로 보냅니다.
  • 슈퍼 필터 : 고급 필터 구성표를 만들고 모든 시트에 적용하십시오. 종류 주, 일, 빈도 등으로; 필터 굵게, 수식, 주석으로 ...
  • 300개 이상의 강력한 기능; Office 2007-2021 및 365에서 작동합니다. 모든 언어를 지원합니다. 기업 또는 조직에서 쉽게 배포할 수 있습니다.

화살표 블루 오른쪽 거품 VBA 코드로 셀이 변경되면 자동으로 날짜 및 시간 기록

예를 들어, 값 범위가 있는데 이제 B 열에 새 값을 변경하거나 입력하면 다음 스크린 샷과 같이 C 열에 현재 날짜와 시간이 자동으로 기록됩니다.

문서 업데이트 시간 값 변경 1

다음 VBA 코드로이 작업을 완료 할 수 있습니다. 다음과 같이하십시오 :

1. 누르고 ALT + F11 키를 눌러 Microsoft Visual Basic for Applications 창.

2. 그런 다음 왼쪽에서 사용한 워크 시트를 선택합니다. 프로젝트 탐색기, 두 번 클릭하여 모듈를 클릭 한 다음 다음 VBA 코드를 복사하여 빈 모듈에 붙여 넣습니다.

VBA 코드 : 셀 변경시 자동으로 날짜 및 시간 기록

Private Sub Worksheet_Change(ByVal Target As Range)
'Update 20140722
Dim WorkRng As Range
Dim Rng As Range
Dim xOffsetColumn As Integer
Set WorkRng = Intersect(Application.ActiveSheet.Range("B:B"), Target)
xOffsetColumn = 1
If Not WorkRng Is Nothing Then
    Application.EnableEvents = False
    For Each Rng In WorkRng
        If Not VBA.IsEmpty(Rng.Value) Then
            Rng.Offset(0, xOffsetColumn).Value = Now
            Rng.Offset(0, xOffsetColumn).NumberFormat = "dd-mm-yyyy, hh:mm:ss"
        Else
            Rng.Offset(0, xOffsetColumn).ClearContents
        End If
    Next
    Application.EnableEvents = True
End If
End Sub

문서 업데이트 시간 값 변경 1

3. 그런 다음이 코드를 저장하고 닫아 워크 시트로 돌아갑니다. 이제 셀 값을 변경하거나 B 열에 새 데이터를 입력하면 날짜와 시간이 C 열에 자동으로 기록됩니다.

배송 시 요청 사항:

1. 위의 코드에서 "B : B”을이 스크립트에서 셀 값을 변경하려는 다른 열에 추가합니다. WorkRng = Intersect (Application.ActiveSheet.Range ( "B : B"), Target) 설정.

2. 이것으로 x오프셋 열 = 1 스크립트를 사용하면 변경 값 열 옆의 첫 번째 열에 날짜와 시간을 삽입하고 업데이트 할 수 있습니다. 숫자 1을 2,3,4,5와 같은 다른 숫자로 변경할 수 있습니다. 즉, 날짜가 삽입됩니다. 변경된 값 열 외에 두 번째, 세 번째, 네 번째 또는 다섯 번째 열.

3. 변경된 열의 값을 삭제하면 날짜와 시간도 함께 삭제됩니다.


최고의 사무 생산성 도구

Excel용 Kutools는 대부분의 문제를 해결하고 생산성을 80% 증가시킵니다.

  • 재사용: 빠르게 삽입 복잡한 공식, 차트 그리고 이전에 사용한 모든 것; 셀 암호화 암호로; 메일 링리스트 생성 이메일 보내기 ...
  • 슈퍼 포뮬러 바 (여러 줄의 텍스트와 수식을 쉽게 편집 할 수 있습니다.) 레이아웃 읽기 (많은 수의 셀을 쉽게 읽고 편집합니다.) 필터링 된 범위에 붙여 넣기...
  • 셀 / 행 / 열 병합 데이터 손실없이; 셀 내용 분할; 중복 행 / 열 결합... 중복 셀 방지; 범위 비교...
  • 중복 또는 고유 선택 행; 빈 행 선택 (모든 셀이 비어 있음); 슈퍼 찾기 및 퍼지 찾기 많은 통합 문서에서; 무작위 선택 ...
  • 정확한 사본 수식 참조를 변경하지 않고 여러 셀; 참조 자동 생성 여러 시트에; 글 머리 기호 삽입, 확인란 등 ...
  • 텍스트 추출, 텍스트 추가, 위치 별 제거, 공간 제거; 페이징 부분합을 만들고 인쇄합니다. 셀 내용과 주석 간 변환...
  • 슈퍼 필터 (다른 시트에 필터 구성표 저장 및 적용) 고급 정렬 월 / 주 / 일, 빈도 등 특수 필터 굵은 기울임 꼴로 ...
  • 통합 문서와 워크 시트 결합; 키 열을 기반으로 테이블 병합; 데이터를 여러 시트로 분할; xls, xlsx 및 PDF 일괄 변환...
  • 300개 이상의 강력한 기능. Office / Excel 2007-2021 및 365를 지원합니다. 모든 언어를 지원합니다. 기업 또는 조직에서 쉽게 배포할 수 있습니다. 전체 기능은 30일 무료 평가판입니다. 60일 환불 보장.
kte 탭 201905

Office Tab은 Office에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만듭니다.

  • Word, Excel, PowerPoint에서 탭 편집 및 읽기 사용, Publisher, Access, Visio 및 Project.
  • 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 만듭니다.
  • 생산성을 50% 높이고 매일 수백 번의 마우스 클릭을 줄입니다!
officetab 하단
코멘트 (108)
아직 평가가 없습니다. 가장 먼저 평가하세요!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
한 페이지에 이 작업을 여러 번 수행하는 코드를 어떻게 작성합니까? 열 B의 텍스트, C의 날짜, D의 텍스트, E의 날짜?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
[인용]한 페이지에 이것을 여러 번 수행하는 코드를 작성하는 방법 예. 열 B의 텍스트, C의 날짜, D의 텍스트, E의 날짜?힐러리나는 이것이 구식이라는 것을 알고 있지만 길고 쉬운 방법은 변수 선언을 복사하고 새 변수(예: WorkRng1 및 Rng1)를 만드는 것입니다. 또한 "if" 문을 복사하고 변수를 새 변수 이름으로 변경해야 합니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
[인용]한 페이지에 이것을 여러 번 수행하는 코드를 작성하는 방법 예. 열 B의 텍스트, C의 날짜, D의 텍스트, E의 날짜?힐러리코드는 다음과 같습니다. Private Sub Worksheet_Change(ByVal Target As Range) 'Update 20140722 Dim WorkRng As Range Dim Rng As Range Dim xOffsetColumn As Integer '업데이트 중인 열을 선택하려면 범위를 변경하십시오. 즉, ("A: A") 또는 ("B:B") Set WorkRng = Intersect(Application.ActiveSheet.Range("E:E"), Target) xOffsetColumn = 1 '두 번째 타임스탬프의 경우 'WorkRng1, Rng1 등 Dim WorkRng1 As Range Dim Rng1 As Range Dim xOffsetColumn1 As Integer Set WorkRng1 = Intersect(Application.ActiveSheet.Range("G:G"), Target) xOffsetColumn1 = 1 '첫 번째 타임 스탬프 If Not WorkRng Is Nothing 그런 다음 Application.EnableEvents = WorkRng의 각 Rng에 대해 False If not VBA.IsEmpty(Rng.Value) then Rng.Offset(0, xOffsetColumn).Value = Now Rng.Offset(0, xOffsetColumn).NumberFormat = "mm/dd/ yyyy" Else Rng.Offset(0, xOffsetColumn).ClearContents End If Next Application.EnableEvents = True End If '두 번째 타임스탬프인 경우 WorkRng1이 아무것도 아닌 경우 Application.EnableEve nts = WorkRng1의 각 Rng1에 대해 거짓 VBA.IsEmpty(Rng1.Value)가 아닌 경우 Rng1.Offset(0, xOffsetColumn1).Value = 현재 Rng1.Offset(0, xOffsetColumn1).NumberFormat = "mm/dd/yyyy" 그렇지 않은 경우 Rng1.Offset(0, xOffsetColumn1).ClearContents End If Next Application.EnableEvents = True End If End Sub
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
열 범위에 대해 이 작업을 수행하려면 어떻게 합니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
범위(B:B)를 다음과 같이 변경합니다. D행의 10~20열에 대해 10~20열(D5:D40)에 대해 (5:40) 도움이 되었으면 합니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
죄송합니다. 열을 행으로 바꾸지만 여전히 작동합니다. (D:P) D열에서 P로 (D5:D5) 5행에서 D열에서 P로
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
저장하면 작동하지만 다시 열면 작동하지 않습니다
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
[인용]저장하면 작동하지만 다시 열면 작동하지 않습니다아리프[/인용] Aarif와 같은 문제... XNUMX분 전에는 효과가 있었지만 지금은 그렇지 않습니다... 또한 날짜와 시간이 아닌 시간만 원했기 때문에 ".NumberFormat"을 다음과 같이 편집했습니다. 그냥 hh:mm:ss, 저장, 테스트했습니다... 다르지 않습니다... 여전히 날짜와 시간을 넣고...? VB를 다시 열고 구분된 텍스트를 입력하고 다시 저장했지만 여전히 좋지 않은 다음 세 번째로 수행하고 형식이 지시한 대로 수행되었고 갑자기 시간을 얻었습니다. 매우 이상하다. 처음 SEARCH 기능을 사용하여 내 눈으로 볼 수 있는 셀에서 값을 검색할 때부터 Excel에 귀신이 나온다고 오랫동안 생각했지만 Excel은 그것이 존재하지 않는다고 주장했습니다!? 도움을 줄 수 있는 Excel 전문가 또는 엑소시스트가 있습니까? 왜 내 VB를 무시하고 타임 스탬프를 찍지 않았습니까? 감사합니다
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
[인용]한 페이지에 이것을 여러 번 수행하는 코드를 작성하는 방법 예. 열 B의 텍스트, C의 날짜, D의 텍스트, E의 날짜?힐러리[/인용] 인용문에 대한 답은 무엇입니까
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
이것을 실행하기를 원하지만 활성 시트가 ​​아니므로 백그라운드에서 실행하고 B 열에 항목이 있을 때마다 업데이트하면 어떻게 됩니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
타임스탬프 열에 영향을 주는 열이 다른 여러 열의 합계인 경우에는 어떻게 됩니까? 예를 들어... 열 H는 =Sum(E+F+G)이고 열 H가 변경될 때마다 또는 본질적으로 열 E, F 또는 G가 변경될 때마다 열 I에서 타임스탬프를 수행하고 싶습니다. . 도와주시겠어요??
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
도움이 필요해요! 세 개의 셀 중 하나가 변경될 때마다 타임스탬프를 만들려고 합니다. 이 셀의 합이 변경되었을 때 이상적으로 이 작업을 수행하고 싶습니다. 예를 들어. 셀 E, F, G가 변경되고 셀 H는 해당 세 셀의 합이 됩니다. 셀 H가 변경되었을 때 셀 I에 타임스탬프를 지정하고 싶습니다. 이게 가능해?? 매우 감사합니다
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
위의 코드를 실행하려고 합니다. 그러나 기록하려는 변경 사항의 셀은 확인란에 연결되어 있으므로 "TRUE" 또는 "FALSE"입니다. 어떤 이유로 셀이 변경되면 코드가 작동하지 않습니다. 그러나 수동으로 "예"라고 입력하면 코드가 제대로 작동합니다. 알고 있는 이 문제에 대한 해결 방법이 있습니까? 고맙습니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
과거 데이터에 대해 이 작업을 수행할 수 있습니까? 어제 또는 한 달 전에 셀을 변경한 경우 이 코드 형식을 사용하여 해당 날짜를 검색할 수 있습니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
특정 변경 사항에 따라 타임 스탬프를 찍는 방법이 있습니까? 예를 들어, 공백, '확인' 및 '실행'을 포함한 드롭다운 옵션 열이 있는 스프레드시트가 있습니다. 작업이 완료되면 드롭다운을 사용하여 '확인'을 선택합니다. '확인'을 선택했을 때 날짜 스탬프를 연결하고 싶지만 '동작'을 선택했을 때는 연결하지 않았으면 합니다. 드롭다운의 '실행' 옵션은 작업 기한이 지났을 때 사용되지만 실제로는 항목이 완료되는 시점을 추적하려고 합니다. 위의 코드로 이것을 수행하는 방법이 있습니까? 감사해요!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
이 문제를 해결할 수 있었습니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
아주 좋은 질문입니다. 정리하셨나요?? 혹시 방법 공유 부탁드려도 될까요?
감사
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
범위를 ("A:Q")로 변경할 수 있지만 AQ 셀의 데이터가 변경/제거된 경우 "S"로 이동할 날짜와 시간이 필요합니다. 저는 VBA에 도전했습니다. 도움을 주시면 감사하겠습니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
죄송합니다. 방금 질문을 게시했는데 이에 대한 답변이 필요합니다... 이 댓글을 놓쳤을 것 같습니다... 누군가가 도움을 줄 수 있기를 바랍니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
인접한 셀 날짜만 변경되도록 변경하려면 어떻게 해야 합니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
변경된 셀 옆에 있는 셀 대신 특정 셀에 기록할 타임스탬프를 얻으려면 어떻게 합니까? 해당 셀 중 하나에서 변경이 발생할 때 셀 행에 타임 스탬프를 찍으려고 합니다. 타임 스탬프가 하나의 특정 셀에 기록되도록 하고 싶습니다. 누구든지 이것을 도와줄 수 있습니까? 고맙습니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, WB 감사에 좋은 자료입니다. 감사합니다. 코멘트가 추가되거나 수정될 때마다 WB의 어딘가에 날짜/시간이 기록되도록 이것을 변경하는 방법이 있습니까? 이것이 일반적인 질문이라는 것을 알고 있지만 가능한지 확실하지 않습니다(불행히도 MS 2010의 경우 .comment 속성에는 입력된 날짜를 식별할 수 있는 날짜 속성이 없습니다. Mike
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
A:A 열을 읽고 14자리 숫자가 입력된 경우에만 B:B에 타임스탬프를 제공하도록 구성하려면 어떻게 해야 합니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, VBA 코딩 도움이 필요합니다. 사람에게 할당되고 사례 상태가 있는 사례가 포함된 스프레드시트를 만들고 있습니다. 양수인은 Col H에 있고 Col H의 셀이 이름으로 업데이트되거나 변경될 때 Col I에 날짜 스탬프가 필요합니다. 마찬가지로 나는 Col J에 케이스 상태가 있고 상태가 입력되거나 변경될 때 Col K에 날짜 스탬프가 필요합니다. 또한 양수인 이름이나 상태가 아닌 경우 Col I 및 K의 날짜 스탬프가 비어 있어야 합니다. 도움을 주시면 감사하겠습니다. 감사해요
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
이 코드를 다른 곳에서 찾았고 사용하도록 수정했습니다. 제대로만 하면 셀이나 파일에 함수를 입력해서 열 때마다 날짜를 그날의 날짜로 바꾸는 것에 대해 걱정할 필요가 없다. - Excel 열기 - "Alt+F11" 누르기 - 변경 사항을 적용하려는 워크시트를 두 번 클릭(왼쪽에 나열됨) - 아래 코드를 복사/붙여넣기 - 해당하도록 Range(_:_) 입력 조정 업데이트할 열로 - 날짜를 표시하려는 열에 해당하도록 오프셋(0,_) 입력을 조정합니다(아래 버전에서는 D 열을 업데이트하고 F 열에 날짜를 표시하고 싶습니다. 따라서 D 열에서 2개 열에 대한 입력 항목 "2" - 저장 누르기 - 통합 문서에 동일한 코드가 필요한 다른 워크시트가 있는 경우 위의 단계를 반복하십시오. - 표시되는 열의 숫자 형식을 변경해야 할 수 있습니다. 날짜를 "일반"으로 변경하고 업데이트된 항목을 만든 후 열에 "####"이 표시되면 열 너비를 늘립니다. 아래 코드를 복사/붙여넣기: ____________________________________________________________ Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range(" D:D")) Is Nothing then Exit Sub Target.Offset(0, 2) = Date End Sub ___ _________________________________________________________ 행운을 빕니다...
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
이 코드는 클릭하면 날짜가 표시됩니다. 셀의 내용이 변경된 경우에만 날짜를 표시할 수 있습니까? 클릭하고 아무것도 변경하지 않으면 날짜가 표시되지 않거나 이전에 입력한 날짜가 유지됩니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
내가 매크로로 기록할 때 vloocup 수식을 사용하여 해당 날짜를 1년 21월 07일처럼 자동으로 2017일로 변경한 다음 다음 날 22년 07월 2017일로 변경했습니다. vba 코드가 있으면 자동으로 pls가 공유합니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
이 줄을 교체
Rng.Offset(0, xOffsetColumn).Value = 현재


Rng.Offset(0, xOffsetColumn).Value = 현재+1
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
코드 정말 감사합니다! 내가 찾던 바로 그!!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
도와주셔서 감사합니다 :-)
아직 코멘트가 없습니다
더보기
여러분의 의견을 남겨
게스트로 게시
×
이 게시물 평가 :
0   등장 인물
추천 위치

Follow Us

저작권 © 2009 - WWW.extendoffice.com. | 판권 소유. 에 의해 구동 ExtendOffice. | | 사이트 맵
Microsoft 및 Office 로고는 미국 및 / 또는 기타 국가에서 Microsoft Corporation의 상표 또는 등록 상표입니다.
Sectigo SSL로 보호