Команда VBA экспортирует XML хорошо, но не заменяет

Я решил попробовать себя в VBA, запустив небольшой скрипт для экспорта XML-карты, находящейся в рабочем листе, в XML, до сих пор работает нормально, но когда этот XML-файл уже создан, он возвращает ошибку вместо замены это... Я пробовал много способов, которые я видел в других темах этого форума и в Интернете, но поскольку я не знаю протоколов VBA, это отнимает у меня (много) времени, может кто-нибудь помочь?

Что у меня так далеко:

    Sub Export_Main_XML()

Dim JobNumber As String
JobNumber = Sheet12.Range("A4").Text
XMLName = ThisWorkbook.Path & "\" & JobNumber & "_Main_Export.xml"
    ActiveWorkbook.XmlMaps("Main_XML_Map").Export URL:=XMLName
End Sub

В идеале то, что я ищу, это:

экспорт

-Если файл не существует, просто экспорт (скрипт выше)

-Если файл по тому же пути и имени существует> попросить заменить "да или нет"

-если да, замени

-Если нет, выход

Помогите пожалуйста, спасибо!

1 ответ

Ищите существующий файл, попросите перезаписать, если он существует - если это проход выбора true в .Export чтобы указать ваше намерение заменить его:

JobNumber = Sheet12.Range("A4").Text
XMLName = ThisWorkbook.Path & "\" & JobNumber & "_Main_Export.xml"

'' does it exist already?
If Dir$(XMLName) <> "" Then
    '' exists
    If MsgBox("Overwrite " & XMLName & " ?", vbYesNo, "Confirm Overwrite") = vbNo Then Exit Sub
End If

'' pass true to overwrite
ActiveWorkbook.XmlMaps("Main_XML_Map").Export XMLName, True
Другие вопросы по тегам