Predefinição:Taxonomia/Urticaceae

Fonte: Enciclopédia de conhecimento da Igreja de Deus
Saltar para a navegação Saltar para a pesquisa

Private Sub Worksheet_Change(ByVal Target As Range)

   ' 변경된 범위가 B열에 있는지 확인
   If Not Intersect(Target, Me.Columns("B")) Is Nothing Then
       ' 첫 번째 행은 제목 행이므로 건너뛰기
       Call AutoNumberWithMergedCells
   End If

End Sub

Sub AutoNumberWithMergedCells()

   Dim ws As Worksheet
   Dim rng As Range
   Dim cell As Range
   Dim currentNumber As Long
   ' 현재 활성 시트 가져오기
   Set ws = ThisWorkbook.ActiveSheet
   
   ' 데이터가 있는 마지막 행 찾기 (B열 기준)
   Dim lastRow As Long
   lastRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row
   
   ' 초기 순번 설정
   currentNumber = 1
   
   ' A열의 순번 초기화 (제목 행을 제외하고)
   ws.Range("A2:A" & lastRow).ClearContents
   
   ' 순번 입력 (제목 행을 제외하고)
   For Each cell In ws.Range("A2:A" & lastRow)
       ' 해당 셀의 병합 범위 가져오기
       Set rng = cell.MergeArea
       
       ' 병합된 셀의 첫 번째 셀에만 순번 부여
       If cell.Address = rng.Cells(1, 1).Address Then
           cell.Value = currentNumber
           currentNumber = currentNumber + 1
       End If
   Next cell

End Sub