MYMONDAY.ai
서비스스튜디오도구데이터·포맷73CSS 생성기19색상·이미지10인코딩·보안10웹·SEO11개발·데브옵스10파일·내보내기18계산기6가이드

CSV ICS 변환기

일정 스프레드시트를 붙여 넣고 추천된 열을 확인한 뒤, 실시간 검사가 짚은 문제를 고쳐 표준 규격의 .ics 파일을 내려받습니다.

  • 브라우저에서 처리
  • 가입 없음
  • 무료

도구 작업 공간

예제

일정 CSV

5줄155byte구분자: 쉼표

열 매핑

캘린더 항목마다 CSV 열을 고르세요. 처음 추천은 헤더 이름을 보고 정합니다.

추천
추천
추천
추천
추천

날짜와 시간대

일정 종류
일정의 시간대
Seoul · Asia/Seoul

시작·종료 시간은 이 시간대의 현지 시각으로 읽습니다. UTC를 고르면 UTC로 기록합니다.

반복

요일

고르지 않으면 각 시작 날짜의 요일로 반복합니다.

종료

결과

내려받을 수 있습니다
행3
포함3
오류0
제외0

보고서에는 행 번호와 고정 코드만 담기며 입력한 값은 들어가지 않습니다.

내려받는 파일에만 BOM을 붙여 엑셀에서 한글 등 non-ASCII 글자가 깨지지 않게 합니다. 복사한 텍스트에는 영향이 없습니다.

캘린더 파일 · events.ics
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//MYMONDAY.AI//CSV to ICS 1//EN
BEGIN:VTIMEZONE
TZID:Asia/Seoul
BEGIN:STANDARD
DTSTART:19700101T000000
TZOFFSETFROM:+0900
TZOFFSETTO:+0900
TZNAME:GMT+9
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
UID:cd619673@mymonday.ai
DTSTAMP:19700101T000000Z
DTSTART;TZID=Asia/Seoul:20270301T090000
DTEND;TZID=Asia/Seoul:20270301T103000
SUMMARY:Algorithms
LOCATION:Hall A
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO;WKST=MO;COUNT=4
END:VEVENT
BEGIN:VEVENT
UID:f04ada75@mymonday.ai
DTSTAMP:19700101T000000Z
DTSTART;TZID=Asia/Seoul:20270302T130000
DTEND;TZID=Asia/Seoul:20270302T143000
SUMMARY:Databases
LOCATION:Lab 3
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=TU;WKST=MO;COUNT=4
END:VEVENT
BEGIN:VEVENT
UID:5bf800e2@mymonday.ai
DTSTAMP:19700101T000000Z
DTSTART;TZID=Asia/Seoul:20270304T160000
DTEND;TZID=Asia/Seoul:20270304T170000
SUMMARY:Seminar
LOCATION:Room 4\, floor 2
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=TH;WKST=MO;COUNT=4
END:VEVENT
END:VCALENDAR

파일 크기: 997byte

미리보기

일정이 캘린더에 놓이는 모습입니다. 반복 일정은 앞으로 1년 안의 최대 10회를 보여 줍니다.

시간은 Asia/Seoul 기준으로 해석됩니다

  1. 2027년 3월 1일 (월)

    • 09:00–10:30Algorithms반복Hall A
  2. 2027년 3월 2일 (화)

    • 13:00–14:30Databases반복Lab 3
  3. 2027년 3월 4일 (목)

    • 16:00–17:00Seminar반복Room 4, floor 2
  4. 2027년 3월 8일 (월)

    • 09:00–10:30Algorithms반복Hall A
  5. 2027년 3월 9일 (화)

    • 13:00–14:30Databases반복Lab 3
  6. 2027년 3월 11일 (목)

    • 16:00–17:00Seminar반복Room 4, floor 2
  7. 2027년 3월 15일 (월)

    • 09:00–10:30Algorithms반복Hall A
  8. 2027년 3월 16일 (화)

    • 13:00–14:30Databases반복Lab 3
  9. 2027년 3월 18일 (목)

    • 16:00–17:00Seminar반복Room 4, floor 2
  10. 2027년 3월 22일 (월)

    • 09:00–10:30Algorithms반복Hall A
  11. 2027년 3월 23일 (화)

    • 13:00–14:30Databases반복Lab 3
  12. 2027년 3월 25일 (목)

    • 16:00–17:00Seminar반복Room 4, floor 2

행

행일정시작상태제외됨
2Algorithms2027-03-01정상
3Databases2027-03-02정상
4Seminar2027-03-04정상

이 CSV ICS 변환기는 수업 시간표, 근무표, 행사 일정, 생일 목록 같은 일정 스프레드시트를 구글 캘린더 등 캘린더 앱이 가져올 수 있는 iCalendar 파일로 바꿉니다. 헤더 이름과 그 아래 값을 보고 열을 추천하고, 날짜만 보고 판단할 수 있으면 날짜 형식도 알아낸 뒤, 시간대가 있는 일정에는 VTIMEZONE을 만들어 넣고 반복은 실제 RRULE로 적어 RFC 5545를 따르는 VEVENT를 씁니다.

애매한 것은 몰래 추측하지 않습니다. 월/일인지 일/월인지 알 수 없는 날짜는 순서를 직접 고를 때까지 기다리고, 시간은 09:30 같은 24시간제와 9:30 AM 같은 12시간제를 모두 받으며, 입력하는 대로 모든 행을 검사해 DATE_FORMAT, TIME_GAP 같은 고정 코드로 알려 줍니다. 포함된 행에 오류가 남아 있으면 .ics 내려받기가 꺼져 있습니다. UID는 행 내용에서 만들어지므로 같은 CSV를 다시 변환하면 UID도 같아서, 다시 가져와도 일정이 두 배가 되지 않고 갱신될 수 있습니다.

입력한 내용은 브라우저 안에서 처리되며 서버로 전송되지 않습니다. 시간대 규칙까지 브라우저에 내장된 데이터베이스에서 가져옵니다. 한도는 입력 5 MiB, 2,000행, 64열, 셀당 32,768자입니다.

사용 방법

  1. CSV 붙여 넣기 또는 파일 열기

    헤더 행이 있는 데이터를 일정 CSV에 붙여 넣거나, .csv 파일을 끌어다 놓거나, 파일 열기를 누릅니다. 구분자(쉼표, 세미콜론, 탭, 파이프)는 자동으로 찾아 편집기 아래에 표시하고 빈 줄은 건너뜁니다. 수업 시간표, 생일, 컨퍼런스, 근무표 칩으로 예제를 불러올 수 있습니다.

  2. 열 매핑 확인

    열 매핑에서 항목마다 헤더를 고릅니다. 제목과 시작 날짜는 필수이고 시작 시간, 마지막 날(포함), 종료 시간, 종일 (true / false), 장소, 설명, UID는 선택입니다. 헤더 이름과 값으로 고른 항목에는 추천 표시가 붙고, 한 열은 한 번만 쓸 수 있습니다.

  3. 날짜 형식·일정 종류·시간대 정하기

    날짜 형식을 확인하고, 일정 종류를 종일과 시간 지정 중에서 고릅니다. 종일 열을 매핑했다면 행마다 그 값으로 정해지고, 시작 시간 열을 찾으면 시간 지정이 미리 선택됩니다. 내 파일은 도시나 시간대를 검색하거나 UTC를 누르기 전까지 브라우저의 시간대로 읽고, 예제는 저마다 정해 둔 시간대를 씁니다.

  4. 반복 규칙 하나 고르기

    반복에서 반복 안 함으로 두거나 매일, 매주, 매월, 매년 중 하나와 간격을 고르고, 매주라면 요일을, 종료는 계속, 횟수, 날짜(마지막 시작 날짜) 중에서 고릅니다. 규칙은 모든 행에 똑같이 적용됩니다.

  5. 문제 행 고치기 또는 제외하기

    결과 패널에 행, 포함, 오류, 제외 개수와 처음 40개 문제가 나오고, 줄 번호를 누르면 편집기가 그 줄로 이동합니다. CSV를 고치거나, 행 표에서 체크 상자로 그 행을 제외하거나, 오류 행 제외를 누르세요. 모든 행 되살리기로 되돌릴 수 있습니다.

  6. 미리보기 후 내려받아 가져오기

    미리보기의 일정 목록과 월간 보기로 확인합니다. 시간 지정 일정이 있으면 어느 시간대 기준으로 해석했는지와 변경 버튼이 함께 나옵니다. 그다음 .ics 내려받기를 누르고, 문제 목록이 필요하면 보고서 내려받기 (CSV)를 누릅니다. 데스크톱 구글 캘린더의 설정, 가져오기 및 내보내기, 가져오기에서 먼저 테스트용 캘린더에 넣어 보세요.

작동 원리

CSV 읽기와 열 추천

입력은 RFC 4180 CSV로 읽으므로 따옴표로 감싼 셀에 구분자, 두 번 쓴 따옴표, 줄바꿈이 들어갈 수 있고, UTF-8 BOM과 엑셀의 sep=; 첫 줄도 받습니다. 닫히지 않은 따옴표는 따옴표가 시작된 줄과 함께 CSV_SYNTAX로 멈추고, 비어 있거나 겹치는 헤더 이름은 HEADER_INVALID, 헤더와 셀 수가 다른 레코드는 행 번호와 함께 FIELD_COUNT가 됩니다.

추천은 헤더 이름이 먼저 정합니다. 헤더를 소문자로 바꾸고 악센트, 밑줄, 하이픈을 지운 뒤 영어, 한국어, 일본어, 중국어, 스페인어, 독일어, 프랑스어 이름 목록과 비교합니다. 그다음 값이 이를 바로잡습니다. 시작이나 종료라는 이름이지만 시간이 든 열은 시작 시간과 종료 시간이 되고, 이름으로 정해지지 않은 첫 날짜 열은 시작 날짜, 남은 시간 열 중 앞의 두 개는 시작 시간과 종료 시간이 됩니다. 2027-03-01 09:00처럼 날짜와 시간이 한 셀에 든 열은 한 셀로 두 항목을 채울 수 없어 매핑하지 않습니다.

시간은 24시간제 09:30, 9:30, 09:30:15와 구글 캘린더·아웃룩이 쓰는 12시간제 9:30 AM, 9:00:00 pm을 읽고, 24:00이나 13:00 PM은 TIME_FORMAT입니다. 날짜 형식은 모두 ISO 형식이면 YYYY-MM-DD로 정하고, 빗금 날짜는 앞자리 0이 있든 없든 12보다 큰 값이 있어 순서가 확실할 때만 DD/MM/YYYY나 MM/DD/YYYY로 정합니다.

캘린더 항목알아보는 헤더 이름 (예)
제목제목, 일정, title, subject, 件名, 标题, asunto, titel, titre
시작 날짜날짜, 시작일, 일자, date, start, 開始日, fecha, datum
시작 시간시작 시간, 시간, start time, from, 開始時間, hora, uhrzeit
마지막 날(포함)종료일, 종료 날짜, end date, end, until, enddatum
종료 시간종료 시간, end time, to, 終了時間, endzeit
종일 (true / false)종일, all day, all day event, 終日, ganztägig
장소장소, 위치, location, room, 場所, lugar, ort, lieu
설명설명, 메모, 내용, description, notes, beschreibung
UIDuid, id, event id, guid

일정이 쓰이는 방식 (RFC 5545)

포함된 행마다 UID, DTSTAMP(내려받는 순간), DTSTART, DTEND, SUMMARY를 가진 VEVENT가 하나씩 만들어지고, 값이 있으면 LOCATION, DESCRIPTION, RRULE이 붙습니다. 전체는 PRODID:-//MYMONDAY.AI//CSV to ICS 1//EN을 가진 VCALENDAR에 담깁니다. 텍스트의 역슬래시, 세미콜론, 쉼표, 줄바꿈은 이스케이프하고, 줄은 75옥텟에서 접으며 CRLF로 끝납니다.

UID 열을 매핑하면 그 값을 그대로 씁니다. 없으면 행의 셀 내용으로 만든 16진수 여덟 자리 해시 뒤에 @mymonday.ai를 붙입니다. 바뀌지 않은 행은 몇 번을 변환해도 같은 UID를 받고, 완전히 같은 행은 -2, -3처럼 번호로 구분하며, 매핑하지 않은 열이라도 셀 하나가 바뀌면 그 행의 UID가 바뀝니다.

날짜, 시간, 시간대

종일 일정은 DTSTART;VALUE=DATE:20270510, UTC 일정은 DTSTART:20270301T090000Z, 시간대가 있는 일정은 DTSTART;TZID=Asia/Seoul:20270302T190000로 쓰고 파일에 같은 TZID의 VTIMEZONE을 넣습니다. 이 VTIMEZONE은 브라우저의 시간대 데이터베이스로 탭 안에서 만들며, 첫 일정 전해부터 마지막 회차 다음 해까지의 오프셋 변경을 하나씩 RDATE로 적습니다. 마지막 회차는 규칙의 UNTIL 날짜나 COUNT번째 시작으로 계산하고, 끝이 없는 반복은 30년 뒤까지 담되 2100년을 넘지 않습니다. 서머타임이 없는 Asia/Seoul은 STANDARD 블록 하나뿐입니다.

iCalendar에서 종일 일정의 종료는 포함되지 않는 날이므로 마지막 날(포함)이 5월 12일이면 DTEND;VALUE=DATE:20270513으로 저장되고, 비워 두면 하루짜리 일정입니다. 시간 지정 행은 같은 열을 종료 날짜로 쓰므로 밤을 넘기는 근무는 그 열에 다음 날을 넣어야 하며, 아니면 END_NOT_AFTER_START가 납니다. 뉴욕의 2027-03-14 02:30처럼 서머타임 시작으로 건너뛰는 시각은 TIME_GAP이 되고, 시계가 되돌아가며 두 번 오는 시각은 첫 번째 시점을 쓰면서 TIME_AMBIGUOUS 경고를 내지만 내려받기는 막지 않습니다.

일정 종류DTSTART 예시비고
종일DTSTART;VALUE=DATE:20270510종료는 포함하는 마지막 날의 다음 날로 기록
시간 지정, UTCDTSTART:20270301T090000ZVTIMEZONE 불필요
시간 지정, 시간대DTSTART;TZID=Asia/Seoul:20270302T190000브라우저 시간대 데이터로 VTIMEZONE 생성

모든 행에 하나의 반복 규칙

반복 설정은 FREQ와 INTERVAL, 매주 규칙이면 BYDAY와 WKST=MO, 끝이 있으면 COUNT나 UNTIL을 가진 RRULE이 됩니다. 규칙은 포함된 모든 행에 똑같이 적용되고 행마다 바꾸는 기능은 없으니, 반복 방식이 다른 행은 CSV를 나눠 따로 변환하세요. 매주 반복에서 요일을 고르지 않으면 각 행이 자기 시작 날짜의 요일로 반복하고, 요일을 골랐는데 시작 날짜가 그 요일이 아닌 행은 START_PATTERN_MISMATCH가 됩니다.

시간 지정 규칙은 일정 시간대에서 고른 날의 마지막 1초를 UTC로 적으므로, 서울에서 마지막 시작 날짜를 2027-03-11로 정하면 UNTIL=20270311T145959Z가 됩니다. 종일 규칙은 날짜만 씁니다. 30일까지인 달의 31일이나 평년의 2월 29일처럼 존재하지 않는 회차는 COUNT를 쓰지 않고 건너뜁니다. 미리보기는 일정마다 1년 안의 최대 10회를 보여 주고, 파일에는 규칙 전체가 들어갑니다.

RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=TU,TH;WKST=MO;UNTIL=20270311T145959Z

실제 예시

시작·종료 열에 시간이 든 한국어 시간표
입력
제목,날짜,시작,종료,장소
자료구조 수업,2027-03-01,9:00,10:30,공학관 301
출력
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//MYMONDAY.AI//CSV to ICS 1//EN
BEGIN:VEVENT
UID:91b13532@mymonday.ai
DTSTAMP:20261001T000000Z
DTSTART:20270301T090000Z
DTEND:20270301T103000Z
SUMMARY:자료구조 수업
LOCATION:공학관 301
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO;WKST=MO;COUNT=3
END:VEVENT
END:VCALENDAR

시작과 종료라는 헤더만으로는 날짜인지 시간인지 알 수 없지만 값이 시간이라 시작 시간과 종료 시간으로 추천되고 시간 지정이 미리 선택됩니다. 앞자리 0이 없는 9:00도 그대로 읽습니다. UTC, 매주 월요일, 횟수 3회이며 이 행은 몇 번을 변환해도 UID가 같습니다. DTSTAMP는 내려받은 시각(여기서는 2026-10-01 00:00 UTC)입니다.

Asia/Seoul 주 2회 스터디, 날짜로 종료
입력
title,date,start_time,end_time,location
Study group,2027-03-02,19:00,21:00,"Room 4, floor 2"
출력
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//MYMONDAY.AI//CSV to ICS 1//EN
BEGIN:VTIMEZONE
TZID:Asia/Seoul
BEGIN:STANDARD
DTSTART:19700101T000000
TZOFFSETFROM:+0900
TZOFFSETTO:+0900
TZNAME:GMT+9
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
UID:ebd00ba7@mymonday.ai
DTSTAMP:20261001T000000Z
DTSTART;TZID=Asia/Seoul:20270302T190000
DTEND;TZID=Asia/Seoul:20270302T210000
SUMMARY:Study group
LOCATION:Room 4\, floor 2
RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=TU,TH;WKST=MO;UNTIL=20270311T145959Z
END:VEVENT
END:VCALENDAR

매주 화·목요일, 마지막 시작 날짜 2027-03-11이라 미리보기에는 3월 2일, 4일, 9일, 11일이 나옵니다. TZNAME은 브라우저가 알려 주는 짧은 이름이고, 장소의 쉼표는 이스케이프됩니다.

12시간제 시각을 쓰는 구글 캘린더식 CSV
입력
Subject,Start Date,Start Time,End Date,End Time,All Day Event,Location
Dentist,3/15/2027,9:30 AM,3/15/2027,10:15 AM,False,Main St Clinic
Team offsite,3/18/2027,,3/19/2027,,True,Lakeside Lodge
출력
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//MYMONDAY.AI//CSV to ICS 1//EN
BEGIN:VTIMEZONE
TZID:America/New_York
BEGIN:DAYLIGHT
DTSTART:20260308T020000
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:EDT
RDATE:20260308T020000
RDATE:20270314T020000
RDATE:20280312T020000
END:DAYLIGHT
BEGIN:STANDARD
DTSTART:20261101T020000
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:EST
RDATE:20261101T020000
RDATE:20271107T020000
RDATE:20281105T020000
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
UID:8898d4ee@mymonday.ai
DTSTAMP:20261001T000000Z
DTSTART;TZID=America/New_York:20270315T093000
DTEND;TZID=America/New_York:20270315T101500
SUMMARY:Dentist
LOCATION:Main St Clinic
END:VEVENT
BEGIN:VEVENT
UID:a52f8546@mymonday.ai
DTSTAMP:20261001T000000Z
DTSTART;VALUE=DATE:20270318
DTEND;VALUE=DATE:20270320
SUMMARY:Team offsite
LOCATION:Lakeside Lodge
END:VEVENT
END:VCALENDAR

모든 열이 헤더로 추천되고, 3/15/2027 덕분에 MM/DD/YYYY로 정해지며, All Day Event 열이 행마다 종일 여부를 정합니다. 시간대는 America/New_York이고 VTIMEZONE은 2026년부터 2028년까지를 담으며, 팀 오프사이트의 종료는 포함되지 않는 날짜인 3월 20일로 기록됩니다.

세미콜론 구분, 일/월 순서 날짜
입력
Titel;Datum;Enddatum;Ort
Messe;10/05/2027;12/05/2027;Halle 3
Workshop;13/05/2027;;Online
출력
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//MYMONDAY.AI//CSV to ICS 1//EN
BEGIN:VEVENT
UID:bc1d25f4@mymonday.ai
DTSTAMP:20261001T000000Z
DTSTART;VALUE=DATE:20270510
DTEND;VALUE=DATE:20270513
SUMMARY:Messe
LOCATION:Halle 3
END:VEVENT
BEGIN:VEVENT
UID:bdaf952c@mymonday.ai
DTSTAMP:20261001T000000Z
DTSTART;VALUE=DATE:20270513
DTEND;VALUE=DATE:20270514
SUMMARY:Workshop
LOCATION:Online
END:VEVENT
END:VCALENDAR

구분자는 세미콜론으로 인식되고, 독일어 헤더는 제목, 시작 날짜, 마지막 날(포함), 장소로 추천되며, 13/05/2027 덕분에 DD/MM/YYYY로 정해집니다. 시간 열이 없어 종일 일정이 되고, 종료가 빈 워크숍은 하루짜리입니다.

서머타임 공백 시각의 보고서
입력
title,date,start_time,end_time
Gap,2027-03-14,02:30,03:30
출력
row_number,field_code,severity,error_code
2,TIMEZONE,ERROR,TIME_GAP

시간대는 America/New_York이며 이날 시계가 02:00에서 03:00으로 건너뜁니다. 위 내용은 보고서 내려받기 (CSV)로 받은 파일이고, 행을 고치거나 제외하기 전까지 .ics 내려받기는 꺼져 있습니다.

자주 하는 실수

  • 행을 고치면 자동 UID가 바뀜

    UID 열이 없으면 제목을 고치거나 시간을 옮기는 등 셀 하나만 바뀌어도 UID가 새로 생겨, 다시 가져올 때 이전 일정은 남고 새 일정이 추가됩니다. 고쳐 가며 여러 번 가져올 일정표라면 값이 변하지 않는 UID 열을 두세요.

  • 3/4/2027 같은 모호한 날짜

    3/4/2027은 MM/DD/YYYY로는 3월 4일, DD/MM/YYYY로는 4월 3일입니다. 12보다 큰 값이 하나도 없으면 날짜 형식이 형식을 고르세요 상태로 남고 직접 고를 때까지 내려받기가 막힙니다. 순서를 확정하는 날짜가 하나라도 있으면 파일 전체에 적용되므로 스프레드시트가 한 가지 순서만 써야 합니다.

  • 시간을 어느 시간대로 읽는지 확인

    시간대는 보는 사람이 아니라 일정이 열리는 장소의 것입니다. 내 파일은 브라우저의 시간대로, 예제는 저마다 정한 시간대로 시작하며 미리보기에 지금 쓰는 시간대가 표시됩니다. 09:00 행을 Asia/Seoul로 읽으면 서울에서 09:00에 보이지만 UTC로 읽으면 서울에서는 18:00에 보입니다.

  • 마지막 날은 포함하는 날짜

    마지막 날(포함)은 일정이 포함하는 마지막 날이라 다음 날을 적으면 종일 일정이 하루 길어집니다. 시간 지정 행에서는 종료 날짜이므로 자정을 넘기는 일정이 아니면 비워 두세요.

  • UTF-8이 아닌 파일은 글자가 깨짐

    파일은 UTF-8로 읽으므로 예전 엑셀이 지역 코드 페이지(한국어 환경에서는 CP949)로 저장한 CSV는 편집기와 .ics에서 한글이 깨집니다. 먼저 CSV UTF-8로 다시 저장하세요.

  • 지원하지 않는 것

    2027-03-01 09:00처럼 날짜와 시간이 한 셀에 든 열은 매핑하지 않으니 날짜 열과 시간 열로 나누세요. 참석자, 알림, 카테고리, 예외 날짜(EXDATE), 행마다 다른 규칙, 매월 둘째 화요일 같은 패턴은 쓰지 않으며, 날짜는 1970년부터 2100년 사이여야 합니다.

자주 묻는 질문

CSV를 구글 캘린더로 가져오려면?

구글 캘린더의 CSV 가져오기는 정해진 열 이름이 필요하고 반복을 표현할 수 없으니, 여기서 RRULE과 시간대를 담는 .ics로 바꾸세요. 그다음 데스크톱에서 설정, 가져오기 및 내보내기, 가져오기를 열어 파일과 캘린더를 고르면 됩니다.

같은 파일을 두 번 가져오면 중복이 생기나요?

행이 바뀌지 않았다면 생기지 않습니다. 자동 UID는 변환할 때마다 같아서 UID로 일정을 맞추는 캘린더 앱은 같은 일정으로 다룹니다. 셀이 하나라도 바뀐 행은 새 UID를 받으므로 계속 관리할 일정표라면 UID 열을 두세요.

반복 일정을 만들 수 있나요?

네. 매일, 매주, 매월, 매년 중 하나와 간격을 고르고 종료를 횟수, 마지막 시작 날짜, 계속 중에서 정합니다. 행마다 RRULE을 가진 일정 하나가 만들어지고 규칙은 모든 행에 똑같이 쓰입니다.

아웃룩·구글 캘린더 CSV나 세미콜론 파일도 읽나요?

읽습니다. Subject, Start Date, Start Time, End Date, End Time, All Day Event, Description, Location 같은 헤더를 알아보고, 2:00:00 PM 같은 12시간제 시각과 3/15/2027 같은 날짜를 받으며, 쉼표, 세미콜론, 탭, 파이프 구분자를 자동으로 찾습니다. 파일은 먼저 UTF-8로 저장하세요.

어떤 시간대를 쓸 수 있나요?

UTC와 브라우저가 아는 모든 IANA 시간대입니다. 도시 이름이나 America/New_York 같은 이름으로 검색하면 되고, 고르기 전까지 내 파일은 브라우저의 시간대로 읽습니다. 파일의 VTIMEZONE도 같은 브라우저 데이터로 만들기 때문에 미리보기와 일치합니다.

보고서 CSV에는 무엇이 들어 있나요?

문제마다 row_number, field_code, severity, error_code가 한 줄씩 들어갑니다. 예를 들면 2,TIMEZONE,ERROR,TIME_GAP이고 설정 문제는 행 번호가 0입니다. 셀 값은 담지 않아 공유해도 안전합니다.

스프레드시트가 업로드되나요?

아니요. 입력한 내용은 브라우저 안에서 처리되며 서버로 전송되지 않습니다. 시간대 정의도 브라우저에 내장된 데이터로 만들기 때문에 변환하는 동안 네트워크 요청이 없습니다.

마지막 업데이트: