Use uma coluna auxiliar com essa fórmula
= SE (A2, ROW (), 0)
Copie para baixo.
Em seguida, use esta fórmula de matriz, confirmada com Ctrl - Deslocamento - Enter
=AVERAGE(SMALL(IF((A2:A15<>0)*(B2:B15=LARGE(B2:B15,{1,2,3,4,5,6})),A2:A15),{1,2,3}))
A função Grande fixa os seis maiores números na coluna B. A função If retorna os respectivos números na coluna A. A função Small retorna os três menores desse conjunto. E Média faz a média destes.
É assim que funciona no Excel. Não tenho certeza sobre o LibreOffice Calc.
Editar: aqui está uma variante que funciona sem uma coluna auxiliar:
=AVERAGE(SMALL(IF((A2:A15<>0)*(IF(ISNUMBER(A2:A15),ROW(A2:A15))=LARGE(IF(ISNUMBER(A2:A15),ROW(A2:A15)),{1,2,3,4,5,6})),A2:A15),{1,2,3}))
Também confirmado com Ctrl - Deslocamento - Enter