엑셀 VBA, 메크로 관련(맘대로 열이 추가됨..)

VBA
작성자
탕수육육
작성일
2022-10-28 16:53
조회
78
엑셀버전 : 엑셀2016

운영체제 : 윈도우10

질문 요약 : 메크로 기록한것 재실행시 마음대로 열이 추가되고 추가된 열을 참조해서 함수가 써짐..

안녕하세요? 엑셀 VBA, 메크로 처음 써보며 배우고 있는 학생입니다.

 

제가 사진1과 되어있는 상태에서 매크로 기록을 누르고

  1. S열에 열1개 추가
  2. 추가된 S열의 S2셀에 '비중' 기입
  3. N15셀에 N3/(N3~S3절대참조)
  4. N15셀 %로 바꾸기
  5. N15셀을 S15까지 드래그해서 함수 복사시키기
  6. N2~S2(Q열제외)과 N15~S15(Q열제외) 클릭해서 도넛형 차트 삽입
  7. 도넛형 차트 데이터 레이블 서식에서 항목이름 클릭 후 굵은글씨로 표시

해당 작업을 해서 사진2처럼 만들고 매크로 기록을 정지하고 매크로 편집에서 전부 복붙해놓았습니다.

이를 새로운 상황에서 VBA 모듈추가로 해놓고 매크로를 실행하면 사진3과 같이 O~S열이 마음대로 추가되며, 15행의 값들도 그 추가된 열의 값들을 따라갑니다..

메크로 기록은 제가 기록한 메크로 기록입니다.

혹시 원인이 무엇인지 아시는분 있으시면 답변 부탁드립니다 ㅜㅜ..

  • 사진1. 기본 상황

  • 사진2.
  • 사진3 메크로 복붙해서 새로 실시할때..
  • 매크로 기록

Sub DDDD()
'
' DDDD 매크로
'

'
Columns("S:S").Select
Range("S2").Activate
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("S2").Select
ActiveCell.FormulaR1C1 = "비중"
Range("N15").Select
ActiveCell.FormulaR1C1 = "=R[-12]C/SUM(R3C14:R3C19)"
Range("N15").Select
Selection.Style = "Percent"
Selection.AutoFill Destination:=Range("N15:S15"), Type:=xlFillDefault
Range("N15:S15").Select
Range("N2,N15,O2,O15,Q2,Q15,R2,R15,S2,S15").Select
Range("S15").Activate
ActiveSheet.Shapes.AddChart2(251, xlDoughnut).Select
ActiveChart.SetSourceData Source:=Range( _
"Sheet1!$N$2,Sheet1!$N$15,Sheet1!$O$2,Sheet1!$O$15,Sheet1!$Q$2,Sheet1!$Q$15,Sheet1!$R$2,Sheet1!$R$15,Sheet1!$S$2,Sheet1!$S$15" _
)
ActiveChart.ApplyDataLabels
ActiveChart.FullSeriesCollection(1).DataLabels.Select
Selection.ShowCategoryName = True
Selection.Format.TextFrame2.TextRange.Font.Bold = msoTrue
ActiveChart.ChartArea.Select
ActiveSheet.Shapes("차트 1").IncrementLeft -219.6
ActiveSheet.Shapes("차트 1").IncrementTop -9
Application.CommandBars("Format Object").Visible = False
End Sub

스크랩
공유
회원등급 : 3레벨
포인트 : 79 EP
총질문 : 8 개 (마감율 : 50%)
채택답변 : 0 개
전체 5

  • 2022-10-28 16:59

    @탕수육육 님 Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove

    이 코드가 오른쪽으로 열을 추가하는 코드입니다.


    • 2022-10-28 17:02

      @고양이냐옹 님 네.. 제가 열을 1개만 추가했는데, 메크로를 실시하면 열이 마음대로 6개가 추가됩니다 ㅠㅠ


      • 2022-10-28 17:07
        채택된 답변

        @탕수육육 님 아마 Selection 범위가 머릿글 때문에 6개 선택되어서 6열이 추가되는게 아닐까요?

        그림으로 볼 땐 머릿글이 셀 병합되어 있는 것 같아서요

        한번 확인해보세요


        • 2022-10-31 16:34

          @고양이냐옹 님 늦어서 죄송합니다.. 선생님께서 말씀하신대로 셀 병합을 해제하고 매크로 실시하니 제대로 열이 추가되고, 함수까지 나옵니다!(글에서 5번까지)

           

          그런데 6번의 도넛형 그래프는 사진 3처럼 이상하게 되네요 ㅠ


  • 2022-10-29 00:31

    @탕수육육 님 Columns("S:S").Select
    Range("S2").Activate
    Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove

    이 부분을 아래처럼 단순하게 해 보세요.

    Columns("S:S").EntireColumn.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove


전체 8,667
번호 카테고리 제목 작성자 작성일 추천 조회
알림
🎉 오피스 분야 30주 연속 1위! - 「 진짜쓰는 실무엑셀 」 전자책이 출간되었습니다! (37)
오빠두엑셀 | 2022.09.28 | 추천 9 | 조회 3206
오빠두엑셀 2022.09.28 9 3206
공지사항 공지사항
⭐ [더 나은 커뮤니티 문화를 위한 Q&A 글 작성 규칙] ⭐ (110)
오빠두엑셀 | 2021.10.28 | 추천 136 | 조회 8791
오빠두엑셀 2021.10.28 136 8791
45399 함수/공식
New 제시간에 퇴근하고싶어요 엑셀파일
taegshin kim | 17:51 | 추천 0 | 조회 20
taegshin kim 17:51 - 20
45398 기능/도구
New 목록명이 다른 데이터 통합방법 첨부파일 (1)
will12**** | 17:31 | 추천 0 | 조회 17
will12**** 17:31 - 17
45397 함수/공식
New 산출식이 들어 있는 값으로 표시 엑셀파일첨부파일 (2)
바른나무 | 17:29 | 추천 0 | 조회 19
바른나무 17:29 - 19
45394 함수/공식
New 여러수식의 범위값을 연동해서 변경하는 방법 있을까요 (4)
하이롭 | 17:07 | 추천 0 | 조회 20
하이롭 17:07 - 20
45390 함수/공식
New 조건에 맞는 값 구하기 첨부파일
노갈 | 16:26 | 추천 0 | 조회 28
노갈 16:26 - 28
45389 문서서식
New 기존에 인쇄 되어있는 용지를 넣고 출력할때 원하는 위치에 글씨 입력하는 방법 (1)
willow123 | 16:24 | 추천 0 | 조회 17
willow123 16:24 - 17
45388 함수/공식
New 여러가지 조건 함수 첨부파일 (4)
지니 | 16:07 | 추천 0 | 조회 30
지니 16:07 - 30
45387 함수/공식
New 다른 시트 계산 변수 자동 입력 후 결과 추출 엑셀파일첨부파일 (4)
김승현 | 15:35 | 추천 0 | 조회 28
김승현 15:35 - 28
45386 함수/공식
New 중복된 행을 삭제하고 수량만 합산해서 표시하기 엑셀파일 (1)
태을 | 15:31 | 추천 0 | 조회 37
태을 15:31 - 37
45383 함수/공식
New 조건에 맞는 값 구하기 첨부파일 (1)
노갈 | 14:43 | 추천 0 | 조회 32
노갈 14:43 - 32
45382 함수/공식
New 랜덤으로 뽑는 방법 엑셀파일 (1)
이보경 | 14:38 | 추천 0 | 조회 34
이보경 14:38 - 34
45381 함수/공식
New 스레드 해결방법 (1)
드라이비트 | 14:28 | 추천 0 | 조회 15
드라이비트 14:28 - 15
45380 문서서식
New 사용자서식 또는 조건부서식에서 같은셀에 두가지 서식 적용 어떻게 하나요? 엑셀파일 (1)
mrbl**** | 14:15 | 추천 0 | 조회 21
mrbl**** 14:15 - 21
45376 VBA
New vba 실행 전에 셀등을 복사하고 실행 후에 이 복사된 데이터 등이 초기화되는 문제는 해결이 어려울까요? (3)
얇은피만두 | 11:38 | 추천 0 | 조회 28
얇은피만두 11:38 - 28
45374 함수/공식
New 엑셀 공휴일 일정 자동화 달력 v1.5 함수 문의
ssibal**** | 11:17 | 추천 0 | 조회 27
ssibal**** 11:17 - 27
45373 함수/공식
New 조건에 "부등호" & 함수 이런식으로 작성하는 엑셀 문법이 궁금합니다 ㅠ
워크홀릭 | 11:13 | 추천 0 | 조회 28
워크홀릭 11:13 - 28
45368 기능/도구
New 맨 아래 데이터에 ┘이런 모양 어케 만드는 거였죠?? 첨부파일 (1)
VictorY | 10:22 | 추천 0 | 조회 35
VictorY 10:22 - 35
45367 함수/공식
New 매출채권 채무 불 이행율 계상 (2)
jyk0077@hanmail.net | 10:20 | 추천 0 | 조회 21
jyk0077@hanmail.net 10:20 - 21
45366 기능/도구
New Excel 에서 Excel 머지 기능 (1)
Frost | 10:07 | 추천 0 | 조회 36
Frost 10:07 - 36
45364 피벗테이블
New 피벗테이블 필터 기능 문의 (1)
단수조정 | 09:53 | 추천 0 | 조회 29
단수조정 09:53 - 29
45363 문서서식
New 행 아래 삽입 (1)
💆🏻‍♀️ DA | 09:44 | 추천 0 | 조회 27
💆🏻‍♀️ DA 09:44 - 27
45362 함수/공식
New if함수로 여러개 조건이텍스트일때 값을 알고싶어요 첨부파일 (2)
짱구는옷말려 | 09:36 | 추천 0 | 조회 34
짱구는옷말려 09:36 - 34
45360 함수/공식
New INDEX, MATCH함수 사용후 값찾은 뒤 할증금액 더하는법 엑셀파일 (4) 답변완료
명주 | 09:07 | 추천 0 | 조회 37
명주 09:07 - 37
45357 함수/공식
New 엑셀 단축키 F2 키 문제 0: 07 초 에서 수식 풀이 방법이 궁금합니다. 첨부파일 (2) 답변완료
엑셀 초보자 | 08:29 | 추천 0 | 조회 23
엑셀 초보자 08:29 - 23
45355 문서서식
New 45강 고급필터 비주얼베이직 메크로 오류 엑셀파일첨부파일
연꽃사랑 | 01:44 | 추천 0 | 조회 25
연꽃사랑 01:44 - 25
45349 함수/공식
New 중복값 주의하면서 조건에 맞는 순위 구하기 엑셀파일첨부파일
노갈 | 2022.12.07 | 추천 0 | 조회 42
노갈 2022.12.07 - 42
45347 함수/공식
New 엑셀 숫자 E+ 표시 문제 해결 방법 셀 서식을 사용해서 1초면 OK! 첨부파일 (2) 답변완료
엑셀 초보자 | 2022.12.07 | 추천 0 | 조회 34
엑셀 초보자 2022.12.07 - 34
45346 함수/공식
New 엑셀 단축키 F2 키 문제 0: 07 초 에서 수식 풀이 방법이 궁금합니다. 첨부파일 (2) 답변완료
엑셀 초보자 | 2022.12.07 | 추천 0 | 조회 33
엑셀 초보자 2022.12.07 - 33
45344 함수/공식
New 다중조건 조건부 서식 다시한번 도움요청 드릴께요 엑셀파일 (1) 답변완료
김태성 | 2022.12.07 | 추천 0 | 조회 48
김태성 2022.12.07 - 48
45339 함수/공식
New 일수로 "0개월00일"로 변환 방법 (1)
보라색양털 | 2022.12.07 | 추천 1 | 조회 43
보라색양털 2022.12.07 1 43