No.3ベストアンサー
- 回答日時:
前回の処理内容のいくつか単語を検索すればまぁすぐだと思いますが…
くやしいと思う程ならばもう少し自主的に検索をお勧めします。
まぁでも回答します。
FileSystemObject
http://officetanaka.net/excel/vba/filesystemobje …
前回の処理はFileSystemObjectを使用しています。
クラスからオブジェクト作成インスタンス化して実行と言う意味がわからなければもしかしたらサイトを見てもわからないかもしれませんが。
あと前回の処理ももう少し噛み砕いておきます。
'ファイルパスを定義します
Path = "C:\Users\takashi sato\Desktop"
'検索対象文字列を定義します
fin = "STTT"
'オブジェクトを定義し、FileSystemObjectオブジェクトを作成します。
Dim myfso As Object
Set myfso = CreateObject("Scripting.FileSystemObject")
Set gf = myfso.GetFolder(Path)
'指定フォルダにあるファイルの分だけforで回しファイル名と\マークで結合します。
For Each fl In gf.Files: fn = fn & fl.Name & "\": Next
'末尾につく\マークを除外し\マークから配列化させます
fn = Split(Left(fn, Len(fn) - 1), "\")
'エラーがあった場合処理をスキップする宣言
'テキスト形式で開けないまたは0KBのファイルはエラーが出るため。
On Error Resume Next
'もしもほかのファイルが混じる場合likeを使ってください。
'ファイル名 like "*.txt"などでよいでしょう。
For i = 0 To UBound(fn)
Set otf = myfso.OpenTextFile(Path & fn(i))
'readallを使いファイルを開き内容を変数に格納します
datas = otf.readall
'開いたデータに検索対象文字列があるか調べますある場合は\マークで結合していきます。
If InStr(datas, fin) > 0 Then filelist = filelist & fn(i) & "\"
'開いたら閉じる(目には見えませんがファイルは開きっぱなしにしない事)
otf.Close
Next
'末尾につく\マークを除外します
filelist = Left(filelist, Len(filelist) - 1)
'最後に内容を表示します。
MsgBox Replace(filelist, "\", vbCrLf)
以上
さらに補足・修正が欲しい場合言ってください。
No.2
- 回答日時:
回答です
Sub checkfiles()
Path = "C:\Users\takashi sato\Desktop"
fin = "STTT"
Dim myfso As Object
Set myfso = CreateObject("Scripting.FileSystemObject")
Set gf = myfso.GetFolder(Path)
For Each fl In gf.Files: fn = fn & fl.Name & "\": Next
fn = Split(Left(fn, Len(fn) - 1), "\")
On Error Resume Next
For i = 0 To UBound(fn)
Set otf = myfso.OpenTextFile(Path & fn(i))
datas = otf.readall
If InStr(datas, fin) > 0 Then filelist = filelist & fn(i) & "\"
otf.Close
Next
filelist = Left(filelist, Len(filelist) - 1)
MsgBox Replace(filelist, "\", vbCrLf)
End Sub
「C:\Users\takashi sato\Desktop」に任意の名前のテキストファイル”のみ”を複数置き実行すれば「STTT」の文字が書かれいてるテキストファイル名だけ表示します。量が多い場合msgboxでは完全には確認できませんが変数にはちゃんと格納されているので大丈夫です。
また上記では最低限の処理しかしていません。指定ディレクトリにあるファイルすべてをテキストとして開こうとするため予期しないファイルを開いたりしますので注意してください。
処理違いや補足・修正が欲しい場合言ってください。
argumentさまありがとうございます。
早速試してみますが、自分が理解できていないプログラムを使用するのはやはり悔しいので、いただいたプログラムを参考に勉強させていただきます。外部ファイル操作についてわかりやすい教材や、ホームページがあれば教えていただければ幸いです。
No.1
- 回答日時:
ちょっと質問が難解なのですが、テキストファイルの中の文字列を探すのは、Windows標準の検索機能で探せます。
XPの場合ですと、「スタート」ボタン、開いたメニューの左側に検索があるので、それをクリック。
何を検索しますか?と犬が聞いてくるので、この場合はファイルとフォルダ全てをクリックします。
そこで条件を入力できるので、ファイルに含まれる単語または句に「STTT」と入れて検索すれば、STTTという文字列のファイルが一覧となって出てくるはずです。
(ファイル名の全てまたは一部は空白で構いません)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- フリーソフト テキストファイル内を検索したい 1 2022/06/01 08:33
- Visual Basic(VBA) vbaサブフォルダーをワイルドカードで取得したい 2 2022/11/15 08:04
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- ドライブ・ストレージ Windows10でのファイル内の文字列検索 SSDに寿命? 4 2022/07/12 03:25
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Visual Basic(VBA) excelにて、特定の列に数字入力してあれば、入力してある行コピーして 別ファイルに張り付ける 2 2022/08/11 05:33
- その他(ソフトウェア) 一太郎付属の”全件検索”ツールの不具合 3 2023/07/25 15:03
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- C言語・C++・C# C言語で 英文字のみからなる文字列、”Radar”、”WasItACatISaw”、”a”、””(空 5 2022/12/20 15:17
このQ&Aを見た人はこんなQ&Aも見ています
-
10代と話して驚いたこと
先日10代の知り合いと話した際、フロッピーディスクの実物を見たことがない、と言われて驚きました。今後もこういうことが増えてくるのかと思うと不思議な気持ちです。
-
大人になっても苦手な食べ物、ありますか?
大人になっても、我慢してもどうしても食べれないほど苦手なものってありますよね。 あなたにとっての今でもどうしても苦手なものはなんですか?
-
遅刻の「言い訳」選手権
よく遅刻してしまうんです…… 「電車が遅延してしまい遅れました」 「歯医者さんが長引いて、、、」 「病院が混んでいて」 などなどみなさんがこれまで使ってきた遅刻の言い訳がたくさんあるのではないでしょうか?
-
プリン+醤油=ウニみたいな組み合わせメニューを教えて!
プリンと醤油を一緒に食べると「ウニ」の味がする! というような意外な組み合わせから、新しい味になる食べ物って色々ありますよね。 あなたがこれまでに試した「組み合わせメニュー」を教えてください。
-
タイムマシーンがあったら、過去と未来どちらに行く?
20XX年、ついにタイムマシーンが開発されました。 あなたは過去に行く? それとも未来? タイムマシーンにのって、どこに行って、何をしたいか教えてください!
-
【VBA】テキストファイルから特定の文字列を抽出して、エクセルに出力する
Excel(エクセル)
-
テキストファイルから特定の文字列が入った行を取得したいです。 例えば下記のような文が記載されたテキス
Visual Basic(VBA)
-
テキストファイルの一部分を抽出する方法について
Visual Basic(VBA)
-
-
4
ある文字列を含む行の抽出
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Not kind:Folders
-
検索したファイルの場所を調べ...
-
ワードの作成日時と更新日時
-
貼り付けとショートカットの貼...
-
ファイル並び替え 秒まで
-
スクリーンセーバー
-
Windows10のメタデータの「メ...
-
Win 10エクスプローラーについ...
-
コマンドラインからzip32j.dll...
-
ショートカットファイルそのも...
-
コマンドプロンプトでファイル...
-
テキストファイル内の文字列検索
-
zip形式の動画をDVD-RWに保存し...
-
二つのパソコンのファイル転送方法
-
ドキュメントライブラリーのア...
-
iTunesの曲リストをWindows Med...
-
自分だけファイルが見られるよ...
-
複数のワードのファイルから検索
-
全CSVファイルに一行だけ追加し...
-
Windows10のクイックアクセスの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Not kind:Folders
-
検索したファイルの場所を調べ...
-
貼り付けとショートカットの貼...
-
ショートカットファイルそのも...
-
ワードの作成日時と更新日時
-
拡張子KIHを見るソフトって有り...
-
突然エクセルのデータが何ヶ月...
-
複数のワードのファイルから検索
-
Win 10エクスプローラーについ...
-
コマンドプロンプトでファイル...
-
拡張子.EXTの解凍方法
-
全CSVファイルに一行だけ追加し...
-
csvファイルの最後にeof(0x1a)...
-
自分だけファイルが見られるよ...
-
Win7フォルダ名入力中にIMEの変...
-
同じ名前のファイルをひとつの...
-
ファイル並び替え 秒まで
-
Windows10のクイックアクセスの...
-
MP3→CDA形式の変換方法
-
zip形式の動画をDVD-RWに保存し...
おすすめ情報