GithubHelp home page GithubHelp logo

trip-planner's Introduction

trip-planner

| v.0.1.1 | Author: Tristan Chilvers | License: MIT License |


A SET OF GOOGLE CUSTOM FUNCTIONS FOR A DYNAMIC TRIP PLANNER SPREADSHEET

                      DOWNLOAD



For my vacations, I often times create a trip outline with Google Sheets. These are rough calendar outlines with every event manually inputted and adjusted to fit into the calendar - way too slow and tedious!

While there are many great vacation planners online, I wanted to focus on two qualities for my own trip planner:

Automated and Dynamic Calendar & Finance Functionality



SHEETS

DETAILED EXPLAINATION FOR EACH SHEET

    • TRIP DETAILS     • TRAVELERS     • EVENTS     • CALENDAR     • FINANCE


TRIP DETAILS

The Trip Details sheet handles global details relevant to the trip:

  • Trip Dates, Need Passport, Budget, etc.

You only need to input data into the white cells (the grey cells are calculated and displayed for your convenience)

Whenever you update the start date and end date cells, it will automatically call a script to update the calendar sheet. This is one example of a core feature that performs an automated and dynamic task - the calendar will automatically resize itself and update the dates to outline the duration of your trip.

NOTE: DO NOT EDIT EVENTS UNTIL AFTER THE CALENDAR HAS FINISHED UPDATING

trip-details-date-change-preview

calendar-date-change-preview


If you select Yes for Need Passport?, it will mark red next to each traveler in the traveler sheet who does not have a passport.


passport-check-preview


Depending on your selection for Miles or km for, it will update the column name under the Events Sheet to correspond with your choice of units.


calendarPreview calendarPreview calendarPreview


TRAVELERS

The Travelers sheet handles each traveler's information:

  • Name, Email, Phone, etc.

travelers-preview


The amount of money each traveler has paid in relationship to the trip's budget is displayed under the Finance Sheet.


finance-preview


EVENTS

The Events Sheet is the backbone of this software - the Calendar Sheet and Finance Sheet will adjust according to the data inputted here.

This planner is structured by events. An event is a row containing all data relevent to that event on your trip:

  • Event name, date, time, cost, split charge, etc.

events-preview


Each event is labeled as a type, which is then categorized and displayed on the Calendar Sheet and Finance Sheet:

  • Transportation, Lodging, Food, Activity, Shopping, and MISC

Once you have inputted your events, you can update the calendar by clicking the CLICK TO UPDATE CALENDAR button on the top-left corner.

NOTE: DO NOT EDIT EVENTS UNTIL AFTER THE CALENDAR HAS FINISHED UPDATING

update-calendar-events-preview

update-calendar-result-preview

CALENDAR

The Calendar Sheet outlines each day of your trip into a clean, dynamic layout of your events.

Each event is of a certain type (Transportation, Lodging, etc.) and is displayed here by the type's corresponding color (e.g. Red for Transportation).

It showcases the distance travelled each day (useful for Road Trips), along with the calculated cost of gas.


calendar-preview


You can also update the calendar by clicking the CLICK TO UPDATE CALENDAR button on the top-left corner.

NOTE: DO NOT EDIT EVENTS UNTIL AFTER THE CALENDAR HAS FINISHED UPDATING

update-calendar-preview

update-calendar-result-preview

FINANCE

The Finance Sheet outputs the financial information relevant to the trip:

  • Budget vs Final Cost, where was the money spent (transportation, food, etc.), cost of each traveler, etc.

finance-preview



CREATE YOUR OWN VACATION PLANNER

Make a copy of this planner template (check for updates!):

Or you can copy/edit this code directly in your project by going to Tools > Script editor and pasting this code into trip.gs.

trip-planner's People

Contributors

tmchilvers avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.