I have moved this post to the Developer Forums for additional assistance from our developer community. I do not know of a method for running a task based on access of the view by a user. Could you elaborate on what you are trying to accomplish?
This is something you could do with the Extensions API or even more simply with just a web object. Create a web app that creates the csv whenever loaded and drop it into your dashboard. If you use the Extensions API you will be able to get information on who is looking at the dashboard by referencing a USERNAME() calculation. To learn more about the Extensions API go here: Extensions API Home.