[[20210302115736]] 『txtファイル(0001.txt〜0100.txt)の中身をそれぞax(Aki) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『txtファイル(0001.txt〜0100.txt)の中身をそれぞれ個別のセルに入力』(Aki)

(1)A1〜A100セルにそれぞれ0001.txt〜0100.txtという文字列が格納されている
(2)ファイルサーバ上(\\share\txt)に?@の名前と対応する実際のテキストファイルが格納されている

この場合、B1〜B100セルの中に(1)と対応する(2)のテキストファイルの中身を自動で入力させたいのですが、どのようにすれば可能でしょうか。
数が多く手動では難しいため、どうぞご教示の程、お願い申し上げます。

< 使用 Excel:Excel2016、使用 OS:unknown >


※文字化けがありましたので再度質問させていただきます※

(1)A1〜A100セルにそれぞれ0001.txt〜0100.txtという文字列が格納されている
(2)ファイルサーバ上(\\share\txt)に(1)の名前と対応する実際のテキストファイルが格納されている

この場合、B1〜B100セルの中に(1)と対応する(2)のテキストファイルの中身を自動で入力させたいのですが、どのようにすれば可能でしょうか。

数が多く手動では難しいため、どうぞご教示の程、お願い申し上げます。
(Aki) 2021/03/02(火) 12:02


マクロならさほど難しい話ではないですね。
 (1) 1〜100 までを順番に
 (2) n行目のA列に相当するファイルから、テキストデータを読み込み
 (3) n行目のB列に読み込んだデータを書き込む

とすればよいです。
以下を提供しますので、興味があればステップ実行して研究してみてください。(といいつつ、もうちょっとスマートな方法での回答があるかもです。)

    Sub 研究用()
        Dim i As Long, buf As String
        Dim FSO As Object: Set FSO = CreateObject("Scripting.FileSystemObject")

        Stop 'ブレークポイントの代わり

        For i = 1 To 100
            With FSO.GetFile("D:\てすとてすと\" & Cells(i, "A")).OpenAsTextStream
                Cells(i, "B").Value = .ReadAll
                .Close
            End With

        Next i

    End Sub

(もこな2) 2021/03/02(火) 13:20


ほかのサイトですが、似たような質問がありましたので、参考になれば。

https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12239657132

(変なおやじ) 2021/03/02(火) 13:37


>もこな2さん

ご教示いただいた方法で上手く出来ました。
早速のご教示ありがとうございます。
(Aki) 2021/03/02(火) 14:39


>上手く出来ました。
完成品をプレゼントしたわけではありませんから、ちゃんと【研究】してくださいね。

(もこな2) 2021/03/02(火) 17:32


知恵袋の方、拝見しました。
質問の内容から推測するにマルチポストですね。

何ヵ所に投稿したか知りませんが、少なくとも知恵袋では別アプローチのアドバイスを頂いているので、【初めての方へ】にあるように、こちらにもそれをきちんとフィードバックされたほうがよいでしょう。

(もこな2) 2021/03/02(火) 23:04


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.