Link to home
Start Free TrialLog in
Avatar of Jarrad Koppen
Jarrad KoppenFlag for Australia

asked on

Repeating task at changing schedule

Hi All

I'm looking for a way to make a task(s) in outlook (or preferable excel) repeat a set instances of time. This fits in with a revision method known as spaced repetition. Basically, what I'd like to achieve is a way to make task recur in the following time amount...1 day, 1 week, 1 month, 3 months, 6 months...completed! I can't currently find anyway of doing this in outlook. I know it could be done in excel, but I'm not sure how to create a "notification box" that can tell you which tasks are due or a "add Task" box to allow simple adding of task.

If anyone can suggest a method in excel or outlook to achieve this, I'd much appreciate it.

Kind regards

Jarrad Koppen
Avatar of Syed Aijaz
Syed Aijaz
Flag of Saudi Arabia image

Try using macro code to set specific task repeating in the amount of time you want
Avatar of Glenn Ray
I had to look up "spaced repetition" but noted that it's most often used for vocabulary training and that the time frames usually run from minutes to weeks.  So, I'm intrigued by your timeframe of one day to six months.  I take it that this involves a more complex task than learning words (say, a business-related task?).

I'm trying to envision how one would set up an Excel workbook to set up the reminders.  It's easy enough to calculate the milestones given a starting date.  However, the question is "How do you want Excel to behave when each of these milestones are passed?"  Would Excel merely be a reminder/tickler app that asks if the user did the expected task?  If so, then logic could be built to properly branch to the next milestone (if the task was completed) or the previous milestone (if not completed).

I also assume that more than one task may be listed in the workbook such that multiple tracking needs to be maintained.

Any additional clarification will be helpful.

Regards,
Glenn
Avatar of Jarrad Koppen

ASKER

HI Glenn

Thanks for your reply. I should have been more specific, the concept is spaced revision but I'm factoring in the forgetting curve (http://www2.byui.edu/LearningandTeaching/images/stories/11-2010/overcoming.jpg). Indeed, personally I'm looking to implement it as I'm currently studying medicine. The need for it comes in regards to the shear amount of content in these kinds of degrees and there requirement to retain information.  Of course I can think of several other applications including business ones, such as perspective client follow up or training revision (In the form of sending employees quizzes based on training) !

In regards to your questions. Ultimately it would be used as a reminder/tickler but how I picture it in a perfect world is one sheet would be a "dashboard" which allows you to add new tasks/content to be studied/completed and shows you the currently due content for revision (two separate sections). There would be another sheet in which all the task are stored. You would be able to select whether the task is to be repeated (in that is it a once off task, that you can forget about vs. something that you need to remember and know). The next revision date would be set based on when the task was actually completed (not the assumed date of completion) and of course it would prompt you until task completion.

Ultimately its probably better off as a outlook addin, but excel is more simple and I'm not a software developer. The larger idea is to eventually have a complete productivity system which implements this plus other features such as the pomodoro method for students.

regards

Jarrad Koppen
Hi, Jarrad.

I want to make sure I understand how you want the solution to work.  You want to

1.  Select a task
2.  Run a macro
3.  The macro creates 5 copies of the selected task with due dates of 1 day, 1 week, 1 month, 3 months, and 6 months from the due date of the selected task.

Is that correct?  If so, then I can help.
Hi BlueDevilFan

That's exactly what I'm hoping to achieve!!

Kind regards

Jarrad
ASKER CERTIFIED SOLUTION
Avatar of David Lee
David Lee
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Hi BlueDevilFan

This is absolutely brilliant. Now to put spaced repetition into practice!!

Thank you

Jarrad
You're welcome, Jarrad!
A+ Solution.
Hi there, just one last query

Is there an easy way to set the Category of the created task within the macro  ?

Kind Regards

Jarrad
Jarrad,

Yes, there is.  Add the command

olkNew.Categories = "Some category name/names"

anywhere between an iteration of

Set olkNew = olkTsk.Copy

and

olkNew.Save
Brilliant. The system is complete! and it works perfectly! :)
Avatar of rafaelarolim
rafaelarolim

Hello there. Thank you so much for this! It was a huge help.

(I wonder why there are many "flash cards" apps out there that apply this learning technique but it still doesn't exist something like a spaced repetition reminder app or task mananger...)

My question is: is there a way to make my tasks appear on the Outlook calendar?

I'd also like to know if this Outlook macro could be adapted and implemented on a calendar on Excel, for example. It would work like this: I'd enter the task, apply the macro, and then the programmed tasks would be added to the calendar.

Thank you very much, and I'm sorry for any misspelling (English is not my native language).
Hi Rafaelarolim

Indeed, this is why I tracked down the ability to have this macro built and it solves that problem largely. I'm glad you've found it of use, and I too, am grateful for the for work of BlueDevilFan on the macro, It works excellently.

In regards to your second question, that is much more advanced and I'm not a macro genius but would surely think that it falls outside of that domain, of course, you could have a macro to create the calendar item, but why both with a task to begin with  ?

What I believe your looking for is this: http://www.taskline.com/default.asp - which when coupled with the macro would  would allow a task to be scheduled into the calendar. For 40 USD for the standard version, why bother with excel ? This would give you much more functionality and flexibility, along with rescheduling..etc. (I'm not a reseller, however, this software coupled with my macro, would ultimately turn outlook into a spaced revision scheduling tool - an interesting and round about solution to the situation, which if I dare say, is highly functional for a cheap cost)

Kind regards

JK
Hello Jarrad and BlueDevilFan,

thanks for coming up with this problem and the great solution. It's very helpful to me.

A method of spaced repetition studying I would like to use is the Leitner system (https://en.wikipedia.org/wiki/Leitner_system). Thereby flashcards are not only reviewed after certain time intervals but get reordered depending on whether you passed or failed the "test".

User generated image
So basically it would require that the due dates of incorrectly answered flashcards are reset. Any thoughts on how this could be implemented?

Kind Regards

Max
Hi, Max.

The solution I provided only creates tasks in Outlook.  It doesn't display flash cards or collect and verify answers.  Doing that would require more code.  The simplest approach would be to trigger another script/app that displays the flashcards and takes action based on the response given.  If the response is wrong, then it could reschedule the task that triggered it.  If the response given is correct, then app could mark the task that called it as complete.  It's definitely doable, but we're talking about a full-fledged app, something beyond an EE question.
Hi Max

When I consulted BlueDevilFan about this solution, the idea was for revision of large concepts, rather than flashcards. For example - I would revise a mind map on heart disease as per the outlook schedule set by the macro - then I would have the flash card based revision on heart disease in a program such as SuperMemo or Anki - Both good at the implementation of "spaced Revision". It is beyond my skill level however if you can find a macro to delete the existing tasks with the "subject" perhaps a solution to suit you would be this - You use the initial macro to schedule the revision period, then at the scheduled revision if you don't know it, you delete the existing tasks and reschedule based on the fact you don't know it. This is one viable solution and should be able to be achieved with a macro - assuming you always go back to ground zero of the schedule.

Alternatively, you can adjust the macro above by removing code and insert it as follows
1 - The initial macro - scheduling as has been laid out
2 - a macro to schedule for the next day - this would indicate you don't know the content
3 - a macro to schedule for 1 week
4 - a macro to schedule for 1 month
5 - a macro to schedule for 3 Months
6 - a macro to schedule for 6 Month

Of course then you would just select the macro 1 to 6 based on how well you know the content. To really make this work, finding a way to delete existing tasks with the same "subject" would be the ultimate solution, so you never have random tasks which don't match your schedule. And you could adjust it to your desire. Perhaps BlueDevilFan has a comment on this.

Interestingly, you can also use this solution for "incremental style" reading - place the text in the information section of the task and then set up a macro to email you the task  (Plenty of these around) - you'll be emailed the content as per the schedule (1 week, 1 month..etc).

It of course, has nowhere near the power of SuperMemo but can be integrated into your life a lot more efficiently.

Bluedevilfan has provided an interesting response - I'm not aware of any software that requires user input in terms of response - even SuperMemo requires you to be honest about whether you know the question or not - and therefore, grade it yourself. Technically you could build a flashcard system onto of outlook, but no-one has done this yet and the solution I've discussed above comes about as close to it as I'm aware.

Hope that is of some help!!

JK
Hello,

thank you for your answers. Maybe I should clarify: as is, my "flashcards" are set up as follows: I have a Onenote template so that one "side" (actually you scroll down) of the card just about covers the screen of my phone (I have a Galaxy Note and that way I can use the pen to attempt the question/math problem on the "front side" before scrolling down to the solution).

Thanks to outlook integration, I can equip the onenote "flashcards" with an outlook task tag and then use BlueDevilFan's macro to create the spaced out repetitions. The only thing missing is the ability to reset the schedule in case I get something wrong. So the "delete existing tasks with subject/name x" that Jarrad suggests would work just fine.

I could use the following routine:

1. Create Onenote "flashcards" with attached Outlook-tasks
2. Use macro A (BlueDevilFan's Macro, let's call it "spaced repetition)
3. Work according to the schedule on my desktop/phone
4. If I get something wrong use macro B as suggested by Jarred to delete all tasks with the corresponding subject.
5. Reset the Outlook task on the Onenote card.
5. Use "spaced repetition" again to create a new schedule.

While this is a bit of a workaround, it seems usable to me.

I have not tried SuperMemo but maybe I should look into it. The point is, I would like to use Onenote for all its pen features which are really useful if you want to test yourself on stuff on the go that goes beyond simple vocabulary and requires writing (like maths problems). Also, I use it for lots of other stuff and ideally want to keep the amount of different software I use as small as possible. Alas, no application, however powerful, is a one-fits-all solution ;)

Thanks for your help,

Max
Hi Max

That sounds like a solution to me. I've posted a link to the TechNet site below which explains how to write VBA to delete tasks. If you or BlueDevilFan update the code, I'd love a copy.

Also you could combine the "delete tasks" and "spaced repetition" into one macro - would save you an extra click or so. So Just the "initial schedule" and then "update schedule" if you get it wrong, which would delete all the tasks with that subject and then create a new set - which technically should start from the next day. I can't see why you would need to reset the task on onenote - it would only effect the initial outlook task - that's my understanding anyways and the tasks scheduling is primarily done in outlook - The initial task only serves as a link to outlook.

I'm an avid user of OneNote myself, I've found Q and A with collapsed sections perhaps works better than scrolling down - but you have to do what works for you (Just a thought).

Anyways keep me posted - I'm interested to see this developed as it has some potential as a well integrated (admittedly basic) learning system.

https://technet.microsoft.com/en-us/library/ee692909.aspx

JK
Hi Jarrad,

thanks for the link, I will check it out.

Best regards

Max
Hi Jarrad,

about collapsing sections: That's the way I wanted to do it initially but onenote for android apparently does not support the "collapse text" feature. So it would just always show the text :/

Best regards

Max
Hello,

I have fiddled around with the scripts posted by Jarrad, but could not get it working. This is the best I could come up with (Sry, my knowledge of coding is basically zero. It probably has lots of mistakes but maybe it confers what I was trying to do).

Modul1.bas

Anyways, real studying needs doing so I will not be able to spend more time on this. But maybe someone who actually knows vba can ;)

Best regards

Max