Está todo bien, pero te doy unos cuantos consejos (después de unos cuantos meses de experiencia con el Excel y el VB6 en el curro):
1. Si puedes evitar las matrices, mejor que mejor. VB6 es lento, y con matrices más todavía.
2. Puedes leer una celda directamente con xlHoja.Cells(Fila,Columna) en vez de Range que también es muy lenta.
3. Evita en lo que puedas lecturas innecesarias del Excel, es muuuuuuuuy lento.
4. Evita tener varios libros abiertos. En mi caso el proceso EXCEL.EXE puede llegarme a ocupar 120MB de memoria él solito.
Saludos y mucha suerte.