Pergunta

Eu tive esse problema recorrente com todos os meus planilhas por meses. A planilha será funcionando bem e importar os arquivos XML obtido a partir do nosso site, então, de repente, ele vai começar cada vez que bater na importação. A única coisa que correções é tomar todo o conteúdo (lençóis, código, referências) e deixá-los em uma pasta de trabalho fresco.

Esta é a linha deixa de funcionar por diante.

ActiveWorkbook.XmlImport URL:=l_strXMLFileName, _
ImportMap:=Nothing, Destination:=Sheets("Imported Data").Range("$A$1")

Alguém já teve este problema? Se assim for, há uma maneira melhor para mantê-lo de cair ??

Foi útil?

Solução

Eu postei esta pergunta depois que eu encontrei a resposta só porque este era tal desastre um para mim, e tinha me atormentado por meses. Espero que este post vai manter alguém de puxar seu cabelo para fora como eu fiz por tanto tempo.

A correção é muito simples. O que acontece é cada vez excel importa um arquivo xml, ele armazena uma xmlmap nessa planilha. Então, se você usar a mesma planilha e manter salvá-lo, estes acumulam ao longo do tempo. A melhor solução que eu encontrei é apenas para excluir esses mapas XML, ou reutilizar a mesma (este último não é uma boa opção muitas vezes).

Aqui está um código para apagar todos eles (eu só executar este antes do código eu incluí na minha pergunta):

Dim XmlMap as XmlMap
    For Each XmlMap In ActiveWorkbook.XmlMaps
        XmlMap.Delete
    Next

Outras dicas

Existe uma chance do XML de entrada tem alguns caracteres ilegais / unescaped?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top