Thanks for sharing this has no finite verb. Therefore there is no actual tense expressed in this phrase. The sharing could have taken place in the past, be taking place now, or take place in the future.
What is expressed is one's current thanks for an event of sharing.
Without an adverb expressing when the "sharing" occurs, we don't know when it does/did/will do. If you attach an adverb, the adverb tells you when the sharing happened.
Consider:
1 Sharing the pie with you last week was terrific!
The sharing was in the past
We certainly would not say, in general
2 *Having shared the pie with you last week was terrific!
Now, consider two people walking toward the kitchen to get a pie. The pie has not yet been shared, but one can say
3 Sharing the pie with you is going to be terrific!
We certainly wouldn't say
4 Will be sharing the pie with you is going to be terrific.
So, consider all the following:
Thanks for sharing the pie with me (last week).
Thanks for sharing the pie with me (right now).
Thanks for sharing the pie with me (when we get to the kitchen and eat It.)
Sharing the pie with you (yesterday) was fun.
Sharing the pie with you (right now) is fun.
Sharing the pie with you (tomorrow) will be fun.
So, to call sharing the "present progressive" is misleading. It can refer to the past:
Sharing the pie with Bill made me thirsty.
or future
Sharing the pie with Bill will make me thirsty.
Note that you can say
Thanks for having shared the pie with me, and this refers to a sharing that took place in the past. Choosing between this and the non-finite Thanks for sharing... might depend upon the speaker or customary phrasing.
2This is actually a really good question. I would use 'thanks for sharing this' if it is recently shared but I would use 'thanks for having shared this' if it was like a week later or if I had finished with the document. I too would like to know the proper answer to this though! – politicallycorrect – 2016-05-31T12:50:36.867
12@politicallycorrect - Actually, we commonly do this with the word "thanks," even when quite a bit of time has elapsed: Thanks for coming over last week; thanks for praying for us last month; thanks for fixing my boat last summer; thanks for helping me get that job three years ago; thanks for introducing me to my wife back at that cookout in 1987. I can't find any grammatical flaws in any of those. I agree with you, though – this is a good question! – J.R. – 2016-05-31T13:08:37.820
3Note, by the way, that you share something with people, not to them. – StoneyB on hiatus – 2016-05-31T13:18:16.290
Same rule applies to "Nice to have met you", "Good to have seen you". "Thanks for sharing this" doesn't cause any confusion in terms of timing of the action to share. You can't thank anyone if you don't receive any favor before you say "Thank you". No need to use "Thanks for having shared this". – None – 2016-05-31T13:28:20.753
6I think it's sharing, the gerund, because we thank someone for a noun. You say "Thanks for the fish" or "Thanks for my new trombone", and likewise, in this case, we're thanking someone for a particular act. "Sharing" in this context is the act of sharing; it doesn't mean that the person is sharing right at that very moment. – stangdon – 2016-05-31T14:31:54.760
1Does that mean that by default this is past but we can use it for the future like in the following example?: Thanks for coming tomorrow to help me with my homework? – psql – 2016-05-31T15:23:38.743
That's a good question. "Thanks for coming tomorrow" doesn't really make sense, because, as Rathony pointed out, you can't really thank someone for something that hasn't happened yet. For an act that is yet to happen, I would say, "Thanks for agreeing to come tomorrow" or "Thanks for promising to come tomorrow", because the agreeing or the promising has already happened, unlike the coming. – stangdon – 2016-05-31T16:19:19.447
1@stangdon you can also use the fairly common phrasing "Thanks in advance for helping me move tomorrow" – Sarah – 2016-05-31T16:24:09.083
@Sarah Even if it is common, without "in advance" it doesn't make sense. That particular construction implies that you thank before the favor is done as if it were done beforehand. I think "agreeing to" or "promising to" is implied in the sentence. – None – 2016-05-31T17:16:50.393
1Bah! Thanks for coming tomorrow is fine. You are thanking the person for their decision/intention to come tomorrow. Compare with Thanks for cooking tomorrow... you're thinking the person for having agreed to cook tomorrow. What you would not say is Thanks for having come/cooked tomorrow. – Alan Carmack – 2016-05-31T17:54:24.553