Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


12844 / 13646 ツリー ←次へ | 前へ→

【8353】FileDialogについて ふちこま 03/10/10(金) 9:58 質問
【8355】Re:FileDialogについて INA 03/10/10(金) 13:03 回答
【8357】Re:FileDialogについて ふちこま 03/10/10(金) 14:11 発言
【8358】Re:FileDialogについて INA 03/10/10(金) 14:19 回答
【8359】Re:FileDialogについて ふちこま 03/10/10(金) 14:29 発言
【8360】Re:FileDialogについて INA 03/10/10(金) 14:49 回答
【8363】Re:FileDialogについて こうちゃん 03/10/10(金) 15:39 発言
【8366】Re:FileDialogについて ふちこま 03/10/10(金) 17:56 お礼

【8353】FileDialogについて
質問  ふちこま  - 03/10/10(金) 9:58 -

引用なし
パスワード
   はじめまして。
今回初めて質問をさせていただきます。

VBAで組み込みの「ファイルを開く」ダイアログボックスを
使用したいのですが、下記のようにコードを書いてみました。

-------------------------------------------------------------------
Dim OpenFileDialog As FileDialog
Dim blnRef As Boolean

Set OpenFileDialog = Application.FileDialog(msoFileDialogOpen)

With OpenFileDialog
  .AllowMultiSelect = False
  .ButtonName = "指定する"
  .Filters.Clear
  .Filters.Add "Tar ファイル", "*.gz; *.tar"
  .Title = "情報アーカイブの指定"
  .Show
End With
-------------------------------------------------------------------

使用できることはできるのですが、「一つ上のフォルダへ移動」ボタンや
左側にあるショートカットタブが使用できません。
表示されているのにクリックしても反応しないのです。

自分なりに調べたのですが、VBA初心者でどうにも分かりません。
どうすれば使用できるの教えてください。

環境は、
[Windows XP Pro SP1]
[IE6 SP1      ]
[MS OFFICE 2002 SP2]
です。

【8355】Re:FileDialogについて
回答  INA  - 03/10/10(金) 13:03 -

引用なし
パスワード
   >VBAで組み込みの「ファイルを開く」ダイアログボックスを
>使用したいのですが、

Application.Dialogs(xlDialogOpen).Show
または
Application.GetOpenFilename("すべてのファイル(*.*),*.*")
が、使えるかと思います。

【8357】Re:FileDialogについて
発言  ふちこま  - 03/10/10(金) 14:11 -

引用なし
パスワード
   ▼INA さん:
>>VBAで組み込みの「ファイルを開く」ダイアログボックスを
>>使用したいのですが、
>
>Application.Dialogs(xlDialogOpen).Show
>または
>Application.GetOpenFilename("すべてのファイル(*.*),*.*")
>が、使えるかと思います。

お返事ありがとうございます。

それはすでに試したのですが、上手くいきませんでした。。。

何故なんでしょう?

【8358】Re:FileDialogについて
回答  INA  - 03/10/10(金) 14:19 -

引用なし
パスワード
   >それはすでに試したのですが、上手くいきませんでした。。。
どのように上手くいかなかったのか説明して頂けませんか?

【8359】Re:FileDialogについて
発言  ふちこま  - 03/10/10(金) 14:29 -

引用なし
パスワード
   ▼INA さん:
>>それはすでに試したのですが、上手くいきませんでした。。。
>どのように上手くいかなかったのか説明して頂けませんか?

えー、同じ状況です。
「フォルダを開く」ダイアログボックスは使えますし、
ファイルリストボックス内のファイルは選択できますし、
コンボボックスも触れるのですが、

左にあるショートカット(「履歴」や「デスクトップ」など)の
タブや、「一つ上のフォルダへ移動」などが使えません。。。

【8360】Re:FileDialogについて
回答  INA  - 03/10/10(金) 14:49 -

引用なし
パスワード
   excel2000ですが、問題なく使用できます。
新規ブックで試して、さらに他のパソコンでも試してみて下さい。
そのパソコンの不具合かもしれません。
その際はExcelの修復等が必要になると思います。

【8363】Re:FileDialogについて
発言  こうちゃん E-MAIL  - 03/10/10(金) 15:39 -

引用なし
パスワード
   横レス失礼します。
INAさんに1票です。
当方で元のコードおよびINAさんのコードともに不都合なく動いています。

Excel2002です。
(OS Win2K、WinXP Proで実行)

【8366】Re:FileDialogについて
お礼  ふちこま  - 03/10/10(金) 17:56 -

引用なし
パスワード
   こうちゃん さん、INA さん

どうもお騒がせしました。
下記の様にコードを追加したら、いつの間にか使えるようになってました。

--------------------------------------------------------------------------
Dim OpenFileDialog As FileDialog
Dim strFilePath As String

Set OpenFileDialog = Application.FileDialog(msoFileDialogOpen)

With OpenFileDialog

  .AllowMultiSelect = False
  .ButtonName = "指定する"
  .Filters.Clear
  .Filters.Add "Tar ファイル", "*.gz; *.tar"
  .Title = "情報アーカイブの指定"
  
  If .Show = -1 Then
    
    strFilePath = .SelectedItems.Item(1)
    txtFilePath = strFilePath
  
  'ユーザーが [キャンセル] をクリックした場合
  Else
  End If

End With
--------------------------------------------------------------------------

「.show」の返り値を受けていなかったことが原因だったんでしょうか?

とにかく解決致しましたので、
このまま続けようと思います。

ありがとうございました。

12844 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free