I guess there is some confusion on what I am trying to achiev. I will try to explain it.
I have a list with many items, each wit exactly one attached file. But there might be more then one of the same category. So my gallary should show all possible categories first. I already achived this by
Distinct(Trainings, Category)
Now my galary looks like this:

Now by selecting the download icon, I want to download the attached file of the first list item of the selected category. I tried with this:
Download(First(First(Filter(Trainings, Category=ThisItem.Result)).Attachments).Value)
as well as with this:
Launch(First(First(Filter(Trainings, Category=ThisItem.Result)).Attachments).Value)
The Download function gives me a Runtime error saying: The URL passed to the function is not valid.
Launch instead opens a new tab with the about:blank page.
I traced the issue to be that my Trainings list delivers no data in my IconDownload.OnSelect
What I don't understand is why, since my galary works fine.
But maybe I am having some other error. I am grateful for any help.