Ciao,
solo per farti notare che la formula è sempre quella inizialmente proposta, per restituire più colonne bastava ridefinire l'intervallo, ma non ho visto come hai provato a fare per poterlo correggere, visto che hai risolto, solo per didattica, andava modificata come segue:
=LET(i;Principale!A1:C1000;FILTRO(i;CONTA.SE(Soggetti!A1:A2;SCEGLI.COL(i;1));""))
essendo più colonne ed i nomi da confrontare solo nella prima, definendo l'intervallo in i, si può usare solo la colonna che li contiene.
Un saluto.
P.S.
Non dovendola trascinare non serve bloccare gli intervalli😉