• 締切済み

ログファイルの一部分を抽出する方法について

ログファイルをテキスト形式でインポートし エクセルのマクロを使ってログファイルのデータの一部を抽出する方法を教えてください。 ログファイルの例 20130301 xxxxxx\A123456xxxxxxxxx 出納ファイルxxxxxxxxxxxxx といったデータが5000件以上あるログファイルを下記のように ファイル名と社員コード、同一の社員が何回開いたかを集計したいです。 マクロ結果イメージ ファイル名 社員コード 開いた回数 出納ファイル A123456       2 出金ファイル A987456       2        出金ファイル A123456       1 文書管理ファイル A444444       2 対象ファイルが数個あるので、Excelで開き、VBA等で対応できればと思っています。 何か良い方法がありましたらご教示いただければ幸いです。

みんなの回答

回答No.1

伏字の部分が多く、ちょっとそのままでは難しそうです。 "xxxxxx\A123456xxxxxxxxx"の部分はパスなのでしょうか。 だとすれば、社員コードの直後に\記号が入りますか? 入らない場合、社員コードの長さは固定長ですか? 社員コードが出てくるまでの\記号の数が固定ならば、Split関数を使用すればどうにかなるかと思います。 【書式】Split(元の文字列 , 区切り文字) '返り値は配列になります 【例】 Dim tmp As Variant tmp = Split("\\xxxxxx\A123456\xxxxxxxxx", "\") 上記の場合、tmp(3)に社員コードが格納されます。 ※tmp(0)は最初の\の左辺=何もなし、tmp(1)は2番目の\の左辺=何もなし、tmp(2)は3番目の\の左辺=xxxxxxが入ります。 ファイル名の方に関しても同様で、"出納ファイルxxxxxxxxxxxxx"の伏字の部分がどうなっているのか、 抜き出したいファイル名は一覧化できるのかなどにより条件が変わります。 いずれにせよ、もう少し情報を公開して頂けると回答も集まりやすくなるかと思いますよ。

関連するQ&A