2017-04-25 12 views
1

VBAを使用してExcelファイルのフォルダにExcelファイルを開こうとしています。エンドユーザーを直接フォルダに連れて行き、ダイアログボックスからファイルを選択できるようにコードを指示します。しかし、ダイアログボックスからファイルを選択してもファイルを開くことができません。Excelファイルを開くためのVBA

私の問題点は、ファイルを選択した後にファイルを開くコマンドが欠けていることです。ここで

thisYear = Year(Date) 


'change the display name of the open file dialog 
    Application.FileDialog(msoFileDialogOpen).Title = _ 
    "Select Input Report" 

'Remove all other filters 
Application.FileDialog(msoFileDialogOpen).Filters.Clear 

'Add a custom filter 
Call Application.FileDialog(msoFileDialogOpen).Filters.Add(_ 
    "Excel Files Only", "*.xls*") 

    'Select the start folder 
    Application.FileDialog(msoFileDialogOpen _ 
    ).InitialFileName = "\\driveA\Reports\" & thisYear & "" 

は親切に自分の考えを共有してください、私のコードです。ありがとう。

+2

[This](https://msdn.microsoft.com/en-us/library/office/ff836226.aspx)が起動します – Kyle

+0

@Kyle私はダイアログボックスからファイルを選択できますが、それでもファイルは開かれません。私は、ダイアログボックスから選択しているファイルを開く別のコマンドまたはコード行があるのだろうかと思います。 – Sid29

+0

リンクを読んで、関連する例を見ましたか?これは、選択したファイルのパスを抽出する方法を示しています。次に、そのパスで 'Workbooks.Open()'を使うだけです。 – Kyle

答えて

1

ファイルを1つだけ選択できるとします(つまり、AllowMultiSelect = False)。

Dim file As String 
Dim myWbk As Workbook  

file = Application.FileDialog(msoFileDialogOpen).SelectedItems(1) 

Set myWbk = Workbooks.Open(file) 

最初の行が選択したファイルのパスを取得し、2行目が開きます。これをコードの最後に追加します。

+0

はい、ありがとう@Masoud。私は1つのファイルだけを開くようにしていました。 – Sid29

関連する問題