엑셀(EXCEL) – VBA, OptionButton을 이용한 책갈피 기능 사용

 

내일이 휴가인데 요사이 경기가 좋지않아 현장직 사원분들은 강제로 오늘부터 휴무에 들어가서
사무직 직원들만 출근했는데 협력 업체 대부분도 휴가 중이고 공장은 돌아가지 않으니 사무실이
적막강산이고 월급루팡 하는 중에 아질게에 아래 질문이 올라와 그냥 뚝딱뚝딱 만들어 봤습니다.

http://www.clien.net/cs2/bbs/board.php?bo_table=kin&wr_id=3499667

그냥 질문의 내용을 간단히 해석하면 책갈피 기능을 원한다는 말씀 같아서 그렇게 만들었습니다.

내용은 아주 간단합니다.

엑셀 > 보기에 첫행 고정으로 틀고정 하시고 책갈피를 원하는 수만큼 OptionButton을 만듭니다.
(개발도구, 디자인모드로 선택하시고 옆의 삽입에서 AcitveX Control의 Optionbutton을 선택합니다)
개발도구에서 Visual Basic을 선택하시고 들어가 Sheet1을 더블 클릭하시고 아래를 복사합니다.

Option Explicit

Private Sub Move_Active_Cell()

Worksheets(“Sheet1”).Activate

Select Case True

Case OptionButton1.Value
Worksheets(“Sheet1”).Range(“A20”).Select
ActiveCell.Interior.ColorIndex = 1

Case OptionButton2.Value
Worksheets(“Sheet1”).Range(“A50”).Select
ActiveCell.Interior.ColorIndex = 3

Case OptionButton3.Value
Worksheets(“Sheet1”).Range(“A70”).Select
ActiveCell.Interior.ColorIndex = 4

Case OptionButton4.Value
Worksheets(“Sheet1”).Range(“A90”).Select
ActiveCell.Interior.ColorIndex = 5

Case OptionButton5.Value
Worksheets(“Sheet1”).Range(“A110”).Select
ActiveCell.Interior.ColorIndex = 5

End Select

End Sub

Private Sub OptionButton1_Click()

Call Move_Active_Cell

End Sub

Private Sub OptionButton2_Click()

Call Move_Active_Cell

End Sub

Private Sub OptionButton3_Click()

Call Move_Active_Cell

End Sub

Private Sub OptionButton4_Click()

Call Move_Active_Cell

End Sub

Private Sub OptionButton5_Click()

Call Move_Active_Cell

End Sub

소스는 그냥 간단하게 버튼이 눌러질 때마다 함수를 호출에서 참 값인 OptionButton의 명령을 실행합니다.
이렇게 하면 버튼이 늘어도 함수만 수정해 주면 되기 때문에 확장과 수정이 편리한 면이 있습니다. 추가로
함수에 위치에 따라 색상이 달라지도록 할 수도 있지요. 책갈피의 기능이기때문에 그 위치는 이동만 하고
나머지 셀에서 데이터를 운용하도록 합니다. 우리가 흔히 책갈피의 색을 다르게 끼우는 것처럼 말입니다.

도움이 되었으면 하네요.
엑셀 자료 : 20150805-선택적 이동(책갈피)