실무에서 엑셀 보고서를 작성할 때, "부서를 선택하세요", "직원명을 입력하세요" 등의 기본값을 셀 안에 표시해야 할 경우, 이번 강의에서 소개해드리는 방법을 사용하면 셀 안에 기본값을 간편하게 설정할 수 있습니다.
단, 셀이 병합되어 있을 경우에는 매크로를 사용해야 합니다. 병합된 셀에 기본값을 표시하는 전체 매크로 코드과 사용법은 다음 목차를 확인해주세요.
- 엑셀 기본값 설정하기 : 예제파일 실행 후 [예제] 시트로 이동합니다. 기본값을 표시할 'C3'셀의 왼쪽 셀인 'B3'셀 선택 후, 기본값으로 표시 할 문장을 입력합니다. 이번 예제에서는 '직원이름을 입력하세요'로 적어주겠습니다.
셀 안에 표시될 기본값을 입력합니다.
- B3셀이 선택된 상태에서 [홈] 탭 - [맞춤] 그룹의 들여쓰기 버튼을 클릭하여 기본값이 적당한 위치에 표시되도록 값을 들여쓰기 합니다.
홈 탭 - 들여쓰기를 클릭하여 기본값을 적절한 위치로 이동합니다.
오빠두Tip : 엑셀은 셀의 값이 '왼쪽정렬' 되어 있고, 오른쪽 셀의 값이 비어 있으면 셀 안에 입력된 값을 확장해서 표시합니다.
- B열의 열 너비를 조정하여 기본값이 적절한 위치에 표시되도록 조절합니다.
열 너비를 조절하여 기본값 표시 위치를 조절합니다.
- 기본값 서식 꾸미기 : B3셀에 입력된 기본값의 글꼴 색상을 옅은 회색으로 변경 후 글꼴 크기를 적절히 변경하면 기본값 설정이 완료됩니다.
기본값의 크기와 글꼴 색상을 적절히 조절합니다.
- 이제 C3셀에 값을 입력하면 기본값이 사라지고, 값을 지우면 기본값이 표시됩니다.
엑셀 기본값 설정이 완료되었습니다.
위에서 소개해드린 방법은 병합되지 않은 셀에서만 사용 가능합니다. 만약 병합된 셀에 기본값을 표시해야 할 경우, 아래 적어드린 시트 이벤트 명령문을 사용합니다. 명령문 사용방법에 대한 자세한 설명은 아래 관련 영상강의를 참고해주세요.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Dim sRng As String: Dim vRngs As Variant: Dim vRng As Variant
Dim sMsg As String
Application.EnableEvents = False
' 데이터 유효성 검사가 활성화된 셀 주소를 쉼표(,) 로 구분하여 입력하세요.
sRng = "셀1, 셀2, 셀3"
' 데이터 유효성 검사 기본값으로 출력 될 메세지를 입력하세요.
sMsg = "------ 값을 선택하세요 ----- "
vRngs = Split(sRng, ",")
For Each vRng In vRngs
If Trim(vRng) = Target.Resize(1, 1).Address(0, 0) Then
On Error GoTo EH:
If Len(Target.Text) = 0 Then
On Error Resume Next
Target.Validation.ShowError = False
Target.Value = sMsg
Target.Validation.ShowError = True
Exit For
End If
End If
Next
EH:
Application.EnableEvents = True
End Sub