📑실습파일 다운로드 www.oppadu.com/엑셀-달력-자동화/ ✏휴일+공휴일을 모두 표시하는 함수 공식 =IFERROR("["&VLOOKUP(SEQUENCE(6,7,F3),휴일목록,2,0)&"] ","")&TEXT(SEQUENCE(6,7,F3),"m/d")&CHAR(10)&IFERROR(VLOOKUP(SEQUENCE(6,7,F3),일정목록,2,0),"") --- ⭐CALENDAR 함수 공식 (M365 버전) =LAMBDA(년도,월,[개월수],[공휴일표],[일정표],[날짜서식],[요일표시],[전후월표시],[월요일시작],LET(oYear,년도,oMonth,월,sMonth,IF(개월수=0,1,개월수),fromMon,IF(월요일시작=0,0,1),dataA,IF(공휴일표=0,{"",""},공휴일표),dataB,IF(일정표=0,{"","",""},일정표),displayHeader,IF(요일표시=0,0,1),dFormat,IF(날짜서식=0,"m/d",날짜서식),displayPrev,IF(전후월표시=0,0,1),oDate,DATE(oYear,oMonth,1),sDate,oDate-WEEKDAY(oDate,1+fromMon)+1,DateList,SEQUENCE(EOMONTH(oDate,sMonth-1)-sDate+8-WEEKDAY(EOMONTH(oDate,sMonth-1),1+fromMon),,sDate),tDateList,IF(전후월표시=1,DateList,IF((DateListEOMONTH(oDate,sMonth-1)),"",DateList)),tDate,WRAPROWS(tDateList,7),Ddata,tDate,Udata,TOCOL(Ddata),dataAC1,INDEX(dataA,,1),dataAC2,INDEX(dataA,,2),vA,UNIQUE(TRANSPOSE(IF(dataAC1=TRANSPOSE(Udata),dataAC2,"")),1),seqrvA,SEQUENCE(ROWS(vA)),sepA,CHAR(10),xA,MMULT((LEN(vA)+LEN(sepA))*(vA""),SIGN(SEQUENCE(COLUMNS(vA))))-LEN(sepA),yA,MMULT(--(TRANSPOSE(seqrvA)
늘 너무 감사합니다. 질문이 있는데요. 하루에 일정이 두개 이상 있을때 일정을 모두 표시하게 할 수는 없을까요? "&CHAR(10)&IFERROR(VLOOKUP(SEQUENCE(6,7,F3),일정표,2,0),"")"를 한 6개 넣어 줬더니 첫번째 일정만 여섯번 반복 되네요... ㅠㅠ
안녕하세요. 오빠두엑셀입니다. FILTER 함수의 조건범위로 (범위=범위)를 입력하면 3차원 배열이 반환되어 원하시는 결과를 얻기가 매우 어렵습니다. (CALENDAR 함수 공식에 사용된 MMULT 함수를 활용하면 문제를 해결할 수 있지만, 수식이 매우 길고 어려워집니다.) 따라서, 여러 일정이 있을 경우에는 보조 테이블을 추가해서 해결하시는 것을 추천드립니다. 1. UNIQUE 함수로 날짜 고유 목록을 생성합니다. 2. IF&TEXTJOIN 함수로 날짜별 일정을 하나로 취합합니다. =TEXTJOIN(",",,IF(날짜범위=고유날짜,일정범위,"")) 3. 1&2번에서 만들어진 범위에 VLOOKUP 함수를 적용합니다. 제시해드린 답변이 문제를 해결하시는데 도움이 되었길 바랍니다.🙇♂ 감사합니다!
@@Oppadu 혹시 달력만들기 ver 에 있는 vlookup -> filter 로 대체하는 것에 대해 참고할만한 영상 있으실까요??? ruclips.net/video/wvYzERdh7jQ/видео.html 해당 영상보고 응용이 가능할까요? 현재 작업을 구글 스프레드시트로 하고 있습니다.
안녕하세요! 오빠두엑셀 전진권입니다. 365 이전 버전에서는 CALENDAR 함수가 지원되지 않아, VLOOKUP 함수를 활용하여 일정을 표시하는 방법을 사용해야 합니다. 일정 DB 표에 1일에 1개 이상의 일정 표시를 위해서는 다음과 같은 방법을 활용할 수 있습니다. 1. **일정 DB 표에 날짜와 일정 내용을 함께 표시**: - 날짜 열에 1일을 여러 번 입력하여 각 일정에 대한 정보를 추가합니다. - 예를 들어 1월 1일에 2개의 일정이 있으면, 날짜 열에 1월 1일을 2번 입력하고, 각각의 일정 내용을 추가합니다. 2. **VLOOKUP 함수를 사용하여 일정 정보 가져오기**: - VLOOKUP 함수를 사용하여 날짜에 해당하는 모든 일정 정보를 가져올 수 있습니다. - VLOOKUP 함수의 `range_lookup` 인수를 `TRUE` 로 설정하면, 해당 날짜에 대한 모든 일정 정보를 가져올 수 있습니다. **예시:** * 일정 DB 표: - 날짜 | 일정 - ----- | ----- - 1월 1일 | 일정 1 - 1월 1일 | 일정 2 - 1월 2일 | 일정 3 * 달력 셀에 일정 정보 출력: - `=VLOOKUP(A1, 일정 DB 표, 2, TRUE)` 위와 같이 VLOOKUP 함수를 활용하면 365 이전 버전에서도 여러 개의 일정 정보를 표시할 수 있습니다. 추가적으로, 365 이전 버전에서도 여러 개의 일정 정보를 효율적으로 관리하기 위해서는 **"INDEX-MATCH"** 함수 조합을 활용하는 방법도 있습니다. 이 방법은 VLOOKUP 함수보다 다소 복잡하지만, 더 유연하게 데이터를 관리할 수 있다는 장점이 있습니다. 자세한 방법은 "엑셀 다중 일정 표시" 관련 검색을 통해 확인해 보시면 도움이 될 것입니다. 🙂 감사합니다!🙇♂️
안녕하세요. 오빠두엑셀입니다. 공식에서 괄호([]) 안에 작성된 값은, VLOOKUP 함수의 4번째 인수처럼 선택적으로 입력하는 값입니다. 따라서 개월수, 월요일 시작은 필요할 때만 입력해서 사용해주세요. :) 다만, 주의사항은 개월수는 1보다 큰 정수, 월요일시작은 0 또는 1의 숫자로만 입력해야하고, 문자로 입력할 경우 오류를 반환합니다. 감사합니다!
2021년 버전에서 완성 파일을 사용해 봤는데요. 동일한 날짜에 "일정 시트"에 입력하면 "달력만들기" 시트에는 하나밖에 표시가 되지 않습니다. 특정 날짜에 일정을 기입하면 모두 표시는 할 수 없는건가요.?데이터는 가장 앞에 있는 셀을 반환 하는 것으로 알고 있습니다. 결국 동일 날짜에 여러개 일정을 기재하면 1개 밖에 반환되지 않는 것으로 이해하면 되는지 문의 드립니다. M365의 캘린더 함수는 중복이 가능하던데...ㅜㅜ 아쉽네요
엑셀 문자 형태 날짜 데이터 수천개 를 날짜형식으로 쉽고 빠르게 바꾸는 방법이요 전송 받는 데이터가 엑셀 파일로 오는 데 문제는 수 천 개 날짜 자료가 그냥 문자 인 거예요 전체 열을 셀서식- 표시 형식을 날짜 시간 형식으로 바꾸어도 (예:필터 기능 사용시 적용 안 됌)기존 자료를 일일이 하나씩 수정(f2- 엔터)해야만 바뀌는데 일일이 데이터를 바꾸지 않고 한꺼 번에 바꿀 수는 없나요?
안녕하세요. 오빠두엑셀입니다. 관련하여 비슷한 질문을 홈페이지 커뮤니티에 남겨주셔서, 방금 답변을 드렸습니다. www.oppadu.com/question/?uid=68271&mod=document&pageid=1 간단히 설명을 드리면, FILTER 함수를 사용하면 가능하나 달력범위에 FILTER를 사용하면 3차원 배열이 반환되어 MMULT 함수로 추가 가공이 필요합니다. 이 부분은 강의로 다룰 경우 내용이 방대해져 영상에서는 다루지 못했으며, CALENDAR 함수에 사용이 되었으니, 한번 참고해보시길 바랍니다. :) 감사합니다!
📑실습파일 다운로드
www.oppadu.com/엑셀-달력-자동화/
✏휴일+공휴일을 모두 표시하는 함수 공식
=IFERROR("["&VLOOKUP(SEQUENCE(6,7,F3),휴일목록,2,0)&"] ","")&TEXT(SEQUENCE(6,7,F3),"m/d")&CHAR(10)&IFERROR(VLOOKUP(SEQUENCE(6,7,F3),일정목록,2,0),"")
---
⭐CALENDAR 함수 공식 (M365 버전)
=LAMBDA(년도,월,[개월수],[공휴일표],[일정표],[날짜서식],[요일표시],[전후월표시],[월요일시작],LET(oYear,년도,oMonth,월,sMonth,IF(개월수=0,1,개월수),fromMon,IF(월요일시작=0,0,1),dataA,IF(공휴일표=0,{"",""},공휴일표),dataB,IF(일정표=0,{"","",""},일정표),displayHeader,IF(요일표시=0,0,1),dFormat,IF(날짜서식=0,"m/d",날짜서식),displayPrev,IF(전후월표시=0,0,1),oDate,DATE(oYear,oMonth,1),sDate,oDate-WEEKDAY(oDate,1+fromMon)+1,DateList,SEQUENCE(EOMONTH(oDate,sMonth-1)-sDate+8-WEEKDAY(EOMONTH(oDate,sMonth-1),1+fromMon),,sDate),tDateList,IF(전후월표시=1,DateList,IF((DateListEOMONTH(oDate,sMonth-1)),"",DateList)),tDate,WRAPROWS(tDateList,7),Ddata,tDate,Udata,TOCOL(Ddata),dataAC1,INDEX(dataA,,1),dataAC2,INDEX(dataA,,2),vA,UNIQUE(TRANSPOSE(IF(dataAC1=TRANSPOSE(Udata),dataAC2,"")),1),seqrvA,SEQUENCE(ROWS(vA)),sepA,CHAR(10),xA,MMULT((LEN(vA)+LEN(sepA))*(vA""),SIGN(SEQUENCE(COLUMNS(vA))))-LEN(sepA),yA,MMULT(--(TRANSPOSE(seqrvA)
lambda 함수의 활용성은 정말 무궁무진하네요~~!!
쌩유맨🎉
감사합니다.
와 이..이게 되네~!😮 하고 댓글을 봤다가... 스크롤이 끝없이 내려가는 함수를 보고 깨달았습니다.
그냥 복사해서 써야겠다는 걸.... 😂
회사에서는 365버전 들어오진 않을 거 같아요 ...... 속상합니다.... 365만 되면 제목에 365만 가능하다고 기재 해주시면 좋을거같습니당 ㅠㅠ😢
우리회사 아직도 2007 쓰는게 ㄹㅈㄷ
2010쓰는 우리회사는 양반이었구나 ㅠ
@@twingstar7ar 옛날 학생때부터 2003 2007 2010 2013 2016 2019 쓰다가 365 쓰고 다시 2007로 돌아가니... 와 이게 안된다고? 싶은 기능이 너무 많아서 미칠 지경입니다
365쓰는 회사도 많아요. 해당 회사에 요청하셔야지.. 여기서 이러심 안되요 ㅎㅎ
@@kai7734제목에 365만 가능하다고 적어달라는게 안 될 일인가요?ㅎㅎ
샘 짱! 이십니다
엑셀의 기능. 세계는 무한대인가봅니다.
알고리즘에 의해 뜬 영상에 관심있어서 구독. 시청했는데 보믄 볼 수록 T.T 어렵네요.
엑셀 난이도 초보는 따라가기 어려운 거군요^^;;
직업군인입니다.
한셀쓰는 직군은 그저 웁니다....
와 대박 정보추
선생님 진짜 감사합니다 ㅜㅜ
구글시트사용법도알려주심 안될까요? 날짜요일 자동 세팅법
감사합니다~
늘 너무 감사합니다.
질문이 있는데요. 하루에 일정이 두개 이상 있을때 일정을 모두 표시하게 할 수는 없을까요? "&CHAR(10)&IFERROR(VLOOKUP(SEQUENCE(6,7,F3),일정표,2,0),"")"를 한 6개 넣어 줬더니 첫번째 일정만 여섯번 반복 되네요... ㅠㅠ
vlookup은 맨 위에 하나의 값만 불러오기 때문에 filter로 바꿔서 적용하심 될 것 같네요 ㅋㅋ
@@sky_line6482답글 감사합니다! 근데 Filter를 사용하려면 조건으로 입력되는 값의 높이와 넓이는 '범위'와 동일해야 하는걸로 오빠두님이 말씀해 주셨는데 높이와 넓이는 한칸 밖에 없으니 어찌 적용해야 할지요...
안녕하세요. 오빠두엑셀입니다.
FILTER 함수의 조건범위로 (범위=범위)를 입력하면 3차원 배열이 반환되어 원하시는 결과를 얻기가 매우 어렵습니다.
(CALENDAR 함수 공식에 사용된 MMULT 함수를 활용하면 문제를 해결할 수 있지만, 수식이 매우 길고 어려워집니다.)
따라서, 여러 일정이 있을 경우에는 보조 테이블을 추가해서 해결하시는 것을 추천드립니다.
1. UNIQUE 함수로 날짜 고유 목록을 생성합니다.
2. IF&TEXTJOIN 함수로 날짜별 일정을 하나로 취합합니다.
=TEXTJOIN(",",,IF(날짜범위=고유날짜,일정범위,""))
3. 1&2번에서 만들어진 범위에 VLOOKUP 함수를 적용합니다.
제시해드린 답변이 문제를 해결하시는데 도움이 되었길 바랍니다.🙇♂ 감사합니다!
@@Oppadu친절한 설명 감사 드립니다! 메카니즘은 이해를 했습니다. 연습삼아 다시 연구해 보겠습니다. 우회적인 방법으로... 날자 하나에 각 일정을 Alt key로 줄바꿈하여 넣으니 그나마 간단하게 되긴 하네요.
@@Oppadu 혹시 달력만들기 ver 에 있는 vlookup -> filter 로 대체하는 것에 대해 참고할만한 영상 있으실까요???
ruclips.net/video/wvYzERdh7jQ/видео.html
해당 영상보고 응용이 가능할까요? 현재 작업을 구글 스프레드시트로 하고 있습니다.
엑셀의 신, 제일 왼쪽 달력시트와 달력만들기 시트 차이는 무엇인가요? 달력에서는 작동이 안되요. 왜 안되지요?
선생님! 같은 날짜에 여러 일정이 있을 경우엔 어떤 함수를 써야되요?
회사업무에 진짜필요했는데 감사합니다
너무좋습니다. 질문있어요! 365이전버전은 일정db표에 1일에 1개이상의 일정표시는 할수없나요?
안녕하세요! 오빠두엑셀 전진권입니다.
365 이전 버전에서는 CALENDAR 함수가 지원되지 않아, VLOOKUP 함수를 활용하여 일정을 표시하는 방법을 사용해야 합니다.
일정 DB 표에 1일에 1개 이상의 일정 표시를 위해서는 다음과 같은 방법을 활용할 수 있습니다.
1. **일정 DB 표에 날짜와 일정 내용을 함께 표시**:
- 날짜 열에 1일을 여러 번 입력하여 각 일정에 대한 정보를 추가합니다.
- 예를 들어 1월 1일에 2개의 일정이 있으면, 날짜 열에 1월 1일을 2번 입력하고, 각각의 일정 내용을 추가합니다.
2. **VLOOKUP 함수를 사용하여 일정 정보 가져오기**:
- VLOOKUP 함수를 사용하여 날짜에 해당하는 모든 일정 정보를 가져올 수 있습니다.
- VLOOKUP 함수의 `range_lookup` 인수를 `TRUE` 로 설정하면, 해당 날짜에 대한 모든 일정 정보를 가져올 수 있습니다.
**예시:**
* 일정 DB 표:
- 날짜 | 일정
- ----- | -----
- 1월 1일 | 일정 1
- 1월 1일 | 일정 2
- 1월 2일 | 일정 3
* 달력 셀에 일정 정보 출력:
- `=VLOOKUP(A1, 일정 DB 표, 2, TRUE)`
위와 같이 VLOOKUP 함수를 활용하면 365 이전 버전에서도 여러 개의 일정 정보를 표시할 수 있습니다.
추가적으로, 365 이전 버전에서도 여러 개의 일정 정보를 효율적으로 관리하기 위해서는 **"INDEX-MATCH"** 함수 조합을 활용하는 방법도 있습니다. 이 방법은 VLOOKUP 함수보다 다소 복잡하지만, 더 유연하게 데이터를 관리할 수 있다는 장점이 있습니다.
자세한 방법은 "엑셀 다중 일정 표시" 관련 검색을 통해 확인해 보시면 도움이 될 것입니다. 🙂
감사합니다!🙇♂️
1:33 에서 [개월수],…[월요일시작] 부분 때문에 자꾸 에러가 나네요 ㅠㅠ 대괄호 부분을 지우면 이름관리자에서 새 이름이 생성되구요. 왜 그런걸까요?
안녕하세요. 오빠두엑셀입니다.
공식에서 괄호([]) 안에 작성된 값은, VLOOKUP 함수의 4번째 인수처럼 선택적으로 입력하는 값입니다.
따라서 개월수, 월요일 시작은 필요할 때만 입력해서 사용해주세요. :)
다만, 주의사항은 개월수는 1보다 큰 정수, 월요일시작은 0 또는 1의 숫자로만 입력해야하고, 문자로 입력할 경우 오류를 반환합니다.
감사합니다!
혹시 스프레드시트에서는 같은 기능을 사용할 수 있는 방법이 없을까요?
강의 시작부분에서는 2021 이후 버전 사용자가 만들 수 있는 것이라고 하셨는데, 내용은 결국 365만 된다는 거죠?
안녕하세요. 오빠두엑셀입니다.
-. CALENDAR 함수는 M365 버전에서만 사용가능합니다.
-. 강의에서 제작한 함수는 엑셀 2021 이후 버전에서 사용할 수 있습니다.
감사합니다.
@@Oppadu 아~ 달력만들기 시트에 있었네요. 같은 날 여러 개 일정 불러오는 부분만 작업하면 되겠네요.
2021년 버전에서 완성 파일을 사용해 봤는데요. 동일한 날짜에 "일정 시트"에 입력하면 "달력만들기" 시트에는 하나밖에 표시가 되지 않습니다. 특정 날짜에 일정을 기입하면 모두 표시는 할 수 없는건가요.?데이터는 가장 앞에 있는 셀을 반환 하는 것으로 알고 있습니다.
결국 동일 날짜에 여러개 일정을 기재하면 1개 밖에 반환되지 않는 것으로 이해하면 되는지 문의 드립니다.
M365의 캘린더 함수는 중복이 가능하던데...ㅜㅜ 아쉽네요
2016년버전에서는 완성파일 사용못하나요?
엑셀 문자 형태 날짜 데이터 수천개 를 날짜형식으로 쉽고 빠르게 바꾸는 방법이요
전송 받는 데이터가 엑셀 파일로 오는 데 문제는 수 천 개 날짜 자료가 그냥 문자 인 거예요
전체 열을 셀서식- 표시 형식을 날짜 시간 형식으로 바꾸어도 (예:필터 기능 사용시 적용 안 됌)기존 자료를 일일이 하나씩 수정(f2- 엔터)해야만 바뀌는데 일일이 데이터를 바꾸지 않고 한꺼 번에 바꿀 수는 없나요?
sequence 함수가 없는건 추가할수 있는 방법이 있을까요?
2021버전 사용중이고, 완성 파일을 처음 열면 잘 되나, 월이나 개월수 등 다른 파라메터를 변경하면 오류가 발생합니다. 2021은 사용 안되나요?
VLOOKUP 사용시 일정 1개만 뜨더라구요. 혹시 다른 일정이 밑으로 나열되도록 하려면 어떻게 해야되나요?
안녕하세요. 오빠두엑셀입니다.
관련하여 비슷한 질문을 홈페이지 커뮤니티에 남겨주셔서, 방금 답변을 드렸습니다.
www.oppadu.com/question/?uid=68271&mod=document&pageid=1
간단히 설명을 드리면, FILTER 함수를 사용하면 가능하나 달력범위에 FILTER를 사용하면 3차원 배열이 반환되어 MMULT 함수로 추가 가공이 필요합니다. 이 부분은 강의로 다룰 경우 내용이 방대해져 영상에서는 다루지 못했으며, CALENDAR 함수에 사용이 되었으니, 한번 참고해보시길 바랍니다. :)
감사합니다!
@@Oppadu sequence함수 안에서는 안되는건가요?
365에서도 rambda 함수 추가가 안되고, 2021버전에서도 안되네요..왜 그럴까요?
담당자 선택 부분 이름 수정은 어떻게 합니까
안녕하세요.
[데이터] 탭 - [데이터 유효성 검사]에서 목록 범위를 수정하면 됩니다.
기능의 자세한 사용법은 아래 강의를 참고해보시겠어요?
ruclips.net/video/dIzIMZh1Rt0/видео.html
감사합니다.
감사합니다