VBA 유저폼 내 Optionbox 사용법과 실행시 발생하는 문제점들 관련 질문드립니다.
VBA
작성자
병욱
작성일
2022-05-01 16:32
조회
49
- optionbox click 이벤트 사용 시, false -> true로 변환되는 순간에만 이벤트 발생하는데 혹시 true인 상태에서 한번 더 클릭할 때 동작하게 하는 법은 없을까요? 정 방법이 없을 경우, optionbox위에 투명한 버튼 만들어서 해결하면 될 것 같긴 한데, 정석적으로 해결방법이 있나 궁금합니다.
- 설정한 userform 내에서 외부 파일 경로 미선택 시, 유저폼이 꺼지는 문제점이 있습니다. sub_FileSelection에서 Mutiple_FileDialog, else if 부분 end 때문인 것 같아서 수정해 보려 했으나 어떻게 수정하던지 오류가 나더라고요 ㅠ
- sheetname을 중복되게 할 경우 namingErrorHandler를 이용해서 에러 처리를 했습니다. 그런데 한번은 작동하는데 2번 이상 하면 디버그 창이 뜨면서 동작이 안 되네요. 지역창이랑 직접실행창으로 값 확인해봤는데 제 상식상에는 문제될 게 없는 것 같은데 안되더라고요. 1,2번과 달리 오류 원인조차 모르겠어서 오류 원인 좀 확인 부탁드립니다.
※ 유저폼 중 frmShtSelect 부분만 봐주시면 됩니다. 감사합니다!
전체 6,469
번호 | 카테고리 | 제목 | 작성자 | 작성일 | 추천 | 조회 |
📑 MS에서 특별한 라이브를 진행합니다! - 애저 SQL-엑셀 실시간 연동 프로그램 만들기!
![]() ![]() |
![]() ![]() |
2022.05.24 | 4 | 126 | ||
공지사항 | 함수/공식 |
⭐ [더 나은 커뮤니티 문화를 위한 Q&A 글 작성 규칙] ⭐
(65)
오빠두엑셀
|
2021.10.28
|
추천 80
|
조회 4490
|
![]() ![]() |
2021.10.28 | 80 | 4490 |
34406 | 함수/공식 |
New sum 함수 오류?
![]() ![]() |
![]() |
2022.05.25 | 0 | 17 |
34405 | VBA |
New 중복데이터가 많은데 맨 위에 있는 행의 데이터만 남길 수 있는 방법이 있을까요?
![]() ![]() |
![]() |
2022.05.25 | 0 | 29 |
34402 | VBA |
New vba 특정문자 입력시 현재시간 구동 관련
![]() ![]() |
![]() |
2022.05.25 | 0 | 32 |
34400 | 함수/공식 |
New 다른 셀 값 참조시 결과값이 0으로만 나오는 현상 문의
![]() ![]() |
![]() |
2022.05.25 | 0 | 27 |
34395 | VBA |
New 조건이 맞을 경우 범위데이터 이동 or 복사,삭제 문의
![]() ![]() |
![]() |
2022.05.25 | 0 | 33 |
34392 | 함수/공식 |
New 다른 파일을 참조하여 합계를 구하는데, 그 참조 파일의 이름이 바뀐다면?
(1)
![]() |
![]() |
2022.05.25 | 0 | 26 |
34391 | 기능/도구 |
New F1 키 누르면 나오는 도움말 끄는 단축키는 없나요?
(2)
![]() |
![]() |
2022.05.25 | 0 | 26 |
34390 | 함수/공식 |
New 셀이 빈 경우 텍스트조인이 실행되지 않도록 하는 방법
![]() ![]() |
![]() |
2022.05.25 | 0 | 44 |
34387 | VBA |
New 개별공시지가조회 셀레니움
![]() ![]() |
![]() |
2022.05.25 | 0 | 30 |
34378 | 기능/도구 |
New 특정 글자의 데이터만 따로 분리할 수 있는 방법이 있을까요?
(8)
답변완료
![]() |
![]() |
2022.05.25 | -1 | 64 |
34376 | VBA |
New VBA 동적 범위 테두리 만들기
![]() ![]() |
![]() |
2022.05.24 | -2 | 38 |
34372 | VBA |
New VBA Do until loop 문중에서 출하지시서 코드를 빌려 짜는데.. 한계가 왔습니다.
![]() ![]() |
![]() |
2022.05.24 | 0 | 39 |
34369 | 기능/도구 |
New 하이퍼링크
(1)
![]() |
![]() |
2022.05.24 | 0 | 21 |
34367 | VBA |
New 짝수 페이지 로고 크기 변경 매크로를 어떻게 만들어야 할까요?
![]() ![]() |
![]() |
2022.05.24 | 0 | 23 |
34365 | VBA |
New 정해진 양식에 여러 부서에서 부분부분 작성된 자료를 취합하는 방법이 궁금합니다.
![]() ![]() |
![]() |
2022.05.24 | -1 | 37 |
34364 | 함수/공식 |
New 엑셀 if수식 문의 드립니다.
(1)
![]() |
![]() |
2022.05.24 | 0 | 32 |
34361 | 함수/공식 |
New "06w 2"에서 "2"만 추출하여 총합을 구하는 방법
![]() ![]() |
![]() |
2022.05.24 | 0 | 47 |
34360 | 함수/공식 |
New 특정 셀만 기입하게 할 수 있을까요? (셀 잠금 말고)
![]() ![]() |
![]() |
2022.05.24 | 0 | 32 |
34356 | 함수/공식 |
New 날짜(월) 계산하는 문제 관련
(5)
답변완료
![]() |
![]() |
2022.05.24 | 1 | 48 |
34350 | 함수/공식 |
New 강의별 출석부를 만들고 싶어요
![]() ![]() |
![]() |
2022.05.24 | 0 | 53 |
34348 | 기능/도구 |
New 다른 통합 문서로 시트 복사시 함수 파일명 관련
(4)
답변완료
![]() |
![]() |
2022.05.24 | 0 | 38 |
34345 | 파워쿼리/피벗 |
New 각 테이블 마다 중복제거관련
(13)
답변완료
![]() |
![]() |
2022.05.24 | 0 | 57 |
34341 | 기능/도구 |
New 엑셀 시트 글자크기 및 사이즈 조정 되나요?
![]() |
![]() |
2022.05.24 | 0 | 31 |
34340 | 함수/공식 |
New 여러개의 열에 만족하는 값 구하기
(5)
답변완료
![]() |
![]() |
2022.05.24 | 0 | 49 |
34338 | 문서서식 |
New 선택한 셀 절대값으로 한번에 바꾸는 방법
(2)
![]() |
![]() |
2022.05.24 | 0 | 44 |
34337 | 구글시트 |
New 발주대비 입고일자를 카운팅 하고싶습니다.
(2)
답변완료
![]() |
![]() |
2022.05.24 | 0 | 37 |
34336 | VBA |
New 다른 시트의 두 셀 연동
![]() |
![]() |
2022.05.24 | 0 | 41 |
34334 | VBA |
New VBA 검색창을 만들었는데 엔터가 되지 않습니다..!
(2)
답변완료
![]() |
![]() |
2022.05.24 | 0 | 45 |
34332 | 구글시트 |
New 2개의 조건을 충족하는 조건 값을 다른 시트에서 끌어 올려면 어떻게 해야 할까요?
(1)
![]() |
![]() |
2022.05.24 | 0 | 27 |
34330 | 함수/공식 |
New 엑셀에 수식 합치기 기능이 있을까요?
![]() ![]() |
![]() |
2022.05.24 | 0 | 61 |
님께서 질문하신 2번 사항 관련하여,
Function Multiple_FileDialog에서
ElseIf Selected = 0 Then
'// MsgBox "선택된 파일이 없으므로 프로그램을 종료합니다." <-- 삭제
Exit Function <-- End를 Exit Function으로 변경
그리고, frmshtSelect에서 strFilePath가 없으면 Exit Sub를 하는 것이 어떨까요?
strFilePath = Multiple_FileDialog(, , , , , False)
If strFilePath = "" Then
MsgBox "선택된 파일이 없습니다"
Exit Sub
End If
도움이 되시길 빕니다.
@Jas 님 새벽까지 만들고 뻗어버리는 바람에 지금에서야 확인했네요. 빨리 가서 확인해보겠습니다. 답변 너무너무 감사합니다! 큰 도움 됐습니다.
@병욱 님 @병욱님,
도움이 되신다면 다행입니다. 혹시 문제점 있으시면 메모 남겨주세요.
수고하세요.
@Jas 님 전부 정상 작동하는 것 확인했습니다. 감사합니다!
추가적으로 답변 드립니다.
세번째 질문은 다음의 Code를 참조하여 수정하시면 될 것으로 보입니다.
Dim fileName As String
On Error Resume Next
Do
fileName = InputBox("시트명을 입력하세요")
Err.Clear
ActiveSheet.Name = fileName
If Err = 0 Then
Exit Do
End If
Loop Until (Err = 0)
On Error GoTo 0
그리고 첫번째 질문은 OptionButton을 님이 제시한 것으로 하는 방법은 없는 것으로 알고 있습니다. 다만, 입력버튼을 누르면 ListBox의 List를 다시 호출하는 보여주는 방식으로 해결 가능할 것으로 보입니다.
도움이 되시길 빕니다.