유튜브 채널 |
엑셀VBA 파일 다운로드 |
Private Sub Worksheet_Change(ByVal Target As Range) '모듈 매크로가 아니라 '해당 시트에 입력하는 매크로 'VBE 상단의 Worksheet 선택후 Change를 선택하면 '자동으로 입력되는 Private Sub~임. On Error GoTo ErrCode '예상치 못한 상황이 발생하면 'Errcode(만든이름)로 이동! If Not Intersect(Target, Columns("d:g")) Is Nothing Then '교집합(타겟, 열범위) 'Not ~ Nothing : 이중부정으로 긍정이다. '즉 교집합이 하나라도 있다면~!! If Not Intersect(Target, Rows("2:13")) Is Nothing Then '교집합(타겟, 행범위) 'MsgBox "범위 안에서 값 변경" If VBA.IsNumeric(Target) Then 'vba함수 숫자인지 판단해주는 함수 '빈셀을 숫자 0으로 역시 판단함. Else '숫자가 아니면 MsgBox "숫자만 입력 가능!" Target = "" '타겟셀을 다시 지워버림. Target.Select End If Else End If Else End If ErrCode: '아래줄이 End Sub로 조용히 끝나버림! End Sub |
728x90
'■ Excel > ㅡExcel VBA Code' 카테고리의 다른 글
엑셀 VBA 출력미리보기실행, 가운데정렬, 용지가로, 1개 페이지에 맞춤, 페이지 나누기 미리보기로 전환, 보기를 기본으로 전환 (0) | 2020.05.13 |
---|---|
엑셀 VBA 시트 숨기기, 보이기 매크로 (0) | 2020.04.28 |
엑셀 VBA 같은 내용 병합하기 (0) | 2020.04.25 |
엑셀 VBA 각 시트의 내용 합치기 코드(매크로) (0) | 2020.04.24 |
엑셀 VBA 여러 시트의 값 차례로 가져오기 (0) | 2020.04.12 |