Вопрос по vba, xml – экспорт нескольких таблиц доступа в один XML

6

У меня есть несколько таблиц Microsoft Access, которые я хочу экспортировать в один файл XML. Как мне манипулировать порядком и иерархией таблиц в желаемой структуре XML? По сути, я хочу иметь возможность полностью изменить процесс импорта XML, который автоматически разбивает данные на несколько таблиц. Я могу использовать VBA, SQL и любую встроенную функцию экспорта в моем распоряжении.

Ваш Ответ

2   ответа
5

чтобы создать вложенный XML-файл с 3 миллионами строк за пять минут.

Есть два ключевых пункта,

1) простой кусок VB,

Public Function Export_ListingData()

    Dim objOtherTbls As AdditionalData

    On Error GoTo ErrorHandle
    Set objOtherTbls = Application.CreateAdditionalData
    objOtherTbls.Add "ro_address"
    objOtherTbls.Add "ro_buildingDetails"
    objOtherTbls.Add "ro_businessDetails"
    objOtherTbls.Add "ro_businessExtras"
    objOtherTbls.Add "ro_businessExtrasAccounts"
    objOtherTbls.Add "ro_businessExtrasAccom"
    objOtherTbls.Add "ro_businessExtrasAccom2"

    Application.ExportXML ObjectType:=acExportTable, _
                DataSource:="ro_business", _
                DataTarget:="C:\Users\Steve\Documents\Conversions\ListData.xml", _
                AdditionalData:=objOtherTbls
Exit_Here:
        MsgBox "Export_ListingData completed"
        Exit Function
ErrorHandle:
        MsgBox Err.Number & ": " & Err.Description
        Resume Exit_Here
End Function

2) Связывание таблиц в диспетчере отношений с помощью соединений первичных ключей с ключами FOREIGN.

Если отношений нет, код создаст последовательный файл XML, если между первичными ключами есть отношения, вы получите ошибку 31532 и экспорт данных не удастся.

3


http: //msdn.microsoft.com/en-us/library/ff193212.asp

создать от и поставить кнопку на нем. щелкните правой кнопкой мыши на кнопке и выберите «построить событие» и введите следующий код:

Dim objOtherTbls As AdditionalData


Set objOtherTbls = Application.CreateAdditionalData

'Identify the tables or querys to export
objOtherTbls.Add "internet"
objOtherTbls.Add "mokaleme"

'Here is where the export takes place
Application.ExportXML ObjectType:=acExportTable, _
DataSource:="internet", _
DataTarget:="C:\myxml.xml", _
AdditionalData:=objOtherTbls

MsgBox "Export operation completed successfully."

Вы должны ввести название своих таблиц здесь и между цитатами:

   objOtherTbls.Add "internet"
    objOtherTbls.Add "mokaleme"

    DataSource:="internet"

Похожие вопросы