The GPA Calculator is a custom Google Sheets application designed to automatically calculate and track GPA across multiple schools and semesters. Built with Google App Script (JavaScript), it processes class records, looks up grade values from different institutions, calculates weighted GPAs, and maintains organized summarizes for both detailed and simplified views.
Multi-School GPA support:
Handles different grading scales for two separate schools simultaneously.
Automatic Calculations:
Total GPA and per-school GPA.
Weighted grade Points
Credits (Earned, In Progress, Future, and Planned)
Semester Breakdown:
Automaticlaly groups and calculates GPA by semester.
Data Syncronization:
Transfers and updates data from the main "Class Records" sheet to a clean "Simplified Records" view.
Grade Lookup System:
Uses lookup tables to convert letter grades into grade points based on each school's scale.
Real-time Updates:
Updates automatically when a value is updated.
Google Apps Script and Google Sheets API
Spreadsheet automation and data manipulation
Loopup tables and data validation
Multi-dimensional data processing (semesters, schools, courses)
Modular function design
Handling of different enrollment statuses (Completed, In Progress, Future Enrollment, Planned Enrollment)
The user enters the class information (Semester, School Course, Credits, and Grade) in the Class Records sheet.
When any one of these values are updated, the script:
Looks up the correct grade points for each school
Calculates weighted points and the GPA metrics
updates the totals and per-school statistics
Copies the relevent data to the Simplified Records sheet
Updates the GPA Data and GPA By Semester sheets
This project strengthened my skills in Google App Script and spreadsheet automation. I learned how to efficently read, process, and write large amounts of data across multiple sheets while maintaining clean separation of concerns.
I gained valuable experience working with real-world academic data structures, implementing lookup systems for different grading scales, and handling complex GPA calculations involving credits and weighted points. The project also improved my ability to create a user-friendly automation tool that saves significant time and reduces manual errors.