Quite often in my training sessions I encounter the scenario where it would be nice to rerun a task that's just be executed as an on-demand task. However, the Task History only allows for re-running tasks that were executed as Scheduled Tasks.
The way to handle this is to develop the habit of creating any task that you might need to re-run at a later time as a scheduled task. Scheduled tasks can be created as a "Run-Once" task for far into the future, but this is not particularly necessary. Once a task is scheduled, and appears in the Scheduled Tasks listing, you can mark the task as DISABLED, which permanently removes it from the schedule. (A Run-Once configuration with a date far in the future, e.g. 12/31/2099 is still probably a good safeguard).
Then use the "Run Task Now" option from Scheduled Tasks to execute the task on-demand, which will also make it re-runnable from the Task History list. In addition, some task features can be modified from the task Properties in the Scheduled Tasks list, such as the computers a task is targeted to.
If you have questions about this technique, post them in this thread, and I'll be happy to answer them.