파일선택 매크로에서 파일 미선택시 디버그 해결문제
파일 열기 후 시트 가져오기에서 파일선택창을 닫으면
For i = 1 To UBound(Files)
에서 디버그가 발생하는 데, 디버그 없이 정상 종료되게 조건을 걸 수 있을까요?
Sub 파일열기(Optional Title As String = "파일을 선택하세요", Optional FilterName As String = "엑셀파일", _
Optional FilterExt As String = "*.xls; *.xlsx; *.xlsm", Optional InitialFolder As String = "", _
Optional InitialView As MsoFileDialogView = msoFileDialogViewList, Optional MultiSelection As Boolean = True, Optional PathDelimiter As String = "|", _
Optional withPath As Boolean = True, Optional withExt As Boolean = True)
'
' 다른파일열기 매크로
'
Dim Fname As String '열은 파일의 이름을 넣을 변수
Dim intNo As Integer '복사할 파일의 시트번호를 넣을 변수
intNo = 1 '선택한 파일의 1번 시트를 가져옴. 원하는 시트번호로 바꾸면 됨.
Fname = Application.GetOpenFilename("Excel Files" & _
"(*.xls;*.xlsx;*.xlsm), *.xls;*.xlsx;*.xlsm", , "선택파일 불러오기") '복사할 원본파일 선택
If Fname = "False" Then Exit Sub '취소를 누르면 중단
Workbooks.Open FileName:=Fname '선택한 파일을 열고
If intNo > Sheets.Count Then '만약 입력한 숫자가 시트 개수보다 크면
MsgBox intNo & "번 시트가 존재하지 않음" '메시지 표시하고
Exit Sub '매크로 중단
End If
End Sub
Sub file_name()
Dim Fname As String
Set T_ws = ActiveSheet
Set T_wb = ThisWorkbook
k = 1
Files = Application.GetOpenFilename(MultiSelect:=True)
For i = 1 To UBound(Files)
Set file = Workbooks.Open(FileName:=Files(i))
For j = 1 To file.Worksheets.Count
Set shC = file.Sheets(k)
shC.Copy After:=T_wb.Worksheets("양식")
k = k + 1
Next j
file.Close
Next i
End Sub
번호 | 카테고리 | 제목 | 작성자 | 작성일 | 추천 | 조회 |
[📚교재 출간 안내] 「진짜쓰는 실무엑셀」 , 드디어 출간되었습니다! (218)
![]() ![]() |
![]() ![]() |
2022.02.03 | 501 | 232228 | ||
공지사항 | 문서서식 |
⭐ [더 나은 커뮤니티 문화를 위한 Q&A 글 작성 규칙] ⭐
(197)
오빠두엑셀
|
2021.10.28
|
추천 269
|
조회 14511
|
![]() ![]() |
2021.10.28 | 269 | 14511 |
61563 | 피벗테이블 |
New 피벗테이블 평균 DIV, 합계는 0으로 나오는 문제
![]() ![]() ![]() |
![]() |
16:23 | - | 13 |
61562 | 함수/공식 |
New 군경력 기간 합산하고 승급월 구하는 수식
![]() |
![]() |
16:17 | - | 16 |
61560 | 함수/공식 |
New 자동으로값구하기
![]() ![]() |
![]() |
16:03 | - | 15 |
61557 | VBA |
New 특정셀에 데이터가 없다면 행을삭제하는 방법을 알고싶습니다
![]() |
![]() |
14:11 | 1 | 23 |
61549 | 구글시트 |
New 스프레드 시트에서 체크박스 액션으로 클릭한 사용자를 기록할 수 있나요?
![]() ![]() |
![]() |
10:53 | - | 28 |
61543 | VBA |
New 시트 보호 상태에서 Imagelookup 매크로 적용시키고 싶어요
![]() |
![]() |
2023.09.22 | - | 35 |
61541 | VBA |
New VBA 편집시 오류 났을 때 폼크기 자동변경 해결방법
![]() ![]() |
![]() |
2023.09.22 | - | 38 |
61537 |
New A B C 데이터 패턴을 활용한 년수 계산값
![]() ![]() ![]() |
![]() |
2023.09.22 | - | 45 | |
61531 | VBA |
New 유저폼으로 표에 데이타를 입력하는 방법
![]() ![]() |
![]() |
2023.09.22 | - | 54 |
61528 | 기능/도구 |
New 콤보박스의 텍스트를 조건부 서식에 활용하는 방법 문의
(1)
![]() |
![]() |
2023.09.22 | - | 47 |
61527 | VBA |
New 제품코드 찾기 함수 또는 매크로
![]() ![]() |
![]() |
2023.09.22 | - | 55 |
61526 | 함수/공식 |
New 재고 관리 계산(복잡합니다ㅠㅠ)
![]() ![]() ![]() |
![]() |
2023.09.22 | - | 68 |
61522 | 함수/공식 |
New 엑셀 날짜 함수 질문입니다
(3)
답변완료
![]() |
![]() |
2023.09.22 | - | 65 |
61521 | 함수/공식 |
New vlookup질문
![]() ![]() |
![]() |
2023.09.22 | 1 | 65 |
61520 | 문서서식 |
New 하이퍼링크 연결
![]() |
![]() |
2023.09.22 | - | 39 |
61516 | 함수/공식 |
New 다른시트의 중복된 모든 값과 그행을 다른 시트에 정리 하고 싶어요
![]() ![]() |
![]() |
2023.09.22 | - | 54 |
61515 | 문서서식 |
New 정말 간단한 복사 붙여넣기 문의 드립니다.
(1)
![]() |
![]() |
2023.09.22 | - | 50 |
61514 | 함수/공식 |
New 다른시트에 있는 셀값 가져오는 방법 도움 요청드려요..(왕초보)
![]() ![]() ![]() |
![]() |
2023.09.22 | - | 57 |
61511 | 피벗테이블 |
New 피벗 테이블 목록?에서 불필요한 내용 지우기
![]() ![]() |
![]() |
2023.09.22 | - | 41 |
61506 | VBA |
New vba 이전값으로 되돌리기
(1)
답변완료
![]() |
![]() |
2023.09.22 | - | 56 |
61503 | 기능/도구 |
New 여러시트 안에 있는 내용을 동시에 숨기기 및 숨기기 취소를 하고 싶습니다.
![]() ![]() |
![]() |
2023.09.22 | - | 47 |
61502 | 함수/공식 |
New 총액에서 순차별로 출금과 입금이되는 함수를 자동으로 채울수있나요?
![]() ![]() |
![]() |
2023.09.22 | - | 49 |
61501 | 함수/공식 |
New VLOOKUP #REF 에러 질문입니다!
(1)
![]() |
![]() |
2023.09.22 | - | 42 |
61499 | 함수/공식 |
New 두개의 값으로 원하는 내용 출력
![]() ![]() |
![]() |
2023.09.22 | - | 44 |
61496 | 기능/도구 |
New 엑셀 챗GPT 파일 사용 후 종료시 마다 기존 파일을 바꾸시겠냐고 팝업이 뜹니다
![]() ![]() ![]() |
![]() ![]() |
2023.09.22 | - | 40 |
61495 | 함수/공식 |
New 연간 data 중 월별로 같은 단어의 값의 횟수를 파악하는 함수(설명이 어려우니 참고자료 확인 부탁드립니다.)
![]() ![]() ![]() |
![]() |
2023.09.22 | - | 48 |
61486 | 문서서식 |
New 엑셀 파일>옵션 이게 안열려요.
![]() ![]() |
![]() |
2023.09.21 | - | 45 |
61480 | 피벗테이블 |
New 피벗테이블 데이터 수정 후 집계반영에 대해서 질문합니다.
(2)
![]() |
![]() |
2023.09.21 | - | 53 |
61477 | 함수/공식 |
New 이전 30주간 같은 요일 평균값 구하기에서 어려움이 있어 질문을 드립니다.
![]() ![]() |
![]() |
2023.09.21 | - | 54 |
61474 | 문서서식 |
New 페이지설정 문의
![]() ![]() |
![]() |
2023.09.21 | - | 51 |
@lIIIlllllII 님
@마법의손 님 적어주신 방법으로 코드 수정해봤는데 에러가 발생하네요
Sub file_name()
Dim Fname As String
Set T_ws = ActiveSheet
Set T_wb = ThisWorkbook
k = 1
Files = Application.GetOpenFilename(MultiSelect:=True)
If Files <> False Then
For i = 1 To UBound(Files)
Set file = Workbooks.Open(FileName:=Files(i))
For j = 1 To file.Worksheets.Count
Set shC = file.Sheets(k)
shC.Copy After:=T_wb.Worksheets("양식")
k = k + 1
Next j
file.Close
Next i
Else
Exit Sub
End If
End Sub