728x90

[VBA 기초] Selection 의 개념잡기

 

 

엑셀은 셀을 다루는 것이므로 셀에 대한 범위 지정 등을 잘 알아야 합니다.

 

 

 

마우스로 선택한 구간에서 구하고자 하는 값을 알기 위한 사항입니다.

 

Sub CountRows()
    Dim rngCnt As Integer
    Dim sRow As Integer
    Dim eRow As Integer
       
    Dim rngEnd As Range
   
    rngCnt = Selection.Rows.Count  '// 선택된 영역의 총 Row 수
    sRow = Selection.Row  '// 선택된 영역의 첫번째 행의 위치 반환
    eRow = Selection.Row + Selection.Rows.Count - 1  '// 선택된 영역의 마지막 행 위치 반환
   
    MsgBox "첫번째 행은 " & sRow
    MsgBox "마지막 행은 " & eRow
    MsgBox "전체 선택한 행의 수는 " & rngCnt
   
End Sub

 

그러면 이제 아래 내용이 무슨 의미를 알아봅시다

Dim h As Long, r As Long
r = Cells(Rows.Count, "B").End(xlUp).Row

값이 들어 있는 B열의 마지막셀을 찾아서 Row(행)의 값을 r 에 넣어라

'// Cells(Rows.Count, "B") 는 B열의 마지막 셀, 엑셀이 제공하는 마지막셀을 의미

'// Cells(Rows.Count, "B").End(xlUp) 은 Cells(Rows.Count, "B").End(3) 으로도 표기하며

'// B열의 마지막셀로부터 위(xlUp) 으로 올라와서 마지막 데이터가 있는 셀을 의미

 

 

n = Cells(Rows.Count, "B").End(xlUp).Column

값이 들어 있는 B열의 마지막셀을 찾아서 Column(열)의 값을 n 에 넣어라

 

Range("A10:B" & r) 의 의미는

A10 셀부터 B열의 마지막 값이 들어있는 셀까지의 범위

Range("A10:B" & Cells(Rows.Count,"B").End(3).Row)

또는 Range([A10], Cells(Rows.Count, "B").End(3)) 으로도 많이 사용합니다.

 

 

 

Selection.Borders().LineStyle=xlNone  '//선택된 셀의 안쪽선을 없앰
Selection.Borders(xlEdgeBottom).LineStyle=xlNone  '//선택된 셀의 아래쪽 테두리선을 없앰
Selection.Borders(xlEdgeHorizontal).LineStyle=xlNone  '//선택된 셀의 안쪽 가로테두리선을 없앰
Selection.Borders(xlEdgeLeft).LineStyle=xlNone  '//선택된 셀의 왼쪽 테두리선을 없앰
Selection.Borders(xlEdgeVertical).LineStyle=xlNone  '//선택된 셀의 안쪽세로테두리선을 없앰
Selection.Clear  '//선택된 영역의 내용과 서식을 모두 지움
Selection.ClearContents  '//선택된 영역의 내용만 지움
Selection.ClearFormats  '//선택된 영역의 서식만 지움
Selection.Columns  '//선택된 열
Selection.Copy  '//선택된 영역을 복사
Selection.EntireRow.Delete '//선택된 행을 삭제
Selection.Merge  '//선택된영역을 병합
Selection.NumberFormat="0.00"  '//선택된 셀을 소수점 둘째자리까지 표시
Selection.Rows  '//선택된행
Selection.UnMerge  '//선택된 영역을 병합해제

 

현재 커서가 있는 셀은 ActiveCell 입니다.

현재 커서가 있는 행 전체를 선택하는 것은 ActiveCell.EntireRow.Select 입니다.

앞에서부터 순차적으로 ActivCell 을 적어주고 전체 행인 EntireRow 를 적고 마지막으로 선택(Select)를 하면 됩니다.

 

어떤 의미인지 조금이나마 감이 잡히시나요?

 

댓글과 공감은 큰 힘이 됩니다

블로그 이미지

Link2Me

,