-PR-
解決
済み

Excelから、ファイルの検索機能を使いたい

  • 困ってます
  • 質問No.35502
  • 閲覧数211
  • ありがとう数3
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 87% (47/54)

 通常、Windowsキー+Fで表示されるファイルの検索機能ですが、これをExcelのマクロから呼び出す方法があれば教えてください。

 現在Excelで簡易なデータベースを構築してまして、このExcelファイルから、MOドライブに格納されているワープロファイル(一太郎)を呼び出す機能を備えたいと思っているのです。

 宜しくお願いします
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.3
レベル11

ベストアンサー率 49% (139/279)

こんな感じです。

Option Explicit

Private Declare Function ShellExecute Lib _
"Shell32.dll" Alias "ShellExecuteA" _
(ByVal hwnd As Long, ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, _
ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Private Const SW_SHOWNORMAL = 1
Private Const SW_SHOWMINIMIZED = 2
Private Const SW_SHOWMAXIMIZED = 3
Private Const SW_SHOW = 5
Private Const SW_MINIMIZE = 6
Private Const SW_SHOWMINNOACTIVE = 7
Private Const SW_SHOWNA = 8
Private Const SW_RESTORE = 9
Private Const SW_SHOWDEFAULT = 10

Sub 検索ダイアログを出す()
ShellExecute 0, "find", "C:\", vbNullString, vbNullString, SW_SHOWNORMAL
End Sub
お礼コメント
webdiver

お礼率 87% (47/54)

 解答ありがとうございました。これ、私の質問趣旨にドンピシャでした。コピーペーストのみで実現出来たので大変助かりました。
 ただ、私の様な初心者ではこのソースの内容はチンプンカンプンでして、検索の「名前」欄に情報を組み込んだ状態で表示させたり、更には一歩進んだ状態で検索結果の表示を行った後の状態で表示させたいとも考えたのですが、何処をどのように触れば良いのか・・・(^^;)。
 難しいですね、プログラムって。
投稿日時 - 2001-02-03 12:45:53
-PR-
-PR-

その他の回答 (全2件)

  • 回答No.1
レベル13

ベストアンサー率 46% (643/1383)

マクロを使ってシート内の検索を行う、ということでいいのでしょうか。 簡単なのは、「マクロの記録」を使うことでしょうか。 [ツール]-[マクロ]-[新しいマクロの記録] で記録を開始します。 で、実際にExcel上で検索を実行しまして、[ツール]-[記録の終了]で終了します。 あとは作成したマクロを適宜編集して、使いやすいように改良していけばいいでしょう。 ヘルプの[マクロを記録する ...続きを読む
マクロを使ってシート内の検索を行う、ということでいいのでしょうか。

簡単なのは、「マクロの記録」を使うことでしょうか。
[ツール]-[マクロ]-[新しいマクロの記録]
で記録を開始します。
で、実際にExcel上で検索を実行しまして、[ツール]-[記録の終了]で終了します。

あとは作成したマクロを適宜編集して、使いやすいように改良していけばいいでしょう。

ヘルプの[マクロを記録する]とか[Find メソッド]とかが役に立つと思います。

以下、コード例です。
Sub Macro1()
  On Error Resume Next
  
  Cells.Find(What:="ABC").Activate
  If Err = 0 Then
    MsgBox "'ABC'を発見しました。"
  Else
    MsgBox "'ABC'を発見できませんでした。"
    Err.Clear
  End If
End Sub
お礼コメント
webdiver

お礼率 87% (47/54)

 早速の解答、ありがとうございました。
私の文章が悪かったのですが、シート外のファイル検索が
今回の質問趣旨でした。
 しかし、シート内検索も充分に必要な機能かと思いますので、実践して自分のモノにしたいと思います。
投稿日時 - 2001-02-03 12:37:41


  • 回答No.2
レベル13

ベストアンサー率 68% (791/1163)

ファイルを検索し開きたいと解釈しましたが、windowsの検索ダイアログを表示する方法はすぐにはわかりませんので、Excelだけでできるよう代替案を考えてみました。 方法.1 Application.GetOpenFileName でファイル名を指定してShell関数で呼び出す。(人間が探します) 方法2. Dir関数で検索し見つかればShell関数で呼び出す。(フルパス指定になります) 方 ...続きを読む
ファイルを検索し開きたいと解釈しましたが、windowsの検索ダイアログを表示する方法はすぐにはわかりませんので、Excelだけでできるよう代替案を考えてみました。

方法.1 Application.GetOpenFileName でファイル名を指定してShell関数で呼び出す。(人間が探します)
方法2. Dir関数で検索し見つかればShell関数で呼び出す。(フルパス指定になります)
方法3. Application.FileSearchで探し、そのうち指定のファイルを実行させる。(ワイルドカードで検索すると複数見つかる場合がある)
質問の趣旨にあっていないかもしれませんが参考にして下さい。
お礼コメント
webdiver

お礼率 87% (47/54)

 解答ありがとうございました。教えて頂いた関数ですが、自分にとって使用経験の無い関数が多いので、直ぐに実践する事は難しいのですが、必ず試してみたいと思います。
投稿日時 - 2001-02-03 12:40:32
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ