Computer >> 컴퓨터 >  >> 소프트웨어 >> Office

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

Excel에서 셀, 열 및 행을 잠그면 데이터를 자유롭게 보호할 수 있습니다. 워크시트를 보호하면 기본적으로 모든 셀이 잠깁니다. 편집할 수 없다는 의미입니다. 그러나 서로 다른 세포를 보호하면 보호되지 않은 세포에서 자유롭게 작업할 수 있습니다. 여기에서 셀 잠금 및 잠금 해제를 위한 다양한 Excel 기술을 볼 수 있습니다. 많은 기본 Excel 함수가 있습니다. 수식을 만드는 데 사용할 수 있습니다. 다시 말하지만, 워크시트를 보호하지 않으면 셀 잠금이 영향을 미치지 않습니다. 이 도움말에서는 6을 보여줍니다. 셀 잠금 및 잠금 해제 에 대한 이상적인 예 VBA를 사용하는 Excel에서 .

다음 워크북을 다운로드하여 스스로 연습하세요.

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 6가지 이상적인 예

Excel VBA 많은 복잡한 작업을 매우 쉽게 수행할 수 있습니다. 코드를 입력하거나 작성하면 됩니다. 이 문서에서는 VBA 를 적용합니다. 잠금 셀 잠금 해제 엑셀에서 . 설명을 위해 샘플 데이터 세트를 사용합니다. 예를 들어 다음 데이터세트에는 Salesman이 포함되어 있습니다. , 제품 , 및 순 매출 셀 범위 B4:D10 . 여기에서는 다른 셀 범위를 잠글 것입니다.

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

1. VBA를 사용하여 Excel 워크시트의 모든 셀 잠그기

첫 번째 예에서는 Excel 워크시트의 모든 셀을 잠그는 방법을 볼 수 있습니다. 따라서 다음 단계에 따라 작업을 수행하십시오.

단계:

  • 우선 개발자 ➤ Visual Basic으로 이동합니다. .

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

  • 결과적으로 VBA 창이 나타납니다.
  • 이제 삽입 ➤ 모듈을 선택합니다. .

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

  • 결과적으로 모듈 대화 상자가 나타납니다.
  • 다음으로 아래 코드를 복사하여 모듈 상자에 붙여넣습니다.
Sub AllCells()
Sheets("All Cells").Cells.Locked = True
Sheets("All Cells").Protect
End Sub

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

  • 파일을 저장하고 F5 키를 누릅니다. 코드를 실행하는 키입니다.
  • 따라서 셀을 수정하거나 수정하려고 하면 아래와 같은 경고 대화 상자가 나타납니다.

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

2. 특정 셀을 잠그기 위해 Excel VBA 적용

이제 특정 셀을 잠그는 코드를 보여드리겠습니다. 잠금 및 잠금 해제를 제어하는 ​​확인란도 삽입합니다. 따라서 작업을 수행하려면 다음 단계를 배우십시오.

단계:

  • 먼저 셀 범위의 이름을 B4:D10으로 지정합니다. 표1로 .

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

  • 다음으로 개발자 ➤ 삽입 ➤ 확인란을 클릭합니다. .

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

  • 그런 다음 원하는 위치에 확인란을 배치합니다.
  • 그런 다음 시트 이름을 마우스 오른쪽 버튼으로 클릭합니다.
  • 코드 보기 선택 컨텍스트 메뉴에서.

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

  • 팝아웃 대화 상자에 아래 코드를 입력합니다.
Private Sub CheckBox1_Click()
Range("Table1").Select
On Error Resume Next
If CheckBox1.Value = True Then
    Selection.Locked = False
    MsgBox Selection.Address & " Cell Range is Unlocked", vbInformation, "ExcelDemy"
Else
    Selection.Locked = True
    MsgBox Selection.Address & " Cell Range is Locked", vbInformation, "ExcelDemy"
End If
End Sub

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

  • 파일을 저장하고 F5 키를 눌러 코드를 실행합니다.
  • 따라서 상자를 선택하면 셀이 잠금 해제되고 아래와 같이 대화 상자가 표시됩니다.

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

  • 마찬가지로 상자를 선택 취소하면 셀이 잠깁니다.

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

3. VBA를 사용하여 수식이 있는 셀만 잠그기

그러나 수식이 있는 셀만 잠글 수 있습니다. 따라서 수식으로 셀을 잠그는 절차를 따르십시오.

단계:

  • 먼저 모듈 을 가져옵니다. 예 1의 단계에 따라 상자 .
  • 상자에 아래 코드를 입력하세요.
Sub LockCellsWithFormulas()
For Each Rng In ActiveSheet.Range("B5:D10")
If Rng.HasFormula Then
Rng.Locked = True
Else
Rng.Locked = False
End If
Next Rng
ActiveSheet.Protect "111"
End Sub

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

  • 그런 다음 RunSub 버튼을 눌러 코드를 실행하세요.
  • 여기서 이 코드가 수식을 입력한 셀을 잠그는 것을 볼 수 있습니다.
  • 예:D7 공식이 있습니다. 따라서 이 셀을 수정할 수 없습니다.

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

4. 일부 셀을 제외한 전체 워크시트 잠금

또한 지정할 몇 개의 셀을 제외하고 전체 워크시트를 잠글 수 있습니다. B5:D10이 있는 아래 코드를 보십시오. 잠금 해제 상태로 유지하려는 범위입니다. 이 범위 외에는 코드 실행 후 전체 워크시트가 잠깁니다.

Sub WorksheetExceptFewCells()
Dim wb As Workbook
Set wb = ActiveWorkbook
wb.Sheets("Entire Worksheet Except Few").Range("B5:D10").Locked = False
wb.Sheets("Entire Worksheet Except Few").Protect passowrd = "111"
End Sub

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

5. Excel에서 데이터 입력 후 셀 잠금

다시 말하지만 원하는 범위의 데이터를 입력한 후 셀을 잠글 필요가 있습니다. 이 예에서 B4:D10 데이터를 입력할 범위입니다. 따라서 엑셀에서 데이터를 입력한 후 셀을 잠그려면 다음 단계를 따르십시오.

단계:

  • 먼저 시트 이름을 마우스 오른쪽 버튼으로 클릭하고 코드 보기를 선택합니다. .
  • 대화 상자에 다음 코드를 입력합니다.
Dim rg As Range
Dim str As String
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Range("B4:D10"), Target) Is Nothing Then
    Set rg = Target.Item(1)
    str = rg.Value
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim xg As Range
    On Error Resume Next
    Set xg = Intersect(Range("B4:D10"), Target)
    If xg Is Nothing Then Exit Sub
    Target.Worksheet.Unprotect Password:="111"
    If xg.Value <> str Then xg.Locked = True
    Target.Worksheet.Protect Password:="111"
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("B4:D10"), Target) Is Nothing Then
    Set rg = Target.Item(1)
     str = rg.Value
End If
End Sub

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

  • RunSub 를 눌러 코드를 실행합니다. 버튼 또는 F5 키
  • 그런 다음 범위에 데이터 값을 입력합니다.
  • 자동으로 잠깁니다.
  • 수정을 시도하면 아래와 같은 경고창이 뜹니다.

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

6. VBA를 사용하여 Excel에서 셀 잠금 해제

지금까지 셀을 잠그는 방법에 대해 설명했습니다. 이제 아래 코드를 사용하여 Excel 통합 문서의 셀을 잠금 해제할 수 있습니다.

Sub UnlockCells()
Sheets("Unlock Cells").Cells.Locked = False
Sheets("Unlock Cells").Unprotect
End Sub

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

VBA 없이 Excel에서 셀을 잠그고 잠금 해제하는 방법

VBA를 사용하지 않고 셀을 잠그거나 잠금 해제할 수도 있습니다. . 셀 서식을 사용할 수 있습니다. 셀을 잠그거나 잠금 해제하는 대화 상자. 잠김 확인란을 선택해야 합니다. 세포를 잠그고 싶다면. 마찬가지로 셀의 잠금을 해제하려면 상자를 선택 해제하면 됩니다. 다시 말하지만, 워크시트나 통합 문서를 보호하지 않으면 셀을 잠가도 아무런 영향을 미치지 않습니다.

단계:

  • 우선 원하는 범위를 선택합니다.
  • 그런 다음 Ctrl 1 함께 키를 누릅니다.
  • 셀 서식을 반환합니다. 대화 상자.
  • 보호 아래 탭에서 잠김 을 선택/선택 취소합니다. 필요에 따라 상자.

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

  • 워크시트를 보호해야 하는 경우 검토 탭으로 이동하세요.
  • 여기서 시트 보호 를 선택하십시오. 보호 에서 탈락.
  • 이렇게 하면 시트가 보호됩니다.

VBA를 사용하여 Excel에서 셀을 잠그고 잠금 해제하는 방법

결론

이제부터는 셀 잠금 및 잠금 해제 를 할 수 있습니다. VBA를 사용하는 Excel에서 위에서 설명한 예를 따릅니다. Excel에서 특정 셀을 잠그면 다른 사람으로부터 데이터를 자유롭게 보호할 수 있습니다. 실수로 삭제되는 것을 방지하거나 다른 사람이 데이터를 손상시키는 것을 방지하는 데 도움이 됩니다. 계속 사용하고 작업을 수행할 더 많은 방법이 있으면 알려주십시오. ExcelDemy 팔로우 이와 같은 기사를 더 보려면 웹사이트를 방문하세요. 아래 의견 섹션에 의견, 제안 또는 쿼리가 있는 경우 삭제하는 것을 잊지 마십시오.