criei a mesma tabela aqui e consegui só tive fechar os recordset veja o exemplo:
sqlLOJA="SELECT DISTINCT loj_fic FROM fichas ORDER BY loj_fic ASC"
rsLoja.Open sqlLoja, cnSQL, adOpenForwardOnly, adLockReadOnly
while not rsLoja.EOF
SQL = "SELECT sum(val_fic) AS total FROM fichas where loj_fic='" & RST("loj_fic") & "'"
rsPaciente.Open SQL, cnSQL, adOpenForwardOnly, adLockReadOnly
Set lst = ListaAlunos.ListItems.Add(, , (rsLoja("Loj_fic")))
lst.SubItems(1) = Format(rsPaciente("total"), "###,##0.00")
rsPaciente.Close
rsLoja.Movenext
Wend
rsLoja.Close
veja agora se você consegue