# Help designing spredsheet/Glide - Curriculum with many user

**URL:** <https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813>\
**Category:** Ask for Help\
**Created:** [October 2, 2019, 6:22am UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813 "2019-10-02T06:22:02Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![mptpro](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mptpro/32/634_2.png) [@mptpro](https://community.glideapps.com/u/mptpro)\
**Post date:** [October 2, 2019, 6:22am UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/1 "2019-10-02T06:22:03Z")

</div>

I would like some help designing my spreadsheet and Glide properly for the following situation:

- I have a Curriculum where by my salespeople need to complete a task and mark it “complete”.

- The Curricuum has over 120 tasks (the one I’m sharing is just a small sample).

- There are about 60 reps that will go through the Curricumum.

- I know how to use the “sign in by email” feature and how to add a column with a user’s email to filter that row’s data to that user.

- My question is, with so many taks in the Curriculum, **do I need to create a massive table with every curriculum task duplicated for each rep, or is there an easier way?**

- My sample spreadsheet is here: [https://docs.google.com/spreadsheets/d/1U3LfOZxEucwSiy0CobU6MCySpdnIjXDbPxmoSeojsQ4/edit?usp=sharing](https://docs.google.com/spreadsheets/d/1U3LfOZxEucwSiy0CobU6MCySpdnIjXDbPxmoSeojsQ4/edit?usp=sharing)

- Attached are some screenshots of my test app. The user-filter is not added yet on this spreadsheet.

thank you!

 ![A](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/1X/4e704a415cd64667428e1e1becb1cdfa40344751.jpeg) ![B](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/1X/adcc43aa8580742d217bb712f1e71e35b5173232.jpeg) ![C](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/1X/9e600a45aa036dbbaca14d1ee9e623c0edb235fe.jpeg)

---

<div class="post-metadata">

**Author:** ![Jeff\_Hager](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jeff_hager/32/43_2.png) [@Jeff\_Hager](https://community.glideapps.com/u/Jeff_Hager)\
**Post date:** [October 2, 2019, 12:09pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/2 "2019-10-02T12:09:07Z")

</div>

Do you need to do anything with the data once the task is marked done, or is it more of a behind the scenes log of completed tasks? One idea I have is, rather than using a switch, you could use a form button. Once the task is complete, the user could tap on the button, then flip a switch, then submit the form with email, date, relevant task information automatically included from column values and special values. This could be written to a new sheet. Not as elegant as what you are attempting, but it would prevent you from creating duplicated tasks for each user.

---

<div class="post-metadata">

**Author:** ![Juha](https://avatars.discourse-cdn.com/v4/letter/j/b5e925/32.png) [@Juha](https://community.glideapps.com/u/Juha)\
**Post date:** [October 2, 2019, 1:28pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/3 "2019-10-02T13:28:11Z")

</div>

I have somewhat similar scenario going on. In my case, different events in calendar all refer to same list template of tasks to do (or buy). In the list sheet, column titles are items that have to be complete. Every event has it’s own row with values ‘false’ as default.

User then opens the event from the app, sees all info of and opens the todo list for the event. All items are listed with switch component. Clicking switch marks items completed, one by one, into that event’s row.

So, I’m adding rows with true/false values for and with every new event. Don’t know if this helps anything, perhaps just one way to see the same thing.

In your case, my event would be your sales people, and columns would tell what task they have completed:

----------- **task 1** ------- **task2** ------- **task3**  
Mark-----false---------true---------false  
Anna-----true----------true---------false

---

<div class="post-metadata">

**Author:** ![TSam](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/tsam/32/599_2.png) [@TSam](https://community.glideapps.com/u/TSam)\
**Post date:** [October 2, 2019, 2:13pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/4 "2019-10-02T14:13:57Z")

</div>

I have a similar project right now where task monitoring is one of the tabs. This is for my class with about 25 students and the tasks are the same for all but I want to show each student (per user) the tasks they have completed and the ones they haven’t. Since I also want to know when the task was reported as completed by the user, I am using a form button for each task which writes to a new sheet the user email, task name, status as done and datestamp (this is what @Jeff_Hager is suggesting). In my Tasks sheet, I have all the tasks listed in rows with due dates and I have columns for each user email (just the reverse of what @Juha has done) . I am able to extract the form submission info from the FormResponses sheet using INIDEX(MATCH) and fill the appropriate cell in the Tasks sheet with TRUE for each user who has completed a task.

My problem is, how do I display the per user data so that a user gets to see a list with both tasks that are completed and those that are not. If a completed task is not displayed as such, the user may not recall if they reported it as complete already or not.

---

<div class="post-metadata">

**Author:** ![mptpro](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mptpro/32/634_2.png) [@mptpro](https://community.glideapps.com/u/mptpro)\
**Post date:** [October 2, 2019, 10:06pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/5 "2019-10-02T22:06:34Z")

</div>

It _is_ just a one-and-done completion. No data is manipulated after the fact. However, I don’t know if I want to have the user submit a separate form for over 120 tasks. In addtion, one of the benefits of using the switch, is that once a task is completed I can filter it out of the List, so that the user only see the non-completed tasks.

---

<div class="post-metadata">

**Author:** ![mptpro](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mptpro/32/634_2.png) [@mptpro](https://community.glideapps.com/u/mptpro)\
**Post date:** [October 2, 2019, 10:08pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/6 "2019-10-02T22:08:52Z")

</div>

That’s a good idea. I too thought about create a separate table just for the status of completion. Like you showed above. However, how would I display this in the Glide App properly? The description of each task is coming from one table, and the completed status is coming from another sheet…

---

<div class="post-metadata">

**Author:** ![mptpro](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mptpro/32/634_2.png) [@mptpro](https://community.glideapps.com/u/mptpro)\
**Post date:** [October 2, 2019, 10:10pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/7 "2019-10-02T22:10:26Z")

</div>

That was my question about this method as well, how to display the content from the two tabs within one section of Glide (the tasks and the completion status).

---

<div class="post-metadata">

**Author:** ![Jeff\_Hager](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jeff_hager/32/43_2.png) [@Jeff\_Hager](https://community.glideapps.com/u/Jeff_Hager)\
**Post date:** [October 2, 2019, 10:38pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/8 "2019-10-02T22:38:50Z")

</div>

I agree with you there. A separate form is not very elegant. I know there has been talk about a form button that would blindly submit without opening another screen. I’m not sure if that’s in the works or not. I’ll have to think about this a little bit. One idea would maybe be a play on @TSam idea. Maybe a detail view with a link to each curriculum alternating with a switch. The user would view the curriculum, then when they come back to the detail screen, they would flip the switch. Not my best idea, but I’ll see what I can think of.

---

<div class="post-metadata">

**Author:** ![mptpro](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mptpro/32/634_2.png) [@mptpro](https://community.glideapps.com/u/mptpro)\
**Post date:** [October 2, 2019, 11:02pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/9 "2019-10-02T23:02:34Z")

</div>

thanks!

---

<div class="post-metadata">

**Author:** ![mptpro](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mptpro/32/634_2.png) [@mptpro](https://community.glideapps.com/u/mptpro)\
**Post date:** [October 3, 2019, 1:59am UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/10 "2019-10-03T01:59:37Z")

</div>

Ok. So, I’ve followed your lead and thatof @TSam and create a Form Submission that goes to another sheet/tab that records the user (email), and the module # (the tasks of the curriculum).

1. is it possible in the Form View is it possible for the user to see the email that they’re logged-in with? (Just to make sure it’s the correct user, and also not a “blank” user).

2. Can you share with the index/match function you use?

thanks

---

<div class="post-metadata">

**Author:** ![TSam](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/tsam/32/599_2.png) [@TSam](https://community.glideapps.com/u/TSam)\
**Post date:** [October 3, 2019, 4:19am UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/11 "2019-10-03T04:19:16Z")

</div>

So, I have a Tasks sheet where for each task (in rows) there are columns with email addresses of each user. The INDEX/MATCH formula goes in the cells in the email columns of each row.

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/1X/9539809bd9ef4280385ab22165c7ff13ac7ac620.png)

My FormResponses sheet has User Email as special value reported in column B and the switch in the form is recorded in column E (Status).

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/1X/074a2d84617468067e33c3599dbba52d8097ccff.png)

The formula in each cell in Tasks under the email columns checks if that user’s name AND the task in that row both occur in the FormResponses sheet. If they do, the cell will show TRUE. Here is the operational part of the formula. I have wrapped it with an if(iserror) on my sheet so that it displays FALSE instead of the #N/A error.

**=INDEX(FormResponses!$E$2:$E, MATCH(1, (FormResponses!$C$2:$C=$B3)\*(FormResponses!$B$2:$B=J$1), 0))**

FormResponses$E2:$E is the status of the switch (True if checked). MATCH is checking for the task and user email.

---

<div class="post-metadata">

**Author:** ![mptpro](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mptpro/32/634_2.png) [@mptpro](https://community.glideapps.com/u/mptpro)\
**Post date:** [October 3, 2019, 4:38am UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/12 "2019-10-03T04:38:08Z")

</div>

THANK YOU very much! That was very helpful

---

<div class="post-metadata">

**Author:** ![AyS\_0908](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/ays_0908/32/27349_2.png) [@AyS\_0908](https://community.glideapps.com/u/AyS_0908)\
**Post date:** [May 9, 2020, 8:08am UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/13 "2020-05-09T08:08:14Z")

</div>

Hi Juha,

Thanks for your input. I have a relatively similar issue than you to … monitor my kids work!

The objective is to:

- assign each kid and each day (or each week) the “subjects” that they have to study (based on a standard list of “subject” where I select/check several “subjects”)
- enable them to mark each “subject” as “complete”
- and then I validate each “subject”.

To make it fun for my kids, I would like to store these “validate” per day and provide them with a graph of their achievements …

(see : [https://docs.google.com/spreadsheets/d/1MJHFXDmkj8Ypsi7eySsTso-Uo0uS-dMDuNmokWNnKJI/edit?usp=sharing](https://docs.google.com/spreadsheets/d/1MJHFXDmkj8Ypsi7eySsTso-Uo0uS-dMDuNmokWNnKJI/edit?usp=sharing))

Do you have any clue?  
Many thanks!

---

<div class="post-metadata">

**Author:** ![Robert\_Petitto](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/robert_petitto/32/25193_2.png) [@Robert\_Petitto](https://community.glideapps.com/u/Robert_Petitto)\
**Post date:** [May 9, 2020, 12:12pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/14 "2020-05-09T12:12:17Z")

</div>

Sounds doable. You could

1. Create a sheet with list of subjects with all requirements and media. Include a True/False “Assign” column.
2. Create an Assignments Log sheet where students will submit their work. Include columns for their work, evidence, photos, time stamps, etc.
3. Display the Subjects tab to students but only if Assign is True (which you would mark as needed)
4. Include a form button on the details view of each subject that will allow students to submit subjects to the Assignment Log sheet.
5. Bonus, hide the form button after a student submits a subject using template/relation/lookup columns.

I do this in my challenges section of my inventory and challenges apps  
[itemstore.glideapp.io](http://itemstore.glideapp.io)

> **[Challenges App](https://challenges.glideapp.io/)**
>
> Users can complete challenges. Admins can approve. Users can collect badges per challenge.

---

<div class="post-metadata">

**Author:** ![spencersRus](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/spencersrus/32/69_2.png) [@spencersRus](https://community.glideapps.com/u/spencersRus)\
**Post date:** [May 9, 2020, 1:03pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/15 "2020-05-09T13:03:15Z")

</div>

This may not be what you are looking for but there may be some ideas in there. (lots of help from @Robert_Petitto, especially the part about taking away the button. so he is your go to guy!)

> **[EZ Class APP](https://ezclassapp.glideapp.io/)**
>
> App for My Class

---

<div class="post-metadata">

**Author:** ![AyS\_0908](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/ays_0908/32/27349_2.png) [@AyS\_0908](https://community.glideapps.com/u/AyS_0908)\
**Post date:** [May 9, 2020, 1:08pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/16 "2020-05-09T13:08:46Z")

</div>

Many thanks Robert, sounds good! I will give it a try with my very basic knowledge …  
Cheers

---

<div class="post-metadata">

**Author:** ![AyS\_0908](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/ays_0908/32/27349_2.png) [@AyS\_0908](https://community.glideapps.com/u/AyS_0908)\
**Post date:** [May 9, 2020, 1:09pm UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/17 "2020-05-09T13:09:30Z")

</div>

Many thanks Spencer, I’ll have a deep look at it!  
Cheers

---

<div class="post-metadata">

**Author:** ![mptpro](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/mptpro/32/634_2.png) [@mptpro](https://community.glideapps.com/u/mptpro)\
**Post date:** [May 12, 2020, 4:15am UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/18 "2020-05-12T04:15:12Z")

</div>

I tried your solution and it looks like what your Challenges section is doing is what I’m looking for. Any chance I can see your spreadsheet to see how you set it up? I have a cirrcuiclum with over 100 tasks for about 50 salespeople and I need to track who has complete which track, and it’s a bit challening.

thanks

---

<div class="post-metadata">

**Author:** ![Robert\_Petitto](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/robert_petitto/32/25193_2.png) [@Robert\_Petitto](https://community.glideapps.com/u/Robert_Petitto)\
**Post date:** [May 12, 2020, 11:48am UTC](https://community.glideapps.com/t/help-designing-spredsheet-glide-curriculum-with-many-user/813/19 "2020-05-12T11:48:35Z")

</div>

Hi @mptpro, the Challenges app is copiable. It doesn’t have the most sophisticated assignment tracker, but you’d be able to see behind the scenes by making a copy.
