Teste este código...
Do While Not RS.EOF
listview.ListItems.Add = Campo0
i = listview.ListItems.Count
listview.ListItems.subitem(1) = Campo1
listview.ListItems.subitem(2) = Campo2
listview.ListItems.subitem(3) = Campo3
rs.movenext
loop
listview.Visible = true
Jogando os valores dos campos em variáveis e mudando o visible para false.
Se der certo vai otimizar um pouco o código, não vai melhorar muito... :(