Sunscreen blocks new damage. It does nothing to the spots you already have.
This is the one nobody says out loud. Sunscreen is a shield — it helps protect the skin from the UV exposure that can trigger more visible pigmentation. It was not designed to remove pigment that is already there.
You could wear sunscreen every day and still see the spots you started with. That is not a failure of the sunscreen. It is a failure of the explanation.