I would say no, but I don't have a rule for it. In English, questions like "Have you been here," "Have you been here before," and "Have you ever been here" are fine. But when "yesterday" is added, it just sounds wrong. Maybe because "yesterday" gives some specificity to the phrase, which doesn't work with the more open-ended "have you been..."?
We were taught the rule that we should not use the present perfect when the time is specified.
Thank you both for the explanation. I'm not an advanced English speaker (yet). And sorry for the off-topic. I will try to avoid this from now on.
"byls" is short for "byl jsi", usual second person singular
"byl jste" is the formal plural used to address a person respectfully
"byli jste" is the usual second person plural to address a group of people