The reason that it doesn't work is if you pick a certain instance in an event you can't pick another instance in a sub event.
Example:
Touch | On tap gesture on Sprite
Sprite | Variable1=0
...................Sub-Event | .....
Only instances from Sprite with Variable1=0 will be accessible in the sub-event.
If you want to pick another instance you have to use 'Pick all'.
Touch | On tap gesture on Sprite
Sprite | Variable1=0
...................System | Pick all Sprite
..................................System| Pick Sprite where Variable1=1 -> Sprite | Destroy