[엑셀] 검색부분 질문입니다.

VBA
작성자
new_hwan
작성일
2021-07-22 11:12
조회
88
엑셀버전 : 엑셀2013

운영체제 : 윈도우10

안녕하세요

첨부파일의 내용을 보시면 업체별로 분류된 파일예제가 있습니다.
내용 보면 "검색" 부분에 년도(숫자)를 집어 넣으면 해당 년도만 검색되게 되어있는데
1. 저기 "검색"부분을 년도도 검색되고, 업체명을 집어 넣어도 검색이 되게 끔 구현하고 싶고
2. 지금은 예를 들어  2012년부터 2015년까지는 숨기기 기능을 하고 검색 부분에 년도(숫자)를
넣으면 숨기기 기능이 해제되는데 계속 숨기기가 유지되게 끔 구현하고 싶습니다.
고수 분들의 도움이 필요합니다.
도와주세요. 제발요~
회원등급 : 씨앗등급
포인트 : 37 EP
총질문 : 2 개 (마감율 : 100%)
채택답변 : 0 개
전체 6

  • 2021-07-22 15:04

    UsedRange.Entire.Column메서드는 숨기기를 할때에는 안쓰시는것을 추천드립니다.

    한번 숨겼다가 취소되면 엑셀에서 사용되었다고 판단하고 계속 Column을 카운트 하기때문에 그렇습니다.

    그리고 셀 병합을 하셔서 코드가 복잡해지는거 같아요.

    그냥 셀 병합을 안한 시트를 하나 만들고 그 시트를 토대로 필터링된 값들을 새로운 시트로 가져오는게 훨씬 쉽고 간편하며 작업속도도 빠를거에요.

    그래도 일딴 셀병합된 파일을 토대로 만들었습니다.

    첨부파일 : 예제1.Sol_.xlsm


    • 2021-07-22 16:41

      제가 원하는 기능이 구현되었네요 감사합니다.

      근대 예를 들어 2012년 열을 숨기기하고 검색에 2013년 입력한 다음 지우면 원래대로 숨기기가 풀려버리는데 이것은 어떻게 해야 할까요?

      셀 병합은 저도 안하고 검색해봤는데 업체명이 안나오더라고요 이것도 해결이 가능할까요?


      • 2021-07-22 16:58
        채택된 답변

        음... 원래 작성자님이 올린 파일에 보니 Target.Value가 빈칸이면 전부 숨기기 취소가 되어있던데요...

        If Target.Value = "" Then Range(Cells(1, 2), Cells(1, CLCount)).EntireColumn.Hidden = False: Exit Sub

        여기서 Range(~~~)대신 원래파일에 UsedRange.Columns.count가 되어있던것을 재가 고친건데

        원하고자 하시는 내용을 조금 더 자세히 적어주시면 감사하겠습니다.

        지금 시트에 Private Sub Worksheet_Change(ByVal Target As Range)

        프로시저는 어떤 값들이 변할 때에 적용되는 코딩인데

        어떤 값을 입력해도 변환되었다 판단해서 적용되고 지워도 변환되었다 판단되어 코딩이 적용됩니다.
        입력한 다음 지운다는게 무슨 뜻인지 잘 모르겠습니다 ㅠㅠ
        혹시 2012년을 사용자가 직접 숨기기로 지정했다가 2013년을 검색했다 지워도 2012년을 숨기기로 계속 나두고싶다 라고 말씀하시는게 맞는건가요?


        • 2021-07-22 17:30

          제가 업체별로 2012년은 숨기기 해놨는데요.

          그리고 나서 검색에서 2013년도 검색한번 하고 검색하는 부분에 원래대로 돌아가려고 지우면(del)

          업체별로 2012년 숨기기 해놓은것이 풀려버리더라고요. 설명이 미진하여 죄송합니다.

          첨부파일 : 예제1.Sol_.xlsm


          • 2021-07-22 18:47

            만들기는 했는데 일회성으로 적용되는 VBA를 구현해놓았습니다.

            해당 코드를 이해하신다면 원하고자 하시는 메크로를 쉽게 구현할 수 있을 것입니다.

            일단 제가 해놓은건 기존 시트에 이미 숨기기 되있는 열만 따로 다른 변수에 받아 놓은 후 검색되지 않은 열은 전부 숨기기 한 후

            아까 받아 놓은 숨기기되있는 열을 다시 숨기기 하는 메크로입니다.

            그렇기에 두번째 검색을 할 때에는 원하고자 하는 답이 안나올 겁니다.

            원하고자 하는 열을 받는 방법이 여러가지이기에 전 그냥 기존 시트에 숨기기되있는 열만 받은 것입니다.

            또한 셀병합을 안하고 메크로를 실행해 보셨다 하셨는데
            셀병합이 안되어있다는 뜻은 셀병합안했을때 업체의 행에는 빈칸없이 데이터가 들어가있다 라는 의미입니다.ㅎㅎ

            셀병합을 하게되면 셀병합 한 셀의 처음칸만 값이 들어가고 나머지 칸은 빈칸이 되어 수식, 메크로짜기가 곤란한 상황이 발생하여 그런것입니다.

            그럼 화이팅하십쇼! ㅎㅎ

            첨부파일 : 예제1.Sol__.xlsm


            • 2021-07-23 10:12

              vba쪽은 하나도 모르는데 이렇게 답변 주셔서 감사합니다.

              제가 설명을 잘 못해서 죄송합니다.


전체 3,542
번호 카테고리 제목 작성자 작성일 추천 조회
3528 함수/공식
New =counta(green) 함수 (3) 답변완료
Finir2017 | 2021.08.02 | 추천 1 | 조회 17
Finir2017 2021.08.02 1 17
3527 함수/공식
New 엑셀에서 통합문서내 sheet이름 전체를 불러오는 함수는 없을까요? 첨부파일 (1)
아침햇쌀 | 2021.08.02 | 추천 0 | 조회 14
아침햇쌀 2021.08.02 0 14
함수/공식
New Re: 추가질문입니다 //// 엑셀에서 통합문서내 sheet이름 전체를 불러오는 함수는 없을까요? (1)
아침햇쌀 | 2021.08.02 | 추천 0 | 조회 20
아침햇쌀 2021.08.02 0 20
3526 함수/공식
New IF함수 응용 수식문의입니다(하이픈(-) 인식 관련) 첨부파일 (1)
호우 | 2021.08.02 | 추천 0 | 조회 19
호우 2021.08.02 0 19
3525 기능/도구
New 파파고함수 에러, 네트워크 프레임관련 질문 첨부파일 (1)
H.B | 2021.08.02 | 추천 0 | 조회 11
H.B 2021.08.02 0 11
3524 VBA
New 행과 전체범위를 비교하여 고유값 개수 세기
means**** | 2021.08.02 | 추천 0 | 조회 17
means**** 2021.08.02 0 17
3523 함수/공식
New 행과 전체범위를 비교하여 고유값 개수 세기 (4)
means**** | 2021.08.02 | 추천 0 | 조회 35
means**** 2021.08.02 0 35
3522 VBA
New VBA를 이용한 재고 활용보고 질문드립니다. 첨부파일 (4) 답변완료
황수형(Gallent) | 2021.08.02 | 추천 0 | 조회 59
황수형(Gallent) 2021.08.02 0 59
3521 함수/공식
New 오빠두 데이터유효성 부분 일치 검색 필터 만들기 강의 질문입니다. (6)
월마리아 | 2021.08.01 | 추천 0 | 조회 44
월마리아 2021.08.01 0 44
3520 파워쿼리/피벗
New 파워쿼리 날씨api (1)
엑셀지킴이 | 2021.08.01 | 추천 0 | 조회 34
엑셀지킴이 2021.08.01 0 34
3519 VBA
New 파일열지 않고 시트 가져오기 첨부파일 (4)
ArkGie | 2021.08.01 | 추천 2 | 조회 60
ArkGie 2021.08.01 2 60
3518 함수/공식
New 엑셀로 데이터 비교 첨부파일 (1)
Chris | 2021.08.01 | 추천 1 | 조회 46
Chris 2021.08.01 1 46
3517 기능/도구
New 발주서에 상품 공급가 들어가게 하고 싶어요 첨부파일 (6)
해피365샵 | 2021.08.01 | 추천 0 | 조회 37
해피365샵 2021.08.01 0 37
3516 함수/공식
New 중복된 날짜 제거 후 열로 나열하는 법 궁금합니다 첨부파일 (3)
김성환 | 2021.08.01 | 추천 0 | 조회 31
김성환 2021.08.01 0 31
3515 함수/공식
New 혈압 평균 구하는 법 (1)
밍밍 2호 | 2021.08.01 | 추천 0 | 조회 28
밍밍 2호 2021.08.01 0 28
3514 함수/공식
New index, match 응용버젼 문의드립니다. 첨부파일 (4)
현우 | 2021.08.01 | 추천 0 | 조회 42
현우 2021.08.01 0 42
3513 함수/공식
New 문의 드립니다^^ 첨부파일 (2) 답변완료
해피365샵 | 2021.08.01 | 추천 0 | 조회 46
해피365샵 2021.08.01 0 46
3512 함수/공식
New [한셀] 시험등급이 특급일때 달성한 날짜를 결과값으로 가져오고 싶습니다. 도와주세요! 첨부파일 (1)
라이언 | 2021.08.01 | 추천 0 | 조회 28
라이언 2021.08.01 0 28
3511 VBA
New vba Range의 셀 값을 변수로 값을 대입하기 (1)
vbawhat | 2021.07.31 | 추천 0 | 조회 44
vbawhat 2021.07.31 0 44
3510 VBA
New 텍스트 파일 끝에서부터 키워드로 검색하기 (2) 답변완료
어제부터VBA | 2021.07.31 | 추천 0 | 조회 46
어제부터VBA 2021.07.31 0 46
3509 VBA
New 재고관리 vba 콤보박스 활용 검색 도움부탁드립니다 (1)
ycy | 2021.07.31 | 추천 0 | 조회 48
ycy 2021.07.31 0 48
3508 함수/공식
고수님...첫출근일 함수 부탁드립니다 첨부파일 (2) 답변완료
jhp | 2021.07.30 | 추천 0 | 조회 73
jhp 2021.07.30 0 73
3507 VBA
listbox에 Access query내용을 담는 방법 (1)
마녀 | 2021.07.30 | 추천 0 | 조회 35
마녀 2021.07.30 0 35
3506 함수/공식
구글 스프레드 SUMIFS 함수 (1)
호잇 | 2021.07.30 | 추천 0 | 조회 47
호잇 2021.07.30 0 47
3505 VBA
구글 스프레드시트에서 vba 모듈 활용법 (1)
aksr**** | 2021.07.30 | 추천 0 | 조회 44
aksr**** 2021.07.30 0 44
3504 함수/공식
다중조건 최대값 & 최소값 함수 문의의 건 첨부파일 (1)
kangj**** | 2021.07.30 | 추천 0 | 조회 46
kangj**** 2021.07.30 0 46
3503 파워쿼리/피벗
파워쿼리, 특정 시트의 셀값 참조하여 필터링하기 (2)
| 2021.07.30 | 추천 1 | 조회 52
2021.07.30 1 52
3502 함수/공식
index(출력값,match(찾을값,범위,0)) 로 값을 구할 때 "match의 범위"를 "두개의 열"로 확장하는 방법? (3) 답변완료
HoDee | 2021.07.30 | 추천 1 | 조회 60
HoDee 2021.07.30 1 60
3501 기능/도구
스마트아트 작성 문의드려요 첨부파일 (1)
비달빵순 | 2021.07.30 | 추천 0 | 조회 35
비달빵순 2021.07.30 0 35
3500 함수/공식
엑셀 색상별 합계 3초만에 구하는 방법 강의를 듣고 색상별 개수를 구하는 방법을 알려 주세요 (8)
Finir2017 | 2021.07.29 | 추천 0 | 조회 61
Finir2017 2021.07.29 0 61
3499 함수/공식
lookup 관련 찾는 범위가 필드이고 반환 열이 첫번째 인데 반환 값이 여러개, 반환 범위가 가로인 경우 첨부파일 (5) 답변완료
means**** | 2021.07.29 | 추천 1 | 조회 67
means**** 2021.07.29 1 67