Here's one way I would do it. I guess it's a bit of a detour but should get the job done:
-
create a custom boolean field (I would create it in marketo only, not needed in sfdc) that will serve as a flag
-
create a trigger campaign that "raises this flag" when a lead clicks on that specific email link, and after a certain wait period that makes sense to you, like 30 minutes or 2 hours, resets it to false.
-
then update the form listener campaign to check if the flag is true at the time the form is filled.
you could re-use this flag field for other scenarios of this kind, but if you do, make sure to avoid overlaps, by changing the qualification rule to 'run once every [period of time a little longer than the wait you set in step 2 above]
hope this makes sense.
Idan.