YouTube | Facebook | X(Twitter) | RSS

XML の複製

2016/9/1 (木)

'1. ArcCatalogの検索で指定のフォルダからメタデータを設定したい対象のフィーチャクラスを絞り込み検索
'2. 検索結果をカタログ ツリーで選択し、マクロを実行
 
Private Const XMLFile As String = "D:\metadata.xml"    'インポートするメタデータのフルパス
 
Public Sub CopyMetadataFromXML()
 
    Dim pGxApp As IGxApplication
    Dim pGxSel As IGxSelection
    Dim pGxObjectCont As IGxObjectContainer
    Dim pEnumGxObj As IEnumGxObject
    Dim pGxObj As IGxObject
    Dim pGxObj1 As IGxObject
    Dim pMD As IMetadata
    Dim m_pImportXml As ImportXML
    Dim pImport As IMetadataImport
             
    Set pGxApp = Application
    Set pGxObj = pGxApp.SelectedObject
    If Not TypeOf pGxObj Is ISearchResults Then
        MsgBox "Please select a 検索結果", vbExclamation
        Exit Sub
    Else
        Set pGxObjectCont = pGxObj
        'Check to see if there are children
        Set pEnumGxObj = pGxObjectCont.Children
        If pEnumGxObj Is Nothing Then
            MsgBox "Nothing was found in the  " & pGxObj.FullName & " Folder"
            Exit Sub
        Else
            'For each object that is in the Folder, import the XML document as metadata
            Set pGxObj1 = pEnumGxObj.Next
            Dim intCount As Integer
                Do While Not pGxObj1 Is Nothing
                    Dim strName As String
                    strName = pGxObj1.Name
                     
                    Set pMD = pGxObj1
                    Set m_pImportXml = New ImportXML
                    Set pImport = m_pImportXml
                     
                    'Import a local xml document to metadata
                    pImport.Import XMLFile, pMD
                                         
                    Set pGxObj1 = pEnumGxObj.Next
                    intCount = intCount + 1
                Loop
        End If
    End If
     
    MsgBox "終了しました。"
End Sub
  • この記事を書いた人

羽田 康祐

伊達と酔狂のGISエンジニア。GIS上級技術者、Esri認定インストラクター、CompTIA CTT+ Classroom Trainer、潜水士、PADIダイブマスター、四アマ。WordPress は 2.1 からのユーザーで歴だけは長い。 代表著書『"地図リテラシー入門―地図の正しい読み方・描き方がわかる』 GIS を使った自己紹介はこちら。ESRIジャパン(株)所属、元青山学院大学非常勤講師を兼務。日本地図学会第31期常任委員。発言は個人の見解です。

-プログラミング, ArcGIS
-,