본 글의 내용은 네이버 지식IN에 올려진 것을 그대로 옮겨왔다.
아래의 코드는 특정 셀에 입력된 내용을 '시트이름'으로 그대로 인용할 수 있는 코드다.
본 코드문에서의 특정 셀은 A2:A1100로 정하였으나 사용자의 의도에 따라 셀 범위를 변경가능하다.
주의할 점은 A2:A1100의 셀을 두번 클릭해야만 새로운 시트 생기면서 셀의 내용이 시트이름이 된다는 점이다.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Range("A2:A1100"), Target) Is Nothing Then
On Error Resume Next
Dim sh As Worksheet
Dim shA As Worksheet
If Target.Value = "" Then Exit Sub
Set shA = ActiveSheet
Set sh = Worksheets(CStr(Target.Value))
If sh Is Nothing Then
Set sh = Worksheets.Add(, Worksheets(Sheets.Count), 1)
sh.Name = CStr(Target.Value)
End If
shA.Activate
Cancel = True
End If
End Sub
'엑셀로 풀어가는 세상' 카테고리의 다른 글
엑셀 - 여러개의 시트 중 이름만 추출하기 (0) | 2022.09.18 |
---|---|
엑셀팁 - 다중조건에서 구간값 구하기 (0) | 2022.09.12 |
엑셀팁 - 특정 셀의 값(숫자)에 따라 다른 셀의 색상 자동변동 (0) | 2022.09.12 |
엑셀팁 - 특정 셀의 입력값에 따라 시트이름 자동 변환 (0) | 2022.09.12 |
중복데이터만 표시하기 (2) | 2022.08.30 |
특정 셀의 값을 시트 이름으로 자동 변경 (1) | 2022.08.25 |
상하수도요금계산 - 엑셀파일 (797) | 2019.03.06 |
레이의 VBA정복기9- 변수란 무엇인가1 (1) | 2015.11.26 |