1. 달력 유저폼 사용법
다양한 엑셀 자동화 프로그램에 손쉽게 적용할 수 있는 엑셀 달력 유저폼 사용방법에 대해 살펴봅니다.
2. 데이터 정렬 - 기초 원리
데이터가 정렬에 사용되는 다양한 정렬 방식과 차이점 및 대표적으로 사용되는 2가지 데이터 정렬 방식에 대해 알아봅니다.
3. 이번 강의에서 사용된 주요 보조함수
이번 강의에서는 2차원 배열 정렬에 사용되는 Sort2DArray 함수의 사용법을 알아봅니다.
이후 배열을 범위로 출력하는 ArrayToRng 함수의 개선된 점과 실전 사용법을 단계별로 살펴봅니다.
4. 재고 등록 및 조회 명령문 작성
이번 강의에서는 재고 입출고 정보를 조건에 따라 조회하는 유저폼을 제작하고 각 버튼의 동작을 설정합니다.
이후 이전 강의에서 알아본 DB관련 함수 및 2차원 배열 정렬함수를 사용하여 재고 입출고 데이터를 조회하는 명령문을 작성합니다.
라이브 정보
회차
29회
방송일
2021년01월02일
카테고리
멤버쉽 라이브 강의
등급
Plus
커리큘럼
질문 & 댓글 28
스크립트
자막을 불러오는 중...
type mismatch가 뜨면서 실행이 안되는데 왜 그럴까요? 진한색으로 표시해 두었습니다.
Sub resetDate()
Dim Y As Integer: Dim m As Integer: Dim d As Integer: Dim w As Integer
Dim i As Integer
Y = left(Me.lblYear.Caption, 4): m = left(Me.lblMonth.Caption, Len(Me.lblMonth.Caption) - 1): d = Day(DateSerial(Y, m + 1, 1) - 1)
w = Weekday(DateSerial(Y, m, 1))
막상 다른엑셀에 적용해보니...달력을 클릭하였을때 일자가 바로 나타나지 않고...모두 00 00 00 00....이런식으로 나타납니다.
완성본 파일을 실행하여 보니 같은 현상이 나타나네요
왜 이런 오류가 나타나는건지...^^a 해결방법 좀 부탁드리겠습니다.
참고로 제가 사용하는 엑셀버전은 2010이상 입니다.
달력 추가기능의 유저폼 명령문 중 "UserForm_Initialize" 코드 중간에
resetYear 아래로
resetDate
를 추가해보시겠어요? 전체 코드를 아래와 같이 수정해보세요.
셀에 선택한 달력날짜가 입력되게 하려면 어떡하면 될까요?
셀과 유저폼 연결이 어렵내요
달력 유저폼은 달력 추가기능 파일의 유저폼과 모듈을 사용하실 엑셀파일로 옮겨서 사용하시면 됩니다.
달력 날짜를 얻는 방법은, GetDate 함수를 사용해보시겠어요? :)
type mismatch 에러가 나오네요,,
Me.scrlMonth.Value = left(Me.lblMonth.Caption, Len(Me.lblMonth.Caption) - 1)
이 부분 들어가는 부분들에서 자꾸 에러나오는데 혹시 이유좀 알 수 있을까요?ㅜ
제 예상에는 scrlMonth 로는 left 형식으로 값이 들어갈 수 없어서 그런것이 아닐까 생각됩니다.
Me.scrlMonth.Value = cLng(left(Me.lblMonth.Caption, Len(Me.lblMonth.Caption) - 1))
이렇게 바꿔서 사용해보세요.
Custom Array(사용자 목록)으로 정렬하기 위한 별도의 코드를 따로 작성해야 합니다.
다름이 아니라, 명령단추를 이용하여 정해진 셀에 입력하는 방식이 아니라,
달력을 입력해야 하는 셀이 많아 "B4:B100" 범위와 "H4:H100"범위의 셀을 선택했을때 달력폼이 팝업되고, 해당셀에 입력할수 있는 코드로 수정하는 방법을 알고 싶습니다. 감사합니다!
만약 B4:B100 범위 중 하나의 셀을 선택 시, 달력이 팝업되고 날짜를 선택했을 때 B4:B100 범위에 동일한 날짜를 한 번에 입력하려면 시트 모듈에서 WorkSheet_SelectionChange 이벤트를 사용하면 됩니다.
아래와 같이 코드를 작성 후 사용하면 됩니다.
남겨드린 답변이 문제를 해결하시는데 도움이 되었길 바랍니다. 감사합니다.
달력 유저폼이 팝업이 되고, 날짜를 선택하지 않고, 유저폼의 "X"눌러 달력을 종료를 하면, "12:00:00 AM" 입력이 되는데, 날짜를 선택하지않고 종료했을때 빈칸으로 끝내려하는데, 어떻게 수정해야 할까요?
GetDate 함수로 12:00:00 AM 대신 빈칸을 출력하시려면, 기존의 GetDate 함수를 아래 함수로 변경해보시길 바랍니다.
감사합니다.