달력 컨트롤을 이용해 일자별 식단표를 만들어보았다.
스크린샷에는 보이지 않지만 1월부터 12월까지 12개 시트로 각 일자별로 식단이 짜여있고
달력을 클릭하면 해당 일자의 식단을 가져오게 되어있다.
기존 사용하던 사용자폼은 삭제하고 달력 컨트롤만 삽입하였다.
확실히 날짜 선택은 달력이 갑이지.
근데 달력컨트롤이 다른 엑셀 버전에선 에러가 난다는 제보가 ㅠ
게다가 다른 pc에서도 안 열릴 수도 있겠다.
이럴 수가 ㅠ
Option ExplicitPrivate Sub Calendar1_Click() Dim calYear As Integer Dim calMonth As Integer Dim calDay As Integer Dim calYoil As String Dim c As Range Dim i As Integer Dim strDay As Range Dim tgDay As String Dim rngDay As Range Set strDay = Sheets(2).Range("B2") '작업을 시작할 셀 정의 Set rngDay = Sheets(2).Range("A1") '일자별 식단 날짜 입력 '달력에서 날짜 인식 With Me.Calendar1 calYear = Format(.Value, "yyyy") calMonth = Format(.Value, "m") calDay = Format(.Value, "d") calYoil = Format(.Value, "aaa") End With '요일 셀에 달력에서 선택한 날짜 가져오기 tgDay = calYoil & "(" & calDay & ")" '월별식단표에서 tgDay와 일부 일치하는 값을 가져오기(일자 옆에 '생일' 같은 거 적혀있어서 Set c = Sheets(calMonth + 2).Range("C3:G31").Find(what:=tgDay, lookat:=xlPart) On Error Resume Next '일자별 식단표에 자료 입력 rngDay = c For i = 1 To 6 strDay.Offset(i - 1, 0) = c.Offset(i, 0) Next i On Error GoTo 0End Sub cs
'VB(A)' 카테고리의 다른 글
Select Case 를 활용한 다중 조건 처리 (0) | 2015.01.28 |
---|---|
자동채우기 (0) | 2015.01.18 |
내 맘대로 의뢰받은 척 하고 만듬 (0) | 2015.01.15 |
의뢰받아 만든 발주서 (0) | 2015.01.14 |
달력을 이용한 월별 식단표 (0) | 2015.01.07 |