Пустые строки, вставленные в таблицу после импорта VBA XML - PullRequest
0 голосов
/ 19 ноября 2018

Я пытаюсь написать макрос, который импортирует определенные данные XML в существующую карту XML в файле Excel с предопределенными столбцами.Предполагается, что не все данные XML импортируются на лист.Я использовал этот подход ниже без проблем.Однако я заметил, что запуск макроса занял очень много времени, а затем я понял, что таблица, содержащая данные XML после конца данных XML, вставляла пустые строки вплоть до конца строки листа Excel.Когда я импортирую вручную, этого не происходит.

Как мне убедиться, что таблица, содержащая данные XML, не будет расширена до конца листа Excel?Я что-то пропускаю?

Мой код макроса:

Sub importXML()

'Define worksheets
Dim ws1 As Worksheet: Set ws1 = Sheets("XML_data")

Application.ScreenUpdating = False

'Finding last row in tabel
lastRow = ws1.Range("A1").Offset(ws1.Rows.Count - 1, 0).End(xlUp).Row

'Deleting old xml map data
If lastRow > 2 Then
    ws1.Range("A2:H" & lastRow).EntireRow.Delete
End If

'Define separators and apply.
Application.DecimalSeparator = "."
Application.ThousandsSeparator = ","
Application.UseSystemSeparators = False

fileToOpen = Application.GetOpenFilename("XML Files (*.xml), *.xml", , "Import XML", , True)

Application.DisplayAlerts = False
If IsArray(fileToOpen) Then
    For Each fil In fileToOpen
        ActiveWorkbook.XmlMaps("myXmlMap").Import URL:=fil
    Next fil
Else
    Exit Sub
End If
Application.DisplayAlerts = True

Application.UseSystemSeparators = True

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...