VBA 관련 문의드립니다!
VBA
작성자
레벨업 김말이
작성일
2023-11-05 16:51
조회
210
안녕하세요
회사에서 업무중에 문의사항이 있어서 이렇게 작성하게 되었습니다.
각부서마다 옷사이즈 주문을 받아서 집계하는 일을 하고 있습니다.
하지만 각부서마다 다른 양식을 사용하고 있습니다.
이러다보니, 하나의 양식으로 통일하는것이 쉽지 않습니다 (각부서에 요청하였지만, 잘 안되네요...)
그래서 각부서의 다른 양식 => 하나의 양식으로 집계할 수 있는 방법을 문의드리고자 합니다.
엑셀 고수분들께 도움 부탁드립니다 ㅠ
전체 13,306
번호 | 카테고리 | 제목 | 작성자 | 작성일 | 추천 | 조회 |
[📚교재 출간 안내] 「진짜쓰는 실무엑셀」 , 드디어 출간되었습니다! (235)
![]() ![]() |
![]() ![]() |
2022.02.03 | 514 | 259424 | ||
공지사항 | 문서서식 |
⭐ [더 나은 커뮤니티 문화를 위한 Q&A 글 작성 규칙] ⭐
(197)
오빠두엑셀
|
2021.10.28
|
추천 280
|
조회 17669
|
![]() ![]() |
2021.10.28 | 280 | 17669 |
64367 | VBA |
New 특정셀에 여러 변수 값을 대입하여 나오는 계산 값을 변수에 맞게 한번에 출력되게 하는 방법이 있을까요??
![]() ![]() ![]() |
![]() |
16:01 | - | 2 |
64366 | 문서서식 |
New 전체인쇄와 시트1개 인쇄시 이미지 품질 저하문제
![]() ![]() |
![]() |
15:23 | - | 12 |
64360 | 함수/공식 |
New 각 열의 텍스트를 비교하여 일치율에 따라 관련열 값 가져오기
![]() ![]() |
![]() |
13:50 | - | 23 |
64359 | 구글시트 |
New 엑셀 또는 구글시트 - 다른시트 데이터의 새로운값만 순차적으로 가져오는방법..
(3)
![]() |
![]() |
13:42 | - | 21 |
64355 | 함수/공식 |
New sumifs 문의 드립니다.
(2)
답변완료
![]() |
![]() |
12:43 | - | 21 |
64353 | 함수/공식 |
New 엑셀 수식이 안 먹어요~
![]() ![]() |
![]() |
11:40 | - | 34 |
64352 | VBA |
New 명령단추 클릭시 색상변경
![]() ![]() ![]() |
![]() |
11:39 | - | 20 |
64351 | VBA |
New Sendkey 초기화 관련 문의
![]() |
![]() |
11:27 | - | 18 |
64340 | 함수/공식 |
New 셀 값을 변경하는 수식 사용 중에 작동이 안돼서 문의드립니다.
![]() ![]() |
![]() |
09:35 | - | 26 |
64333 | 함수/공식 |
New 실시간 데이터 연동 방법 좀 알려주실 수 있나요??
(2)
![]() |
![]() |
00:27 | - | 40 |
64329 | 함수/공식 |
New IF와 VLOOKUP을 같이써서 처리를 해야하는 셀인데 어떻게 해야 맞는지 모르겠네요 ㅠㅠ...
![]() ![]() |
![]() |
2023.11.29 | - | 51 |
64327 | 함수/공식 |
New 몇주째 도저히 모르겠습니다ㅜㅜ 일별/주간/월별 데이터 불러올 함수 알려주실분 꼭 부탁드립니다.
![]() ![]() |
![]() |
2023.11.29 | - | 83 |
64326 | 구글시트 |
New 엑셀이나 구글시트에서 특정 데이터를 입력하면 표시,금지 할수있는 방법을 알수있을까요 ?
(2)
![]() |
![]() |
2023.11.29 | - | 37 |
64325 | 함수/공식 |
New 엑셀함수관련 문의드립니다 기초적인부분이지만 해결방법이 궁금합니다
![]() ![]() |
![]() |
2023.11.29 | - | 46 |
64320 | 파워쿼리/피벗 |
New 파워쿼리 엑셀 파일 불러오기 액세스 거부 ㅜㅠ
![]() ![]() |
![]() |
2023.11.29 | - | 38 |
64317 | VBA |
New 집계함수를 반영하니 계산시간이 많이 걸립니다 다른방법이 없는지요
![]() ![]() |
![]() |
2023.11.29 | - | 57 |
64316 | 문서서식 |
New 조건부서식 하나가 막히는 데 도와주세요
![]() ![]() |
![]() |
2023.11.29 | - | 47 |
64312 | 함수/공식 |
New 특정 텍스트 추출
![]() ![]() ![]() |
![]() |
2023.11.29 | - | 69 |
64311 | 함수/공식 |
New 함수 문의
![]() ![]() |
![]() |
2023.11.29 | - | 48 |
64310 | 함수/공식 |
New 기간 중복을 제외하고 주당 사용 일수 계산 문의드립니다.
![]() ![]() ![]() |
![]() |
2023.11.29 | - | 29 |
64294 | 함수/공식 |
New 표준편차 계산시 특정월의 데이터만 계산하고 싶습니다
![]() ![]() ![]() |
![]() |
2023.11.29 | - | 37 |
64292 | 함수/공식 |
New 다중조건으로 다른문서 데이터 가져오기
![]() ![]() |
![]() |
2023.11.29 | - | 50 |
64287 | 차트/그래프 |
New 자동 생성/변경 차트 문의
![]() ![]() |
![]() |
2023.11.28 | - | 42 |
64286 | 함수/공식 |
New SUMIF 함수 문의드립니다. !!
![]() ![]() |
![]() |
2023.11.28 | - | 61 |
64281 | VBA |
New 거래처 조회
![]() ![]() |
![]() |
2023.11.28 | - | 75 |
64278 | 피벗테이블 |
New 피벗테이블를 이용하여 차트 만들 때 평균을 표시하고 싶습니다~!
![]() ![]() ![]() |
![]() |
2023.11.28 | - | 55 |
64266 | 함수/공식 |
New 엑셀 수식 수정 어떻게 해야될까요??
![]() ![]() |
![]() |
2023.11.28 | - | 65 |
64263 | 기능/도구 |
New 인쇄 영역 음영 구분하여 자동 설정 할 수 있는 방법이 있을까요?
![]() ![]() |
![]() |
2023.11.28 | - | 43 |
64257 | 함수/공식 |
New DATA가 열방향일때의 월별 DATA를 구하고 싶습니다.
![]() ![]() ![]() |
![]() |
2023.11.28 | - | 52 |
64251 | 함수/공식 |
New 맨 밑 행부터 몇 개까지 같은 값인지 알고싶습니다
![]() ![]() ![]() |
![]() |
2023.11.27 | - | 83 |
@레벨업 김말이 님 감사합니다.
@레벨업 김말이 님 첨부 파일 참조
A,B,C 각 시트 필드명과 순서 상이
매크로 실행-->통합시트 1행 제외 모든 행 삭제-->2초간 정지-->통합 작업
첨부파일 : 시트-통합.xlsm
@김재규 님 감사합니다 여전히 VBA 어렵게만 느껴지지만 많은 것들을 배울 수 있는 시간이었어요!
@레벨업 김말이 님 좋은 정보 감사합니다.
@레벨업 김말이 님 아래 코드를 사용하면 될겁니다.
https://www.oppadu.com/엑셀-vba-시트-합치기-시트병합-프로그램-예제/
코드를 모두 이해하셔도 좋지만, 유저폼이 필요 없다면 여기만 보셔도 될겁니다
개개인마다 처한 상황이 모두 다르기때문에.. 직접 공부해서 만들어보는게 가장 좋습니다
@꾸루꾸루루 님 감사하빈다. 덕분에 VBA공부하는데 도움이 많이 되었습니다!!
@레벨업 김말이 님 변형된 시트의 제목을 모두 정리하는 작업은 해야 합니다. -> 코드에서 fNames에 기록
첨부파일 : 문의사항.xlsm
@원조백수 님 감사합니다 !! 덕분에 많이 배웠어요...
다른곳에서도 적용하고 싶어서, 코딩을 바꿔서 적용해보고 싶었는데... 잘안되네요...
코딩이 정말 쉽지 않다는걸 매번 느끼게 됩니다. 감사합니다.
@원조백수 님 안녕하세요~ 원조백수님
위의 VBA코드를 다른곳에도 적용하고 싶은데, 반복해서 디버그가 생겨서 문의드립니다.ㅠ
위의 요청했던 범위는 vTitle = sh.Range("E1:L1").Value2 인데. 이번에는 vTitle = sh.Range("A1:L1").Value2
범위를 넓혔어요 그런데... 다른부분 코드 다 수정했다고 생각했는데 디버그가 나타나네요...ㅠㅠㅠ
번거롭겠지만 vba 코드 다시한번 확인해주실수 있으실까요?
======================================================================
Sub MergeData()
Dim ws As Worksheet, fNames As Variant, iNext As Long, Col As Variant, vCopy As Variant
Dim sh As Worksheet, vData As Variant, vTitle As Variant, iLast As Long, C As Long, R As Long
'// 각 부서 양식에서 사용한 필드명의 변형들을 결과값에 표시되어야 하는 열 순서대로 모두 나열합니다.
fNames = Array("CS상태", "NO", "택배사", "송장번호", "부서|담당부서|DEPT", "성함|이름|성명", "사번|사원번호|개인번호", _
"휴대폰1|개인연락처", "동복|상품명", "사이즈명|옵션사이즈", _
"수량|개수", "금액|구매금액")
Set ws = Worksheets("결과값")
For Each sh In Worksheets
If sh.Name = ws.Name Then GoTo NEXT_SH
sh.AutoFilterMode = False
iLast = sh.Cells(sh.Rows.Count, "A").End(xlUp).Row
If iLast < 2 Then GoTo NEXT_SH
iNext = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row + 1
vTitle = sh.Range("A1:BX1").Value2
vData = sh.Range("A2:BC" & iLast).Value2
For C = LBound(vTitle, 2) To UBound(vTitle, 2)
Col = Application.Match("*" & vTitle(1, C) & "*", fNames, 0)
If Not IsError(Col) Then
vCopy = Application.Index(vData, 0, C)
For R = LBound(vCopy) To UBound(vCopy)
'// 갑이 숫자형 '문자열'일 때 숫자로 변경되지 않도록 수정
If TypeName(vCopy(R, 1)) = "String" And IsNumeric(vCopy(R, 1)) Then
vCopy(R, 1) = "'" & vCopy(R, 1)
End If
Next
ws.Cells(iNext, Col + 4).Resize(UBound(vData, 1), 1) = vCopy
Else
'// 열 제목이 fNames에서 찾을 수 없으므로 복사하지 않음
End If
Next C
NEXT_SH:
Next sh
End Sub
첨부파일 : 문의사항-231119.xlsm
@레벨업 김말이 님 대체적으로 코드를 이해하고 있지 않으므로 최종 양식으로 정리를 해 주세요.
표제목에 줄바꿈이 있는것과 없는 것은 다른 것입니다.
첨부파일 : 문의사항-231119.xlsm
@원조백수 님 이렇게 도움을 주셔서 감사합니다!!
실은 제가 마켓정보를 하나로 취합하는 역할을 하고 있습니다...
보내주신 코드를 활용하여, 마켓정보를 하나로 취합하려고 하는데, 다시 코드 디버깅이 나오네요 ㅠ
범위는 vTitle = sh.Range("A1:BX1").Value2 동일하게 범위를 잡고, fNames = Array = 할당 명칭을 그대로 넣었는데도 디버깅이 나오는 이유가 무엇일까요?ㅠ 재차 문의드려서 번거롭게 해드려 죄송합니다. 혹시라도 괜찮으시면 다시한번 문의드리고자 합니다.ㅠㅠ
첨부파일 : 문의사항-231120.xlsm
@레벨업 김말이 님 VBA 코드를 전혀 이해하지 못하고 계시므로,
추가로 답을 드리는 게 의미가 없을 것 같아서
요청하신 검토는 진행하지 않겠습니다.
@원조백수 님 알겠습니다. VBA 공부를 어떠한 방식으로 해야할지 고민해야할 시점인가 봅니다!!
무튼 여러가지 문의사항 좋은 답변주셔서 감사합니다!