I think you ARE accessing them and you ARE moving them in the blueprint you’ve posted.
However, you are creating them at exactly the same spot and you are moving them all exactly the same distance so they all, again, end up at the same spot 10 units away from the parent actor’s transform.
Now I’m not quite sure what you are trying to achieve here but if you take the NewLocation vector in the SetRelativeLocation node from a variable and you multiply that variable by the index in your ForEachLoop they should start to spread out in the direction of the vector.
BUT… You are doing quite a lot of unnecessary work making this more complex than it should be.
You don’t really need anything after the AddDecallComponent node.
The RelativeTransform variable in AddDecallComponent node can be used to place the decals in exactly the right position. (Just don’t forget to move the transform after you place a decal otherwise you will have the same problem.)
You can create a transform and manipulate it (move, scale and rotate it) or outright build it in place before you add the decal which will be much simpler and avoid 2 loops.
If you would need these decals later in your game, you can store them in a specific array after you create them instead of taking all components and looking for a tag.