Importing spreadsheet-based schedule into Apple Calendar or Reminders

I create a spreadsheet based on dates. I would like to import schedule data into ical or reminders to know what tasks to perform on each date. There is any way to do this. If not it would be a nice feature for apple to create.



[Re-Titled by Moderator]

Original Title: Importing Calendar schedule

Posted on Sep 18, 2025 10:09 AM

Reply
Question marked as Top-ranking reply

Posted on Sep 18, 2025 10:56 AM

There isn't going to be any pre-built single-click option for this feature since everyone's idea of what the spreadsheet looks like is going to be different - different amounts of data, different ideas of what the headers are, order of fields, etc.


That pretty much leaves you with two options:


1) export the data from Numbers in a .ics format.

(This may be possible with some creative function magic, combining data from cells to fill out the .ics data, or it might require some scripting effort)


2) Have a script that reads the data from your spreadsheet and creates corresponding events in your calendar.

This would presumably involve AppleScript, but might be doable via Automator. AppleScript is not an option if you're trying to do this on iOS.


Of the options, I think a script that directly creates the events is probably easiest, but there are many gotchas to consider.


For example, here's a bare-bones approach that reads the data in row 2 of the first table on the first sheet, and creates a calendar event assuming the data consists of three columns - an event description (text), a start time (date), and how long it lasts (duration).


use AppleScript version "2.4" -- Yosemite (10.10) or later
use scripting additions

tell application "Numbers"
	-- target the table
	tell table 1 of sheet 1 of document 1
		-- get the data from row 2
		set theEventData to cells of row 2
		tell theEventData
			-- parse out the cells into discrete variables
			set theTitle to value of item 1
			set theStart to value of item 2
			set theEnd to theStart + (value of item 3)
		end tell
	end tell
end tell


tell application "Calendar"
	tell calendar "Work"
		make new event with properties {summary:theTitle, start date:theStart, end date:theEnd}
	end tell
end tell


Paste this into a Script Editor document and click run to see it work.


There are many considerations, though - how to identify the table to use, which rows to use, how do you know the event hasn't already been added, does the table use start time and duration (as above), or start and end times? What about if the event crosses days? Scheduling conflicts, etc., etc., etc., but it might give you an idea.

1 reply
Question marked as Top-ranking reply

Sep 18, 2025 10:56 AM in response to bronxpod

There isn't going to be any pre-built single-click option for this feature since everyone's idea of what the spreadsheet looks like is going to be different - different amounts of data, different ideas of what the headers are, order of fields, etc.


That pretty much leaves you with two options:


1) export the data from Numbers in a .ics format.

(This may be possible with some creative function magic, combining data from cells to fill out the .ics data, or it might require some scripting effort)


2) Have a script that reads the data from your spreadsheet and creates corresponding events in your calendar.

This would presumably involve AppleScript, but might be doable via Automator. AppleScript is not an option if you're trying to do this on iOS.


Of the options, I think a script that directly creates the events is probably easiest, but there are many gotchas to consider.


For example, here's a bare-bones approach that reads the data in row 2 of the first table on the first sheet, and creates a calendar event assuming the data consists of three columns - an event description (text), a start time (date), and how long it lasts (duration).


use AppleScript version "2.4" -- Yosemite (10.10) or later
use scripting additions

tell application "Numbers"
	-- target the table
	tell table 1 of sheet 1 of document 1
		-- get the data from row 2
		set theEventData to cells of row 2
		tell theEventData
			-- parse out the cells into discrete variables
			set theTitle to value of item 1
			set theStart to value of item 2
			set theEnd to theStart + (value of item 3)
		end tell
	end tell
end tell


tell application "Calendar"
	tell calendar "Work"
		make new event with properties {summary:theTitle, start date:theStart, end date:theEnd}
	end tell
end tell


Paste this into a Script Editor document and click run to see it work.


There are many considerations, though - how to identify the table to use, which rows to use, how do you know the event hasn't already been added, does the table use start time and duration (as above), or start and end times? What about if the event crosses days? Scheduling conflicts, etc., etc., etc., but it might give you an idea.

This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

Importing spreadsheet-based schedule into Apple Calendar or Reminders

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.