重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

EXCELのマクロを使って、テキストファイルから、ある文字列を検索し、コピーしEXCELのシートのセルにペーストするマクロの書き方をご存知の方は、ご教示願います。
例えば、テキストファイル中の「dog」という文字列を検索して、EXCELの決まったセル(A、1)にコピペするというマクロです。
よろしくお願い申し上げます。

A 回答 (2件)

色々方法はあると思うけど、


Dim objFs, file, filename
Dim oneLine
Set objFs = CreateObject("Scripting.FileSystemObject")
Application.FileDialog(msoFileDialogOpen).Show
filename = Application.FileDialog(msoFileDialogOpen).SelectedItems(1)
'filename = "E:\Work\sample\Excel\fileread\data.txt"
Set file = objFs.OpenTextFile(filename, 1) 'read Only

Do Until file.AtEndOfStream
oneLine = file.ReadLine
If InStr(oneLine, "dog") <> 0 Then
Sheets("sheet2").Range("A1").Value = "dog" 'oneLine 'データの書き出し
Exit Do
End If
Loop
file.Close
見たいな感じで、
DOG,Dog,dogなどにも対応させるには、もう一工夫必要ですけどね。
「dog」を探してdogをセルにそのまま入れるのは、あんまり意味がないような気がします。
勘違いしてますか、私。
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。テキストファイルから単語を検索する部分が特にわからなかったので全然勘違いではないです。ありがとうございました。

お礼日時:2005/01/11 21:18

If InStr(oneLine, "dog") <> 0 Then



If InStr(Ucase(oneLine), Ucase("dog")) <> 0 Then
にしたら、
大文字、小文字入り混じっても大丈夫です。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。早速やってみます。ご親切に御礼申し上げます。

お礼日時:2005/01/12 05:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!