Excel/VBA

TOP

他のアプリケーションのファイルを開く方法

自作関数を作成して、エクセルで使用する方法の説明画像です

エクセルを開く方法

エクセルを開くにはWorkbooks.Open("ファイルパス")を使用して開きます。
下記はダイアログボックスからファイルを開く方法です。


サンプルコード


Sub エクセルを開く()

    Dim FilePath As String
    Dim OpenWb As Workbook
    
    'ダイアログボックスを表示してファイルを選択
    FilePath = Application.GetOpenFilename("Excelファイル(*.xls*),*.xls*", , "ファイルを選択")
    
    'キャンセルが押された場合は処理を中断
    If FilePath = "False" Then
        Exit Sub
    End If
    
    'ファイルを開く
    Set OpenWb = Workbooks.Open(FilePath)
    
    
    With OpenWb.Worksheets(1)
        
        '開いたファイルに転記処理などをする場合はここに.Range("A1").Value = "Hellow Word"などを記述する
        '今回の例では開いたファイルの1シート目に転記作業を行う
        
    End With
    
    'リソースの解放
    Set OpenWb = Nothing
    
End Sub
        

エクセルを含め、様々なアプリケーションのファイルを開きたい場合

様々なファイルを開くには『"Shell.Application"』のオブジェクトを使用します。
Shell.Applicationを使用するとエクセルを含め様々なファイルを開くことができます。

サンプルコード


Sub 様々なファイルを開く()

    Dim FilePath As String
    Dim object As Object
    
    'ダイアログボックスを表示してファイルを選択
    FilePath = Application.GetOpenFilename("ファイル(*.*),*.*", , "ファイルを選択")
    
    'キャンセルが押された場合は処理を中断
    If FilePath = "False" Then
        Exit Sub
    End If
    
    'Shell.Applicationオブジェクトを生成する
    Set object = CreateObject("Shell.Application")
    
    'Shell.Applicationオブジェクトを使用してダイアログボックスで選択されたファイルを開く
    object.ShellExecute FilePath
    
    'リソースの開放
    Set object = Nothing
    
End Sub