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

작성자:  

 김성혁 (ijiat1914)

추천:  2
파일:     10월-test.xlsm (64.4KB) 조회:  1659
제목:   매크로 기록, VBA 기초질문(행 개수 추가시 합계범위, 셀강조 추가기능으로 변경)
     
  * 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.

 - 엑셀 버전(95,97,2000,xp,2003,2007):  office365

* 아래줄에 질문을 작성하세요 >>

안녕하세요 VBA 입문자인데 엑셀 매크로 기록을 해보고 거기서 생성된 코드들이 각각 어떤 역할을 하는지 보면서 주석을 다는 방식으로 공부를 해보고 있습니다.  그 과정에서 질문이 두가지 있습니다.

1. 첨부파일은 원본 sheet 에 있는 데이터에서 필터를 걸고 필요한 행만 편집본 sheet로 옮기고 합계를 기록 하는데, 원본 sheet의 행이 늘어나면, 합계 범위의 일부가 누락되는데. 이때 어떻게해야 행 개수가 늘어나면 합계범위가 같이 늘어날수 있을까요?
(첨부파일의 sheet1이 568행인데, 이 행 개수가 늘어나게 되면 판매원장 추가기능을 실행했을때 편집본 sheet의 523행의 합계 범위가 제일 위 행부터 늘어난 갯수만큼 누락됩니다.)

2. sheet1에 셀 강조가 있습니다.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rowNumberValue As Integer, columnNumberValue As Integer, i As Integer, j As Integer
Cells.Interior.ColorIndex = 0

rowNumberValue = ActiveCell.Row
columnNumberValue = ActiveCell.Column
For i = 1 To rowNumberValue
    Cells(i, columnNumberValue).Interior.ColorIndex = 37
Next i
For j = 1 To columnNumberValue
    Cells(rowNumberValue, j).Interior.ColorIndex = 37
Next j
End Sub

이것을 추가기능으로 만들어서 다른파일에서도 원하면 추가기능을 클릭하여 실행하고 싶어서 모듈추가하여 추가기능을 만들면 작동하지 않습니다. 어떤 방법이 있을까요?

추워진 날씨에 건강 유의하시고, 답변도 잘 부탁드리겠습니다.

감사합니다.
 
[불량 게시물 신고]  
        
  

작성일 : 2021-11-24(17:10)
최종수정일 : 2021-11-25(14:38)