FAQ
指定の場所に応じて [シェープファイルの新規作成]、または [フィーチャクラスの新規作成] ダイアログ ボックスを開く方法

ナレッジ番号:5524 | 登録日:2023/07/27 | 更新日:2024/11/21

【概要】
VBA プログラミングにより、指定の場所に応じて [シェープファイルの新規作成]、または [フィーチャクラスの新規作成] ダイアログ ボックスを開く方法について解説しています。このコードは ArcCatalog でのボタン クリックにより実行されます。

選択された場所がフォルダの場合、[シェープファイルの新規作成] ダイアログボックスを開き、選択された場所がジオデータベースまたはフィーチャ データセットの場合は [フィーチャクラスの新規作成] ダイアログボックスを開きます。


【手順】
  1. ArcCatalog を起動します。

  2. 新規 UIButtonControl を作成します。

  3. ※ UIButtonControl が「UIButtonControl1」という名前ですでに存在していて、
      その UIButtonControl の名前を変更しなければならない場合、コントロール ボタンを使用する前に
      コード内の UIButtonControl 名も適宜変更しておく必要があります。
            
  4. Visual Basic Editor を開きます。

  5. プロジェクト エクスプローラ ウィンドウで、「Normal(Normal.gxt)」を展開し、 ArcCatalog Objects > ThisDocument を選択します。右クリックし、[コードの表示] を選択します。
           
  6. 次のコードをコード モジュールにコピー&ペーストします。

    
    
    
    ' メモ:
    ' 選択されたアイテムに応じて、[シェープファイルの新規作成] または [フィーチャクラスの新規作成] ダイアログボックスを開きます。
    ' フォルダが選択された場合は、[シェープファイルの新規作成]、ジオデータベース(SDE、パーソナル)またはフィーチャ データセットの
    ' 場合は [フィーチャクラスの新規作成] ダイアログボックスを開きます。
    
    Private Sub UIButtonControl1_Click()
    
        Dim pGxApp As IGxApplication
        Set pGxApp = Application
    
        Dim pSelObj As IGxObject
        Set pSelObj = pGxApp.SelectedObject
        Debug.Print pSelObj.Category
    
        Dim location As String
        location = pSelObj.FullName
        Debug.Print location
    
        Dim pCmdItem As ICommandItem
    
        If pSelObj.Category = "パーソナル ジオデータベース" _
        Or pSelObj.Category = "パーソナル ジオデータベース フィーチャ データセット" _
        Or pSelObj.Category = "空間データベース コネクション" _
        Or pSelObj.Category = "SDE フィーチャ データセット" Then
            Set pCmdItem = Application.Document.CommandBars.Find(ArcID.Gx_NewFeatureClassMenu)
            pCmdItem.Execute
        ElseIf pSelObj.Category = "フォルダ" _
        Or pSelObj.Category = "フォルダ接続" Then
            Set pCmdItem = Application.Document.CommandBars.Find(ArcID.Gx_NewShapefileMenu)
            pCmdItem.Execute
        Else
            Exit Sub
        End If
    
    End Sub
            
    
    
    
  7. Visual Basic Editor を閉じます。

  8. 新規ボタンをクリックし、コードを実行します。


■関連情報

メタデータ

機能

種類

製品