¿Cómo puedo mejorar la velocidad del análisis XML en VBA

Tengo un archivo XML grande que debe analizarse en VBA (Excel 2003 y 2007). Podría haber más de 11,000 'filas' de datos en el archivo xml con cada 'fila' que tiene entre 10 y 20 'columnas'. Esto termina siendo una tarea enorme solo para analizar y tomar los datos (5 a 7 minutos). Intenté leer el xml y colocar cada 'fila' en un diccionario (clave = número de fila, valor = Atributos de fila), pero esto lleva el mismo tiempo.

Se tarda una eternidad en atravesar el DOM. ¿Hay alguna forma más eficiente?

Dim XMLDict
    Sub ParseXML(ByRef RootNode As IXMLDOMNode)
        Dim Counter As Long
        Dim RowList As IXMLDOMNodeList
        Dim ColumnList As IXMLDOMNodeList
        Dim RowNode As IXMLDOMNode
        Dim ColumnNode As IXMLDOMNode
        Counter = 1
        Set RowList = RootNode.SelectNodes("Row")

        For Each RowNode In RowList
            Set ColumnList = RowNode.SelectNodes("Col")
            Dim NodeValues As String
            For Each ColumnNode In ColumnList
                NodeValues = NodeValues & "|" & ColumnNode.Attributes.getNamedItem("id").Text & ":" & ColumnNode.Text
            Next ColumnNode
            XMLDICT.Add Counter, NodeValues
            Counter = Counter + 1
        Next RowNode
    End Sub

Respuestas a la pregunta(2)

Su respuesta a la pregunta