you can use javascript to detect the plugin...but if that is how you are delivering the data, then the user should have it already right...
as for the save you can use the http headers meta tags to handle that just make them send the file
Content-Disposition
Source: RFC2183 - Specify application handler (Microsoft), e.g.
Content-Type: text/comma-separated-values
Content-Disposition: inline; filename=openinexcel.csv
google it for more