システムwiki

Word-Documentsの内容をアクセスフォームに検索する Windows 10 を組み込んでいますか?

keldsor 受付中 最終更新日:2021-05-10 21:58

私は私のAccess365 DBのユーザーがWindowsから検索メソッドを使用できるようにして、フォルダまたはサブフォルダ内のファイルの内容を検索するためのFraseを与えることができます.

アクセスフォーム内から使用するにはどうすればいいですか?

いくつかのアイデア?

返信リスト(回答:36)

31 #
AlBorge 1

そのEメールはスパマーからのものです...無視してください.

アクセスフォーム内でその機能を得ることができます.ダウンロード可能なアプレットを持っています:

1.Windowsフォルダを選択できます.

2.選択したら、選択したフォルダ内のすべてのファイルをハイパーリンク形式で表示します.

3.検索している機能を検索するために検索テキストボックスを追加しました.Inc ant Functionを使用して、すべてのフォルダファイル名内の文字列のすべてのファイル名を検索できます.

これがあなたのために働くことを願っています!ファイルをダブルクリックするだけで、自動的にポップアップします.

私のonedrivepublicフォルダからコードを使ってファイルをダウンロードすることができます:

応答31# ->にスキップ
32 #
keldsor

Thx-非常に良いアイデアを得ることができるもののようです-必要なものだけ-thxもう一度!

編集:ああ...ファイル名を検索しています....私が探しているのはファイルコンテンツを検索しています-それがWindowsの機能です!

応答32# ->にスキップ
30 #
AlBorge

私のヤフー!メールサーバー私はEメールの内容を見るために検索を取得することができます.これはあなたが望むものです.

Windows 10

私が見ているのは、Windowsがファイル名で検索されます.マイコードはサブフォルダを検索しません.これは私のコードに追加することができますが、私のコードに追加することができますが、(コードを少し変更する必要があります).私はその順序で何かを取り掛けることができました、
しかし、内部の内容を検索するのは別の問題です.

あなたの調査結果がファイルの内容の内側に含まれるWindowsエクスプローラ検索のスクリーンショットを投稿できますか?私はそれをすることができません.

アップデート:

実際にファイル内を検索することができますが、Windowsの索引付け機能を使用する必要があります.これが関与しているものの趣味です-


windows 7にファイルの内容を検索する方法 Windows 7検索の検索内容
  1. コントロールパネルを開きます.
  2. クリックして索引付けオプションを開く.
  3. インデックスオプションwindows 内で、Advancedというボタンをクリックしてください.
  4. ファイルの種類を示すタブをクリックします.
  5. ここでは、内容を検索するすべてのファイルタイプを確認できます.

  6. -

    全品質- lookeen.com/blog... [Windows 10の場合も機能します]

    各文書を各文書を開くことができ、ここで説明されているようにその内容を検索することもできます-

    https://social.msdn.microsoft.com/forums/sqlserver/ja_479f-a24d-f19f6638a6e1/search-file-contents?forum=accessDev.

    (Word.ApplicationがAccess 2007にエラーを出すため、そのコードをweekに侵入する必要があることに注意してください)

    これは非常に遅くて面倒な場合があります...

応答30# ->にスキップ
29 #
keldsor

今私たちは話しています:-)!

私はすでにコンテンツを検索するために設定されています-しかし、それはWindowsの中ですぐに動作します-サブフォルダーも非常に速い!

私はちょうど私がwindowsの検索フィールドに見つけたいフレースを挿入するだけです-

フォーム内で起こった理由は、検索結果に単一のファイルパスを処理し、それらをさまざまなグループに分割してから、これらのグループの関連ファイルをユーザーに配置する必要があります.人だけで
その他イベントのみ、場所のみなど.

起こるために私はあなたがポイント1)で述べたその設定の何もしません.

私は私の形の処理でWindows検索を喪後から理解することはできません.

応答29# ->にスキップ
28 #
keldsor

私は今、すべてのサブフォルダを横断するためのVBAで作成された再帰的な方法を得て、特定のFraseのためにファイルの内容を検索しました!

...しかしOooohhhh、それは時間がかかります...時間がかかりすぎる時間!

Windowsでは、3~5秒で同じ検索を行うことができます.

アクセス形式でそのWindowsメソッドを使用する方法はあります.P>

編集:およびWindows検索方法には、単なる単なる文書の内容を調べることが含まれていますが、あまりにもmsg-とpdf.files!

応答28# ->にスキップ
27 #
keldsor

はい、はい、今、私はちょうどそれの半分を得た!

私はちょうどそこにあるさまざまなソースから混合したばかりです:

シェル「Explorer.exe」&CHR(34)&「検索MS:QUERY=」と「WhatToSearchFor&」&Crumb=場所: "&Wheretosearch&Chr(34)、VBnormalFocus

弦「WhattoSearchfor」と「wheretoseAarch」にいくつかの値を入れると、アクセス形式のテキストボックスにそれらを持っています!

数秒以内に結果があります-1000のファイルの検索...それは非常に速いです!

今...

他の半分は、その同じ形式のリストボックスに「結果を取得」し、エクスプローラwindows を閉じます.

Bjp:VBNORMALFOCUSがVBHIDEになる可能性があるようですが、テストするのは少し難しいです!

これを終えてください...それは私を狂わせる!

編集:何かが解除されたときに何か問題があります...彼らはChr(34)で手入れされなければなりません.

を取りますか?

応答27# ->にスキップ
26 #
keldsor

ここでそれは正しく機能しています:

Dim WhateSearchFor文字列として
wheretosearch
WhatSearchFor= CHR(34)&TXTSearchFor.Value&chr(34)
wheretosearch= environ( "SlægthovedMappe")
シェル "Explorer.exe"&Chr(34)&"Search-MS:query="&"whattosearchfor&"&crumb= location: "&wheretosearch&chr(34)、vbnormalfocus

デンマーク語のversionのフラージ(いくつかの単語)を検索したい場合は、ダブルQoutation Marksを使用する必要があります.このように: "i Vore Liv"というテキストボックスで "vores liv"を参照してください.またはLIVが使用されます.

しかし...

まだ結果をリストボックスに戻す必要があります....どのように?

応答26# ->にスキップ
25 #
AlBorge

こんにちはケルダー:

返事が遅くなって申し訳ありません-私はパナマ(ここに結婚式のための)私の国の外にいます.

私はあなたのコードを試しました、しかしあなたのコードの私のversion:

プライベートサブCTL6_CLICK() whateSearchF.文字列 wheretosearchとして文字列 whateSearchFor= CHR(34)&"VHC"&CHR(34) Call Shell( "c:\windows\explorer.exe" "検索-ms:query="&"&crumb= location:c:\zfilemds\handouts"、vbnormalfocus) 終了サブ

...ファイル内の内容ではなく、ファイル名の検索語を作成します.

あなたの国に固有のwheretosearch= environ( "slɛgthovedmappe")と関係があるかもしれません. このサイトで 彼らは英語/ドイツのバリエーションについて議論します.ドイツ語のwindows の検索はこれが何かのように見えます:

search-ms:displayName= suchergebnisse%20in%20 "Sys%20(C%3a)"
したがって、Windowsエクスプローラの取得方法各文書で探しているフレーズを見つけることができる場合は、おそらくそこからそれを取り、それをハイパーリンクtableに入れることを試みることができます.

応答25# ->にスキップ
23 #
keldsor

検索結果が正しいかどうかを確認するのは非常に難しい場合がありますが、ファイル名にない単語またはフレーズを見つけて、その単語またはフレーズをWhatToSearchForとして使用してみてください.-次に、Wordまたはが存在するファイルのファイル名を取得します
fraseは、これらのファイルのコンテンツの一部です.

*より多くの文字を置き換えることもできます!

これはデンマーク語versionに固有のものではないと思います-探している単語またはフレーズを入力するためのテキストボックスと検索を開始するためのボタンを備えたAccessフォームを作成しようとしました-そしてそれはうまく機能します.

検索ボタンの「背後」にあるコードは次のとおりです.

Dim WhatToSearchFor As String
Dim WhereToSearch As String
WhatToSearchFor=Chr(34)&txtSearchFor.Value&Chr(34)
WhereToSearch=Environ( "SlægtHovedmappe")
シェル "エクスプローラー.exe "&Chr(34)&" search-ms:query="&WhatToSearchFor&"&crumb=location: "&WhereToSearch&Chr(34)、vbNormalFocus

私のEnviron( "SlægtHovedmappe")を、検索可能なコンテンツを含むいくつかのファイルを含むいくつかのサブフォルダーを含むフォルダーメインフォルダーへのパスの文字列に置き換えるだけです.

メインフォルダとサブフォルダをトラバースし、ファイル名と、テキストボックスに入力した単語またはフレーズがこれらのファイルのコンテンツの一部であるパスを表示します!

問題は、検索結果をテキストボックスと同じ形式のリストボックスに戻すことです.ファイルへのPATHを分析して、特定のパスごとに異なる情報をユーザーに表示する必要があるためです.

「メインフォルダ」の10個のサブフォルダに1000個のファイルがあり、このShell-search-methodは、VBAコーディングで実行できる方法よりも10~500倍高速です.

フォームリストボックスに挿入してからエクスプローラーwindows (非表示または表示)を閉じるためのある種のパイピングまたはコレクションは非常に便利です...実際には完璧なソリューションです!

編集:そのシェルコマンドに関するドキュメントを見つけるのは非常に難しいと思います-これらの不可解な文字列の説明が必要です!

応答23# ->にスキップ
24 #
AlBorge

hmmm...Windowsエクスプローラを使用してフレーズを検索すると、ファイル内のファイル内では検索されません.

このフォルダでは、「病院」の「病院」を持つ配布資料が多数あります(実際のファイル名にはありません)...これらは表示されませんでした.

応答24# ->にスキップ
22 #
keldsor

たぶん、このスレッドの前半でセットアップ手順を実行する必要がありました-私はしませんでした、私は確かにコンテンツを検索し、名前の付いたファイルを表示します-ヘッダー/フッターと名前とテキストフィールドでさえ検索しますExcelグラフィックシェイプで!

このコミュニティの一部は、これについて何かを知っていて、いくつかのドキュメントへのリンクを提供する必要があります-今すぐ来てください!

応答22# ->にスキップ
21 #
S.A.Mar
msaccessからコマンドプロンプトでコマンドを入力して実行する方法があるかどうか知っていますか
応答21# ->にスキップ
20 #
keldsor

?

以前に表示されているコードで何をしていることではありません:

Dim WhateSearchFor文字列として
wheretosearch
WhatSearchFor= CHR(34)&TXTSearchFor.Value&chr(34)
wheretosearch= environ( "SlægthovedMappe")
シェル "Explorer.exe"&Chr(34)&"Search-MS:query="&"whattosearchfor&"&crumb= location: "&wheretosearch&chr(34)、vbnormalfocus

...またはそうでなければ私はあなたが何を意味するものを手に入れません. -)

応答20# ->にスキップ
36 #
S.A.Mar

たぶん、あなたがしていることは私の頭の上に正直になることですが、あなたが使おうとしている方法で運を持っていないようです.次のような価値がある?

2つのWord文書を作成した場合TestFile1とTestFile2は両方とも "cat"

という言葉を紹介します.

その後、コマンドプロンプトで次のものを追加して実行すると、テキストファイルを含むテキストファイル(アクセスにインポートすることができます)を生成します."cat"

/i "cat" "c:\私のデータファイル\*.docx">>testfile.txt

使用できるさまざまなスイッチがあり、実行する文字列を構築する必要があります.しかし、それは機能する可能性があるオプションですか?

応答36# ->にスキップ
15 #
keldsor

DOSコマンドFINDSTRには、はるかに多くの可能性があるようです...サブフォルダーを処理できますが、FINDは処理できません!

編集:ああ、FindStrはDOCXファイルを処理できません、arghhhhh!

再びゼロに戻る!

応答15# ->にスキップ
9 #
S.A.Mar

もう1つのオプションはSFK(Swissファイルナイフ)です.これはコマンドプロンプトと似ていますが、さらに多くのオプション/スイッチがあり、.docx

内の絶対に検索します.

私は3つのワードファイル(.docx)を持っています.testFile1.docxには鈍いという言葉が含まれていません.subfolderc:\test\testsubでのフォルダC:/testおよびtestFileSub.docxのtestFile2.docxは、両方ともBluntを含みます."Blunt"を含む両方のファイルが示されているようにリストされていました.

これはテキストファイルにも出力できます.

sfk ofindc:\test "/blunt/" + tofile test.txtテキストファイルに出力を与える

応答9# ->にスキップ
11 #
keldsor

THX再びダウンロードしてテストします.

検索結果からファイルを駆除するためのサブを見つけて、それをコレクションに入れることができました-

パスを取得する エクスプローラwindows からコレクションへのファイル名?

応答11# ->にスキップ
8 #
S.A.Mar

知っているように、fromコマンドプロンプトからの検索とfindstrは.docxファイルを検索しません.SFKは検索.docm

を検索します

コマンドプロンプト検索.MDBと.ACCDBが検索されますが、SFKはそうしません(方法が見つかりませんでした)

どちらかの方法で.pdfのテキストを検索できませんでした

どのファイルの広がりを検索する必要がありますか?

あなたがこれを行うためのコードを探していることを知っています、そしてそれはコードが見つからないならば、これら2つの組み合わせかもしれません.

応答8# ->にスキップ
6 #
keldsor
DOC、DOCX、MSG、PDF、XLS、XLSM、TXTファイルで検索する必要があります
応答15# ->にスキップ
12 #
AlBorge

OK-私のラップトップが持っていたという問題です.コンテンツ検索のために設定されていませんでした:

まだ検索されませんでした...

今すぐコーディングに戻る...

1)最初に投稿したアプレットを更新するこのコードロジックを組み込んだサブフォルダーを含むもの-

'sub showfolderlist(Folderspec) xx= "c:\" dim fs、f、f1、s、sf set fs= createObject( "scripting.filesystemobject") set f= fs.getFolder(xx) セットSF= F.SUBFOLDERS SFの各F1に s= s&f1.name s= s&vbcrlf 次の msgbox s

(今は#2を書いたが、コードがすべてのファイルを1フォルダに配置することによって最終的に機能する場合は必要ないかもしれません)

2)すべてのファイルを選択したフォルダに配置するための検索と移動コマンドを含めるようにシェルルーチンを更新します.シェルコマンドは私が使うでしょう:

stackoverflow.com/questions/33639849...

shell( "c:\windows\explorer.exe" "search-ms:displayName=検索%20results&crumb= system.generic.string%3a~%3D"&"%20分%3A%3DFOLDER&CRUMB=場所: "&location、vbnormalfocus)

3)投稿したオリジナルのアプレットがハイパーリンク列にリストできます.

もちろん、Windowsコンピュータが一般設定領域とWindowsエクスプローラの両方で正しく設定されていることを確認する必要があります.

私たちはほとんどそこにいると思います...

応答12# ->にスキップ
10 #
keldsor

結局、この方法は遅すぎると思います-メインフォルダとすべてのサブフォルダをトラバースするVBAコード化ソリューションをすでに持っていますが、それは遅くなります-それが私が何か他のものを使用することを考え始めた理由です.

しかし、他に方法はないかもしれません;-((

応答10# ->にスキップ
7 #
AlBorge

あなたは非ベリーバーです!今夜はパナマの結婚式からやや漆喰に帰宅しました...しかし、それができることを示すためにこれに取り組むことができました.

これまでは、私が来たまでの距離です:

1)最初に次の通話を使用して検索を行いました:

Call Shell( "explorer.exe"&chr(34)&"search-ms:query= calorie&crumb=場所:c:\zfilemds\handouts"&chr(34)、vbnormalfocus)

ここでは、フォルダの "c:\zfilemds\handouts"の "Calorie"を検索しました.次の出力を得ました-

ファイル名に "Calorie"がどのようになっていたか、他の人はテキストコンテンツの中でそれを持っていました.私が以前にオンになったインデックス変更の変化は変更されません!

2)(これは手動部分です)私はすべてのファイル(Ctrl + A)を選択してからファイルをコピーした(Mouse + Rをクリックしてください).その後、ファイルを無関係のフォルダに貼り付けました.-「C\ZFILEMDS\EKG2」-

3)EKG2フォルダを指す配布済みハイパーリンクフォームを実行し、Bingo-

私が今する必要があるのは、コピー/貼り付けルーチンの少なくともいくつかを自動化することです(これは不可能かもしれません).これは本当にきちんとしたファイル検索方法です!

私が見つけた1つの興味深いことはあなたがあなたの検索を節約できるということです:

と「C:\Users\[あなたのユーザー名\searches "の場所:で見つけることができます.

問題は、ファイルには保存可能な情報が含まれていないことです. フローティングインデックスファイルリストを再作成するだけです.だからそれは行き止まりです...

応答7# ->にスキップ
5 #
AlBorge

次のことはレジストリハックを含めることができ、それによって我々は完全にCtrl + Aを排除し、Ctrl + Rを含む全リストを選択するだけで、デフォルトフォルダにコピーするだけで:

Windows Vistaのクリップボードにファイルのリストをコピーするためのコンテキストメニュー項目を作成する

VBA Call Shellを使用することについての「ネットについて」全ての参照を使いました.

しかし、シェルルーチンは単にイベントにコマンドライン文字列を適用しているので、それが勉強する必要がある場所です.次のURLは始める場所です.

HowToGeek

明日このリストを見て、CMDルーチンをシェルに適用できる方法を確認します...

私たちはそこにいます. 私たちは、箱の外で考える必要があります.

応答5# ->にスキップ
3 #
AlBorge

3つのSendKeysイベントを使用して、上記のコードの「手動」部分を取り除くことを考えましたが、残念ながら、MicrosoftはWindows 10を使用して、SendKeysステートメントを非推奨にしたため、機能しません.もう.Ctrl + Aは、Windows 8以下(つまり、
SendKeys "^ a")ですが、残念ながら、今はそうではありません.

検索行で回避策も見つかりませんでした:

Call Shell( "explorer.exe"&Chr(34)& "search-ms:query=calorie&crumb=location:c:\zfilemds\handouts"&Chr(34)、vbNormalFocus)

「コピー」または「検索」行を追加したかったのですが、すべての試みが失敗しました.Shellコマンドの機能は、通常1つのプロセスにいくらか制限されており、Shellイベントを連続して呼び出すことによって個別のコマンドを実行することはできません.
通常、多くの処理を行う場合は、複数のコマンドをバッチファイルまたはスクリプトとして実行する必要があります.

Keldsor、適切な回避策(コレクションの自動化)を思いついた場合は、作業をフォローアップしてください.

応答3# ->にスキップ
2 #
keldsor

私は電話をかけるシェルコマンドのための良い解決策を持っています私はそれ以上のものを必要としません.

問題は、Shell-Explorerwindows からコレクションに検索結果を取得することです.実行する方法を実行する方法:

パスを取得する エクスプローラwindows からコレクションへのファイル名?

あなたの時間のためのthxとこの問題では余裕があります!

応答3# ->にスキップ
4 #
S.A.Mar
こんにちはアル、エクスプローラーからPDF内のテキストを検索できましたか...私はそれであまり運がありませんでした
応答4# ->にスキップ
1 #
keldsor

私は私にはうまく機能します-私はそのシェルコマンドがアクセス形式からアクティブ化されたサブフォルダ内のPDFファイルでコンテンツを犯すことができます:

retval= shell( "explorer.exe"&chr(34)&"search-ms:query="&"whattosearchfor&"&crumb= location: "&wheretosearch&chr(34)、vbnormalfocus)

私の検索語はWhatToSearchForの一部です

と私は "Mammografi"という言葉が3つのファイルすべてのファイルの内容にあることを確認しました!

応答15# ->にスキップ
13 #
S.A.Mar
はい、私は今も試してみる価値があることを発見しましたが、他に何もなければ、Alがもう少し近づくために何かを引き起こした可能性があります、つまりコンテンツ検索
応答36# ->にスキップ
19 #
keldsor 1

私の最初の問題は、2つの主要なステップで構成されています.

1)特定の単語やフレーズを含むファイルを見つける方法-私が示したコードで解決した-エクスプローラー/シェル検索を開始するVBAコードで、うまく機能します!

2)検索結果(エクスプローラwindows に表示されるファイルパス/名前)を「何らかの方法で」アクセスフォームのリストボックスに戻したいWordまたはfraseを入力しましたが、問題のその部分はまだ解決されていません...

ユーザーがリストボックス内でダブルクリックしている各ファイル名のPATHに応じて、ユーザーにいくつかの情報を提示する必要があるため、リストボックスが必要です.パスが異なれば、ユーザーに異なる情報が表示されます.

しかし、VBAでそのテキストファイル内のファイルのパス/名前を読み取り、リストボックスに表示するだけでよいことがわかりました.

数十のサブフォルダーに数千の異なるファイル(docx、PDF、MSG Excel...)があるため、速度を確認してみます.

アイデアのThx-試してみます!

応答19# ->にスキップ
34 #
AlBorge

サブフォームのレコードを表示するためのハイパーリンクフォームを修正できますが、MineのようなWindowsエクスプローラのversionが直接レコード自体を直接検索できない場合は、コードで実行できない方法がありません.

他の誰かが彼らのWindowsエクスプローラでそれを試してもいいですか?

私のラップトップにwindows 10home edition...

応答36# ->にスキップ
35 #
AlBorge

マーシャル:

Windowsエクスプローラを使用しているかどうかを確認できますファイル内のアイテムを検索できますか?

私はKeldsorのコードを機能させましたが、ファイル名のアイテムを検索するだけです-私は私のラップトップ上で同じ方法で私のWindows 10Explorerの検索機能が同じように機能したことに気付いた.

問題に関する私の勉強に見いだされるような国の問題になる可能性があります.投稿の作者は米国とドイツの検索の特異性を対比されました.

Al

応答35# ->にスキップ
18 #
S.A.Mar

Windowsエクスプローラを使用する場合は、ファイル内のアイテムを検索できますか?....あなたが私が私に「猫」という言葉を試してみてください.私はまたPDFでそれを試した、これ
その画像に従って、テキストファイル(メモ帳)のファイル名をリストしました.

最初は、extention i.e.c:\myデータファイル\**.
だから私はそれがすべてのファイルの種類ではないにしても、それが最も内近で検索されていると思います.

私はまた、検索ディレクトリにあるアクセスデータベース内の特定のクエリ(qryemployee)についても同じ検索を行いました.驚くべきことに、ファイルをリストしていますが、その名前を含むクエリもリストされています


-C:\My Data Files\MyDatabase.mdb

Qryemployee

qryemplopyeleRoanStatementExport

ファイル名がテキストファイルにリストされている場合は、必要に応じてアクセスしてリストボックスにインポートすることができます.

応答18# ->にスキップ
16 #
AlBorge

ok-問題は、私のWindowsラップトップにコンテンツ検索が必要なファイルの種類を索引付けしていないことです.それはここでレビューされています:

Windows検索を使用してファイル内のテキストを検索する方法

この明日は、これを終了することができるかどうか、つまり文字列行をハイパーリンク形式にキャプチャできるかどうかを確認します.

応答16# ->にスキップ
17 #
S.A.Mar
ここで検索するファイルの種類はわかりませんが、かなりの範囲を検索しているようです.とにかく、それが役立つかもしれないアイデアだといいのですが
応答17# ->にスキップ
14 #
keldsor

奇妙な検索結果が表示されることがありますが、よく見ると奇妙さを説明できることがよくあります;-)しかし...

フレースを検索しているようです.「このフレースを検索します」のように二重引用符で囲んでいますが、フレースを分割して個々の単語も検索しているようです.詳細な分析が必要です.

33 #
keldsor

?

何?

私の質問への返信があることを私に助言しました-

"8 8-6

© システムwiki All Rights Reserved.