다른 셀이 변경되었을 때 셀을 필수로 작성하는 방법은 무엇입니까?

다른 셀이 변경되었을 때 셀을 필수로 작성하는 방법은 무엇입니까?

L6 셀에 예 또는 아니요가 표시되면 L7 및 L8 셀을 완료해야 함을 확인하는 메시지 상자가 나타납니다. 비슷한 게시물을 봤지만 VBA 코딩이 내 상황에 맞게 작동하지 못했습니다. 도움을 주시면 감사하겠습니다.

답변1

그 목표를 달성하기 위해 나는 두 가지 가능한 방법을 제안하고 싶다.

방법 1, 데이터 검증:

  • 상황 1, Cell이 또는 L6중 하나로 채워지는 경우 .YesNo

여기에 이미지 설명을 입력하세요


  • 상황 2, Cell이 nor L6로 채워지지 않은 경우 .YesNo

여기에 이미지 설명을 입력하세요


  • 상황 3, 셀 L6Blank.

여기에 이미지 설명을 입력하세요


작동 방식:

  1. 셀 선택 L7L8다음에서데이터 탭딸깍 하는 소리데이터 유효성 검사.
  2. 세트관습검증 기준으로 이 공식을 입력합니다.

=NOT(ISBLANK($L$6))*(OR($L$6="Yes",$L$6="No"))

  1. 와 끝내다좋아요

방법 2, VBA(매크로):

  • 마우스 오른쪽 버튼을 클릭하세요.시트 탭& 때리다코드 보기VB 편집기를 얻으려면 팝업 메뉴에서.
  • 복사 붙여 넣기이 코드는표준 모듈시트와 함께.

    Option Explicit
    
    Private Sub Worksheet_Change(ByVal Target As Range)
    
    If Not Intersect(Target, Range("L6")) Is Nothing Then
    
        If Target.Value = "Yes" Or Target.Value = "No" Then
            MsgBox "Now You Can fill L7 & L8"
        Range("L7").Activate
    
        ElseIf Target.Value <> "Yes" Or Target.Value <> "No" Then
            MsgBox "Target cell must have data Yes Or No,, to fill L7 & L8"
        Target.Activate
        End If
    
        If Target.Value = "" Then
        MsgBox "Target Cell Can't be Blank,,"
        Target.Activate
        End If
    End If
    
    End Sub
    

주의

  • 이 코드는 Cell 을 채우자마자 응답하기 시작합니다 L6.

  • 필요에 따라 수식과 VBA 코드에서 셀 참조를 조정할 수 있습니다.

관련 정보