나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내
작성자:  

 조삿갓 (choga21)

추천:  2
파일:     조회:  2139
제목:   [RE]셀 선택시 다른 셀에 값을 표기하는 방법
     
  * 아래줄에 질문을 작성하세요 >>

과제를 받았는데

아무 셀 클릭하면 그 셀 주변에 1이 증가하고 
1  1   1 
1 클릭 1
1  1   1

바로 밑에 셀 클릭하면 또 1씩 증가하는

1   1  1
2   1  2
2 클릭 2
2   2  2

이런걸 해오라는 과제를 받았는데 여기서 힌트를 좀 얻을 수 있을까요..?
==============[도웅님 글에 대한 답변입니다]==============

VBA 편집기에서 워크시트 하나를 더블클릭하고 다음 코드를 입력하세요.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        ' 현재 워크시트에서 셀포인터가 변경되었을 때 실행됨
        ' Target은 현재 선택된 셀을 가리킴
        
    Dim r As Long '행번호 오프셋
    Dim c As Long '열번호 오프셋
    
    For r = 0 To 2  ' 0이면 한 줄 위, 1이면 같은 줄, 2이면 한 줄 아래
        For c = 0 To 2 ' 0이면 한 칸 왼쪽, 1이면 같은 칸, 2이면 한 칸 오른쪽
            If r * c <> 1 Then  'r=1, c=1인 경우는 Target(선택된 셀) 자신이 됨
                                ' 자기자신은 변경하지 않는 거 맞지요?
                                ' 자기자신에도 1을 더해야 한다면 이 조건문은 생략해야 함
                Target.Cells(r, c) = Target.Cells(r, c) + 1
                       ' 선택된 셀을 기준으로 주어진 오프셋만큼 이동한 셀의 값을 1 증가시킴
            End If
        Next c
    Next r
End Sub

 
[불량 게시물 신고]  
        
  

작성일 : 2017-11-08(22:08)
최종수정일 : 2017-11-08(22:08)
 


 ◎ 관련글

  제 목   작성자   날짜
셀 선택시 다른 셀에 값을 표기하는 방법 도웅 2017-11-07
[RE]셀 선택시 다른 셀에 값을 표기하는 방법 조삿갓 2017-11-08