Возможно, этот ответ не поможет в вашем конкретном случае, но в целом он может быть полезен.Это касается случаев, когда документ загружается и сохраняется без особых изменений.DomDocument
имеет свойство preserveWhitespace
, которое изначально установлено на False
.Если вы установите значение True
до load
, то оно будет сохранено с использованием того же отступа, что и исходный файл.
Чтобы добавить отступ вручную, можно создать текстовые узлы и вставить их для создания новых строк.и пробелы между элементами, как это:
Set txt = doc.createTextNode(vbCrLf & " ")
Call node.parentNode.insertBefore(txt, node)