Hi, welcome to the forum!
(I had noticed your question quite a while ago, but I didn’t understand your problem at that time, so I didn’t reply. I didn’t expect that no one else had replied by now…)
It seems that the problem lies in the following facts.
If we use regular @cites, then there will be redundant parentheses.
If we use #cite(…, form: "year"), then both 2014a and 2014b become 2014.
I think circumventing 1 is more practical, that is, show "(": none.
#let secondary(body) = {
[as cited in ]
show "(": none
show ")": none
body
}
(Rabbitt, 1982; #secondary[@Lyon_2014a @Lyon_2014b])
#bibliography(
bytes(
```bib
@article{Lyon_2014a,
date = {2014},
author = {Lyon and Lyon and Lyon},
Title = {Work A},
}
@article{Lyon_2014b,
date = {2014},
author = {Lyon and Lyon and Lyon},
Title = {Work B},
}
```.text,
),
style: "apa",
)