VBA : 특정 단어가 들어간 행의 바로 윗행마다 빈 행 삽입

VBA
작성자
나지
작성일
2023-01-12 16:31
조회
2178
엑셀버전 : 엑셀2016

운영체제 : 윈도우10

안녕하세요? 언제나 많은 도움 주셔서 감사드립니다.

특정 단어 포함한 행의 바로 윗행마다 빈 행 삽입이 필요한 상황입니다.
임의로 특정 단어를 "회원번호" 라고 가정하고 아래와 같이 코딩을 했는데요... 참고한 URL: https://thank-q.tistory.com/186
아무래도 특정 단어 포함 행 지정이 잘못된 것 같은데, 어떻게 해결할 수 있을까요? 이 부분에 대한 이해가 부족합니다...

아래의 엑셀 이미지도 참고 부탁드리겠습니다.

    LAST = Cells(Cells.Rows.Count, "A").End(xlUp).Row
 
    For Z = LAST To 1 Step -1
        If Cells(Z, "A") = "회원번호" Then
            Cells(Rows.Count, "A").End(xlUp)(2).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
        End If
    Next Z

신고
스크랩
공유
회원등급 : 5레벨
포인트 : 323 EP
총질문 : 13 개 (마감율 : 69%)
채택답변 : 1 개
전체 13

  • 2023-01-12 17:07
    채택된 답변

    @나지

    Sub 매크로1()
     
     
     LAST = Cells(Cells.Rows.Count, "A").End(xlUp).Row
     
        For Z = LAST To 1 Step -1
            If Cells(Z, "A") = "회원번호" Then
                If Z = 1 Then
                    Cells(Z, "A").EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
                ElseIf Cells(Z - 1, "A") <> "" Then
                    Cells(Z, "A").EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
                End If
     
            End If
        Next Z
     
     
    End Sub

     


    • 2023-01-13 10:04

      @마법의손 님 도움 주셔서 감사합니다. 테스트 시 매우 정상적으로 돌아갑니다!

      첫 행에도 빈 행 삽입이 되는 걸 피하고자, 아래와 같이 한 행을 삭제해서 사용하고 있습니다.

      혹시 다른 분들께도 도움이 될까 하여 공유드립니다.

      Sub 매크로1()
       
       
       LAST = Cells(Cells.Rows.Count, "A").End(xlUp).Row
       
          For Z = LAST To 1 Step -1
              If Cells(Z, "A") = "회원번호" Then
                  If Z = 1 Then
                  ElseIf Cells(Z - 1, "A") <> "" Then
                      Cells(Z, "A").EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
                  End If
       
              End If
          Next Z
       
       
      End Sub

    • 2023-01-13 10:56

      @마법의손 님 그,,, 지금, 테스트후 실제 적용을 하다가 치명적인 문제가 발생했는데요 ㅠ

      빈행 삽입이 아니라 덮어쓰기가 되었는지

      빈행 바로 위의 데이터가 있는 마지막 1행이 사라집니다. ㅠㅠ

      이 부분은 어디가 문제일까요?

       


      • 2023-01-13 11:10

        @나지 님 해당 샘플을 첨부해보세요..

        잘작동합니다만..~

        13-777Wy9uhwb.gif

        첨부파일 : 13-777Wy9uhwb.gif


        • 2023-01-16 08:25

          @마법의손 님 답변 감사드리며, 번거롭게 해드려 죄송합니다. 회사에서 쓰는 건데 보안 상 노출이 곤란한 부분이 많이 포함되어 있고 구문이 길어서, 일단 다른 부분에 문제가 있는지 점검해보고 다시 한번 질문 드리겠습니다!


        • 2023-01-16 08:44

          @마법의손 님 문제를 해결했습니다.

          님께서 만들어주신 코드에는 문제가 전혀 없고, 제가 사용하던 코드의 다른 구문이 문제였는데요. 문제가 된 부분은

          Do While ~ Loop로 시트를 합치는 과정에서 첫 행이 공란이 되는걸 피하고자

          ActiveSheet.Range("A65536").End(xlUp).Offset(1, 0).Select 이 부분을

          ActiveSheet.Range("A65536").End(xlUp).Offset(0, 0).Select 으로 바꾸었더니 저런 현상이 나타났던 거였습니다.

          혹시 다른 분들께도 참고가 될까 하여 덧글로 남깁니다.


  • 2023-01-12 17:54

    @나지

        LAST = Cells(Cells.Rows.Count, "A").End(xlUp).Row
    <span style="color: #0000ff;"><strong>    Dim vData As Variant</strong></span>
        <strong><span style="color: #0000ff;">vData = Range("A1:A" & LAST).Value2  '// for speed</span></strong>
     
        For Z = LAST To <strong><span style="color: #ff0000;">3</span></strong> Step -1                    '// Avoid 1st value
            If <strong><span style="color: #0000ff;">vData(Z, 1)</span></strong> = "회원번호" Then
                <span style="color: #ff0000;"><strong>Cells(Z, 1).EntireRow.Insert Shift:=xlDown</strong></span>
            End If
        Next Z

    • 2023-01-13 10:06

      @원조백수 님 오... 생각해보지 못했던 방법인데 보면서 계속 연구해봐야 겠습니다!

      이 방법으로 할 경우 첫 행에는 빈 행 삽입이 안되네요. 도움 주셔서 감사합니다.


      • 2023-01-13 10:25

        @나지 님 질문 그림에 첫번째 에는 행삽입이 없어서 뺀 것입니다 .

        첫번째 줄에도 삽입하시려면 아래 3을 1로 변경하시면 됩니다.

        For Z = LAST To <span style="color: #ff0000;"><strong>3</strong></span> Step -1                    '// Avoid 1st value

        • 2023-01-13 10:55

          @원조백수 님 추가 답변 감사합니다.

          그런데 지금, 테스트후 실제 적용을 하다가 치명적인 문제가 발생했는데요 ㅠ

          빈행 삽입이 아니라 덮어쓰기가 되었는지

          빈행 바로 위의 데이터가 있는 마지막 1행이 사라집니다. ㅠㅠ

          이 부분은 어디가 문제일까요?

           


          • 2023-01-13 11:34

            @나지 님 실제로 어떻게 코드를 넣었는지 보여주세요.

            실행에 문제 없는 것은 확인했습니다.

            반복 실행해도 기존 자료는 사라지지 않습니다.

            첨부파일 : 행삽입샘플.xlsm


            • 2023-01-16 08:26

              @원조백수 님 답변 감사드리며, 번거롭게 해드려 죄송합니다. 회사에서 쓰는 건데 보안 상 노출이 곤란한 부분이 많이 포함되어 있고 구문이 길어서, 일단 다른 부분에 문제가 있는지 점검해보고 다시 한번 질문 드리겠습니다!


            • 2023-01-16 08:44

              @원조백수 님 문제를 해결했습니다.

              님께서 만들어주신 코드에는 문제가 전혀 없고, 제가 사용하던 코드의 다른 구문이 문제였는데요. 문제가 된 부분은

              Do While ~ Loop로 시트를 합치는 과정에서 첫 행이 공란이 되는걸 피하고자

              ActiveSheet.Range("A65536").End(xlUp).Offset(1, 0).Select 이 부분을

              ActiveSheet.Range("A65536").End(xlUp).Offset(0, 0).Select 으로 바꾸었더니 저런 현상이 나타났던 거였습니다.

              혹시 다른 분들께도 참고가 될까 하여 덧글로 남깁니다.


전체 18,530
번호 카테고리 제목 작성자 작성일 추천 조회
알림
[📚진짜쓰는 실무엑셀] IT/오피스 '1위' 베스트셀러! 엑셀 공부, 이 교재로 마스터하세요! (315)
오빠두엑셀 | 2022.02.03 | 추천 575 | 조회 609164
오빠두엑셀 2022.02.03 575 609164
공지사항 문서서식
⭐ [더 나은 커뮤니티 문화를 위한 Q&A 글 작성 규칙] ⭐ (197)
오빠두엑셀 | 2021.10.28 | 추천 310 | 조회 35539
오빠두엑셀 2021.10.28 310 35539
78575 VBA
New 엑셀 재고관리 프로그램 문의드립니다.. 첨부파일 (1)
SJ | 04:23 | 추천 0 | 조회 40
SJ 04:23 - 40
78570 대시보드
New 대시보드에 표 형식으로 표현도 가능한가요? 첨부파일 (2)
룰루랄라 | 2025.05.12 | 추천 0 | 조회 52
룰루랄라 2025.05.12 - 52
78569 함수/공식
New 서로 다른 양식의 견적서 엑셀 파일 한곳에 정리 하기 (5)
gh**** | 2025.05.12 | 추천 0 | 조회 69
gh**** 2025.05.12 - 69
78565 함수/공식
New 검색보고서 만들기 질문드립니다. 엑셀파일 (9) 답변완료
만식이햄 | 2025.05.12 | 추천 0 | 조회 68
만식이햄 2025.05.12 - 68
78563 VBA
New VBA 수정 부탁드립니다. ㅠ (1)
서비 | 2025.05.12 | 추천 0 | 조회 61
서비 2025.05.12 - 61
78560 함수/공식
New 어떻게 내용을 가져올수 있을지 고수님들의 해결방법들을 공유 받고 싶습니다!!.... 엑셀파일첨부파일 (2)
꾸르형 | 2025.05.12 | 추천 0 | 조회 40
꾸르형 2025.05.12 - 40
78559 파워쿼리/피벗
New 엑셀 자동화 질문 입니다... 엑셀파일 (2) 답변완료
안녕하세여11 | 2025.05.12 | 추천 0 | 조회 57
안녕하세여11 2025.05.12 - 57
78555 함수/공식
New 시트에서 원하는 열의 자료만 가져오고싶은데 아무리 해도 수식오류가 나서 도움을 구하고자 합니다 엑셀파일 (4) 답변완료
khs**** | 2025.05.12 | 추천 0 | 조회 36
khs**** 2025.05.12 - 36
78554 함수/공식
New 변동하는 절대참조값 적용 (6) 답변완료
화이또! | 2025.05.12 | 추천 0 | 조회 55
화이또! 2025.05.12 - 55
78553 대시보드
New 대시보드_슬라이서 자동으로 눌러지게 하는방법 첨부파일 (1)
검도림 | 2025.05.12 | 추천 0 | 조회 40
검도림 2025.05.12 - 40
78548 대시보드
New 어떤 엑셀을 적용해야하는 지 문의드립니다! (1)
룰루랄라 | 2025.05.11 | 추천 0 | 조회 61
룰루랄라 2025.05.11 - 61
78546 함수/공식
New 월별 매출액 자동입력할 수 있는 방법 또는 함수 궁금합니다! 엑셀파일 (2)
mmm1010 | 2025.05.11 | 추천 0 | 조회 80
mmm1010 2025.05.11 - 80
78544 함수/공식
New 중복값 제거 함수에 관하여 엑셀파일첨부파일 (1) 답변완료
김지훈(Derek) | 2025.05.11 | 추천 0 | 조회 68
김지훈(Derek) 2025.05.11 - 68
78543 함수/공식
New 데이터 추출 및 정렬관련 초보질문 엑셀파일첨부파일 (5) 답변완료
김지훈(Derek) | 2025.05.11 | 추천 0 | 조회 62
김지훈(Derek) 2025.05.11 - 62
78540 함수/공식
New 오빠두LIVE 219회 - 엑셀 '셀 병합' 자동화 보고서 만들기 오빠두엑셀님의 방법이 궁금합니다. 첨부파일
AURIC | 2025.05.10 | 추천 0 | 조회 54
AURIC 2025.05.10 - 54
78536 함수/공식
New 월별로 금액적용후 최종월에 차액을 가감 함수가 필요해요 엑셀파일 (1) 답변완료
낮은자 | 2025.05.10 | 추천 0 | 조회 60
낮은자 2025.05.10 - 60
78535 기능/도구
New 엑셀로 25x25 인쇄가 가능한가요? (1)
망나 | 2025.05.10 | 추천 0 | 조회 46
망나 2025.05.10 - 46
78534 파워쿼리/피벗
New 쿼리에 함수 적용한 열 추가 시 24:00:00 활용한 계산 함수 필요할 때. 첨부파일 (2) 답변완료
신노스케 | 2025.05.10 | 추천 0 | 조회 58
신노스케 2025.05.10 - 58
78531 차트/그래프
New 엑셀 차트 데이터테이블 엑셀파일첨부파일 (1)
| 2025.05.09 | 추천 0 | 조회 68
2025.05.09 - 68
78530 구글시트
New 구글 스프레드시트 함수 관련 질문입니다. 엑셀파일첨부파일 (2)
동그이 | 2025.05.09 | 추천 0 | 조회 57
동그이 2025.05.09 - 57
78528 구글시트
New 구글 스프레드시트를 외부 엑셀 파일과 연동하는 방법이 궁금합니다. (3)
머우터덩 | 2025.05.09 | 추천 0 | 조회 61
머우터덩 2025.05.09 - 61
78525 문서서식
New 업무가 진행이 안 될 정도로, 해당 파일이 느립니다! 엑셀파일 (2)
빌스택스 | 2025.05.09 | 추천 0 | 조회 86
빌스택스 2025.05.09 - 86
78520 기능/도구
New 하이퍼링크 명칭 해제 (1)
min | 2025.05.09 | 추천 0 | 조회 48
min 2025.05.09 - 48
78518 피벗테이블
New 피벗테이블 관련 화살표 질문 첨부파일
이모비니 | 2025.05.09 | 추천 0 | 조회 45
이모비니 2025.05.09 - 45
78516 함수/공식
New 호봉산정 엑셀 문의드립니다. 엑셀파일첨부파일 (2) 답변완료
아르카디안 | 2025.05.08 | 추천 0 | 조회 51
아르카디안 2025.05.08 - 51
78515 함수/공식
New 엑셀 질문 드립니다.ㅠ.ㅠ 첨부파일 (1)
숲의사제 | 2025.05.08 | 추천 0 | 조회 48
숲의사제 2025.05.08 - 48
78511 함수/공식
New 입사일자로 부터 매년 알림 (2)
국빱 | 2025.05.08 | 추천 0 | 조회 65
국빱 2025.05.08 - 65
78510 문서서식
New 조건부 서식 적용 문의 엑셀파일첨부파일 (2) 답변완료
장수벌레 | 2025.05.08 | 추천 0 | 조회 95
장수벌레 2025.05.08 - 95
78508 구글시트
New 자산관리포트폴리오 구글 시트에 대해서 궁금한 점이 있습니다. 꼭 도움 부탁드려요!! 첨부파일 (3) 답변완료
자본주의졸업을위해 | 2025.05.08 | 추천 0 | 조회 43
자본주의졸업을위해 2025.05.08 - 43
78507 함수/공식
New 고수님~수식문의드려요 엑셀파일 (2) 답변완료
| 2025.05.08 | 추천 0 | 조회 81
2025.05.08 - 81