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

Excel에서 날짜를 기준으로 셀을 보호하는 방법은 무엇입니까?

일반적으로 다른 사용자가 셀 값을 편집하거나 수정하지 못하도록 워크 시트를 보호 할 수 있지만 경우에 따라 날짜를 기준으로 셀을 보호해야합니다. 예를 들어 다른 셀을 보호하고 싶지만 다음 스크린 샷과 같이 오늘 날짜의 셀 값만 수정하도록 허용합니다.이 기사에서는 날짜를 기준으로 셀을 보호하는 방법에 대해 설명합니다.

문서는 날짜까지 보호 1

VBA 코드로 오늘 날짜 행을 제외한 모든 행 보호

VBA 코드로 날짜가 지난 모든 행을 보호하십시오.


화살표 블루 오른쪽 거품 VBA 코드로 오늘 날짜 행을 제외한 모든 행 보호

오늘 날짜와 같은 행만 수정할 수 있도록 허용합니다. 다음 코드가 도움이 될 수 있습니다. 다음과 같이하십시오.

1. 날짜를 기준으로 셀을 보호하려는 시트 탭을 마우스 오른쪽 단추로 클릭 한 다음 코드보기 컨텍스트 메뉴에서 튀어 나온 응용 프로그램 용 Microsoft Visual Basic 창에서 다음 코드를 복사하여 빈 모듈에 붙여 넣으십시오.

VBA 코드 : 오늘 날짜 행을 제외한 모든 행 보호 :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby Extendoffice 20161025
    If Range("E" & Selection.Row).Value <> Date Then
        ActiveSheet.Protect Password:="111111"
        MsgBox "Only today's date row can be edited!", vbInformation, "Kutools for Excel"
    ElseIf Range("E" & Selection.Row).Value = Date Then
        ActiveSheet.Unprotect Password:="111111"
        ActiveSheet.EnableSelection = xlNoRestrictions
    End If
End Sub

문서는 날짜까지 보호 2

주의 사항: 위 코드에서 문자 E 날짜가있는 열 헤더입니다.“111111”는이 시트를 보호하기위한 암호입니다. 필요에 따라 변경할 수 있습니다.

2. 그런 다음이 코드 창을 저장하고 닫습니다.

(1.) 오늘 날짜 행 이외의 다른 셀을 클릭하면 셀을 편집 할 수 없음을 알리는 프롬프트 상자가 나타납니다. 스크린 샷을 참조하십시오.

문서는 날짜까지 보호 3

(2.) 오늘 날짜와 같은 행을 클릭하고 편집하면 성공적으로 수정됩니다. 스크린 샷을 참조하십시오.

문서는 날짜까지 보호 4


화살표 블루 오른쪽 거품 VBA 코드로 날짜가 지난 모든 행을 보호하십시오.

날짜가 지난 모든 행을 보호해야하는 경우 오늘 및 미래 날짜 행만 수정하도록 허용하고 다음 VBA 코드를 적용하십시오.

1. 날짜를 기준으로 셀을 보호하려는 시트 탭을 마우스 오른쪽 단추로 클릭 한 다음 코드보기 컨텍스트 메뉴에서 튀어 나온 응용 프로그램 용 Microsoft Visual Basic 창에서 다음 코드를 복사하여 빈 모듈에 붙여 넣으십시오.

VBA 코드 : 모든 행 보호 날짜가 지났습니다.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'Updateby Extendoffice 20161025
  Dim xRow As Long
  xRow = 2
  ThisWorkbook.ActiveSheet.Unprotect Password:="111111"
  ThisWorkbook.ActiveSheet.Cells.Locked = False
  Do Until IsEmpty(Cells(xRow, 5))
    If Cells(xRow, 5) < Date Then
      Rows(xRow).Locked = True
    End If
    xRow = xRow + 1
  Loop
  ThisWorkbook.ActiveSheet.Protect Password:="111111"
End Sub

문서는 날짜까지 보호 5

주의 사항: 위 코드에서 숫자 5 날짜가있는 열 번호입니다.“111111”는이 시트를 보호하기위한 암호입니다. 필요에 따라 변경할 수 있습니다.

3. 그런 다음이 코드 창을 저장하고 닫습니다.

(1.) 셀 날짜가 지났음을 클릭하면 셀을 편집 할 수 없음을 알리는 프롬프트 상자가 나타납니다. 스크린 샷을 참조하십시오.

문서는 날짜까지 보호 6

(2.) 오늘 날짜 또는 미래 날짜의 값을 변경하기 위해 행의 셀을 클릭하면 성공적으로 수정됩니다. 스크린 샷 참조 :

문서는 날짜까지 보호 7


최고의 사무 생산성 도구

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 하단
코멘트 (30)
아직 평가가 없습니다. 가장 먼저 평가하세요!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
허점: "코드 보기" 옵션을 사용하여 비밀번호를 다른 사람이 볼 수 있습니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
모든 셀이 메시지를 표시하지만 편집할 수 있으므로 작동하지 않습니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요 열 바로 위의 날짜로 열을 잠글 수 있습니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
Private Sub 워크시트_Change(ByVal Target As Range)

'구독 http://youtube.com/excel10tutorial

'기부로 채널 지원 http://patreon.com/excel10tutorial

범위로 희미한 열

'여기에 올바른 시트 이름을 설정하십시오.

ThisWorkbook.Sheets("AGOSTO-22") 사용

. "ABCDE" 보호 해제

.UsedRange.Columns의 각 열에 대해

col.EntireColumn.Locked = col.Range("A1").Value <> 날짜

다음 열

."ABCDE" 보호

.EnableSelection = xlNoRestrictions



최종 하위
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요 열에서 바로 위에 있는 날짜에 따라 특정 셀을 잠글 수 있습니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, 루시스입니다.
문제를 좀 더 구체적으로 말씀해 주시겠습니까? 또는 문제로 스크린샷을 첨부할 수 있습니다.
감사합니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕 스카이양

예, 여기에 스크린샷이 있습니다. 도움이 되었기를 바랍니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
여기있다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕, 루시스
날짜가 지난 열을 잠그고 오늘과 미래의 열만 수정할 수 있다는 것을 의미합니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
옳은! 어떻게 해야 할까요?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕, 루이스
A1의 날짜 셀은 어떻습니까? 수동으로 입력했습니까 아니면 수식으로 입력했습니까 =now()? 수식 셀인 경우 잠긴 열이 날짜 변경과 함께 변경됩니다.
귀하의 회신을 기대하겠습니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕 스카이양

예, A1 셀에는 =now() 수식이 있습니다.

감사합니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
여보세요.....


오늘 날짜 행을 제외한 모든 행 보호에 대한 코드를 사용하고 있습니다........



Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'업데이트바이 Extendoffice 20161025
If Range("A" & Selection.Row).Value <> Date then
ActiveSheet.Protect 비밀번호:="111111"
MsgBox "오늘 날짜 행만 편집할 수 있습니다!", vbInformation, "Kutools for Excel"
ElseIf Range("E" & Selection.Row).Value = 날짜 다음
ActiveSheet.Unprotect 암호:="111111"
ActiveSheet.EnableSelection = xlNoRestrictions
END IF
최종 하위


저장하고 셀을 클릭하면 오늘 날짜 행만 편집할 수 있다는 메시지가 표시됩니다. 하지만 셀을 두 번 클릭하면 편집할 수 있습니다... pls help
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
이것은 잘 작동합니다. 그러나 행 3의 날짜를 기반으로 열을 잠금 해제하도록 전환하려면 어떻게 해야 합니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
VBA를 처음 접하는 사람으로서 2행에서 xRow = 4인 이유를 설명해 주시겠습니까?



감사
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
행 번호 때문에. 1 헤더가 있습니다
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕,

이 코드를 실행하는 동안 그림과 같이 오류가 발생합니다.
또한 변경하고 싶은 스냅샷을 엑셀에 첨부합니다.

오늘 및 미래 날짜만 포함된 셀을 편집할 수 있도록 내 Excel 파일에 따라 어디를 변경해야 하는지 코드에서 안내할 수 있습니까 ???
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕, 카란
테이블에 병합된 셀이 있기 때문에 병합된 셀 테이블에서 위의 코드를 올바르게 적용할 수 없습니다.
다른 좋은 아이디어가 있으면 여기에 댓글을 달아주세요. 고맙습니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, 동일한 작업을 수행했지만 "Selection.Row"를 "Selection.Columns"로, "E"를 "5"(날짜가 있는 행 번호)로 교체하여 VBA 코드로 오늘 날짜 열을 제외한 모든 열을 보호하려고 했지만 계속 오류 1004가 나타납니다!

어떤 도움을 주시겠습니까?

고맙습니다
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, 동일한 작업을 수행했지만 "Selection.Row"를 "Selection.Columns"로, "E"를 "5"(날짜가 있는 행 번호)로 교체하여 VBA 코드로 오늘 날짜 열을 제외한 모든 열을 보호하려고 했지만 계속 오류 1004가 나타납니다!

어떤 도움을 주시겠습니까?

고맙습니다
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요
필요한 열에 이 코드를 적용하려면 다음 VBA 코드를 사용하십시오.(참고: 코드에서 5는 행 번호에 날짜가 포함되어 있으므로 필요에 따라 변경하십시오.)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
범위로 Dim xRg
xRg 설정 = Target.Worksheet.Cells(5, Target.Column)
If xRg <> 날짜 다음
ActiveSheet.Protect 비밀번호:="111111"
MsgBox "오늘 날짜 행만 편집할 수 있습니다!", vbInformation, "Kutools for Excel"
ElseIf xRg.Value = 날짜 다음
ActiveSheet.Unprotect 암호:="111111"
ActiveSheet.EnableSelection = xlNoRestrictions
END IF
최종 하위

시도해보십시오. 도움이 되길 바랍니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
고맙습니다! 죄송합니다. 지금까지 답장을 받지 못했습니다. 제 이메일에 문제가 있을 수 있습니다.

효과가 있었다! 충분히 감사하다고 말할 수 없습니다! 정말 감사합니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕,
도움이 될 수 있어 기쁩니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕,

이번 달 또는 이번 주를 포함하지 않는 열을 보호하기 위해 이것을 확장하려고 합니다. "날짜"를 "월" 또는 "주"로 바꾸려고 했지만 작동하지 않았습니다.

사용자가 이번 주 이외의 열을 편집하거나 입력할 수 없는 주 시트에 대한 샘플을 첨부했습니다.

그것에 대한 조언이 있습니까? 아니면 실제 날짜를 사용하여 해당 월의 일을 반영해야 합니까?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
도움을 주셔서 감사합니다. 친구에게 감사합니다. 큰 도움이 됩니다. 그리고 긴장을 풀었다.
안전
감사합니다.Rohit Khanna
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요 한 가지 문제에 직면해 있습니다. 파일을 닫고 같은 날짜에 다시 열면 코드가 작동하지 않습니다. 제발 도와주세요 메신저 붙어
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕, 로히트
코드를 유지하려면 통합 문서를 Excel 매크로 사용 통합 문서 형식으로 저장해야 합니다. 시도해 보세요. 감사합니다!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요 제가 해냈지만 셀을 누르면 편집할 수 없다는 메시지가 표시되지만 keyborad를 누르면 여전히 셀에 쓸 수 있습니다.
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, 나는 미래의 날을 보호하고 현재와 과거의 편집을 허용하고 싶습니다. 어떻게 해야 하나요?
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
안녕하세요, Miguel,미래를 보호하기 위해 아래 코드를 적용하십시오. Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'업데이트바이 Extendoffice
길이만큼 xRow 희미하게 만들기
x행 = 2
ThisWorkbook.ActiveSheet.Unprotect 암호:="111111"
ThisWorkbook.ActiveSheet.Cells.Locked = False
IsEmpty(Cells(xRow, 5))까지 수행
If Cells(xRow, 5) > 날짜 다음
행(xRow).Locked = True
END IF
x행 = x행 + 1
고리
ThisWorkbook.ActiveSheet.Protect 암호:="111111"
End Sub시도해보세요. 도움이 되길 바랍니다!
아직 코멘트가 없습니다
여러분의 의견을 남겨
게스트로 게시
×
이 게시물 평가 :
0   등장 인물
추천 위치

Follow Us

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