テキスト形式のファイルの編集をしたいのですが
内容は
NO=1
{
(TAB)社員コード=999999
(TAB)入社日=9999/99/99
(TAB)所属=XXXXX
(TAB)社員区分=1
}
というように複数行1レコードとするデータで、所属がXXXXの場合社員区分を変更するというような編集をしたいです。
VBAでFSOやperlのSED、秀丸マクロ等、左記以外にも様々な方法が考えられますが、候補がありすぎで迷っています。どの方法がスマートでしょうか?
お勧めの方法と可能であればソースを提示していただけると助かります
ちなみに行数は約500000行でファイルサイズは30MBあります。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
ノートパッド(30MBが読み込めたか?・・・)等の 所謂 ”テキストエディター ”で ”所属=XXXXX ”を検索して ”所属=yyyyy ” に置き換える・・・操作では ダメですか?
一つづつ順番でも 全て置き換えも 出来ますが・・・?
試しに ノートパッドで 小さなファイルで 試して見ては・・・?
No.2
- 回答日時:
変更が1通り(XXXXX→YYYYY)だとすると、
sed:
sed "s/^\\(\t所属=\\)XXXXX/\\1YYYY/" data.txt > data_new.txt
但し、
""は文字列、\がエスケープとして機能し、\tをタブに展開できる場合。
perl:
perl -npe 's/^(\t所属=)XXXXX/$1YYYY/;' data.txt > data_new.txt
''は\等を変換しない文字列
あるいは
>> henkan.pl <<
while(<>){
s/^(\t所属=)XXXXX/$1YYYY/;'
print ;
'}
>> henkan.pl <<
というファイルを作って
perl henkan.pl data.txt > data_new.txt
データがShift_JISで書かれているなら、「だめ文字」に注意
No.1
- 回答日時:
約500000行ファイルサイズ30MBでしたら、アクセスでしょう。
データ表にできれば、文字の置き換えでできます。
ちなみに、所属=XXXXXから一義的に社員区分が決められるのでしたら、一旦社員区分は削除した方が早いかも。
回答ありがとうございます
アクセスですか。思い至らなかったので候補にも挙がっていませんでした
ところで、アクセスって1レコードが複数行に渡っているデータをテーブルにインポートって出来ました?
1レコード1行のデータしか対応できないと思っていました。
>データー表にできれば
とありますが、どのようにデータ表にするのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- XML エクセルのマクロについて教えてください。 3 2023/02/06 09:06
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/21 09:42
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/06 13:01
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/04 12:47
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- その他(インターネット接続・インフラ) (Google workspace)google以外のアカウントの利用制限と対策を相談させてください 1 2022/10/11 16:18
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- Google Drive Googleドライブについて 2 2022/05/07 11:44
- Excel(エクセル) 至急です><Excelの関数を教えてください。 2 2022/03/22 17:56
- Excel(エクセル) Excel 数行を1組とする300組ほどあるデータの項目を揃えたいです。 3 2023/01/26 19:38
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
複数のテキストファイルをexcel...
-
バッチファイルが作成できない
-
一気にずばっと複数のメールを...
-
Excelでdatファイルを作成??
-
CADでグラフ作成
-
ファイル名の特定文字だけ削除...
-
マクロでメモ帳に貼り付け
-
ヘルプファイルの翻訳
-
インデザインのテキスト流し込み
-
batファイル処理でのテキストフ...
-
複数のファイルを同時検索し、...
-
chmのヘルプファイルをテキ...
-
windowsへscp
-
バッチによるショートカットの...
-
Refreshで落ちる
-
Microsoft Access エラー 3051
-
レーザープリンターのA4・5...
-
Lubuntuでフォントをインストー...
-
LANDISKに新しいフォルダを追加...
-
VBAでファイルパスが長すぎてコ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelでdatファイルを作成??
-
複数のテキストファイルをexcel...
-
batファイル処理でのテキストフ...
-
バッチファイルが作成できない
-
テキストファイルの文字色に色...
-
KADOKAWA電撃文庫ってフォーマ...
-
複数のファイルを同時検索し、...
-
ファイル名の特定文字だけ削除...
-
windowsへscp
-
一気にずばっと複数のメールを...
-
powershell で出力したテキスト...
-
テキストファイルを開かずに中...
-
VBSでテキストファイルのタブ区...
-
マクロでメモ帳に貼り付け
-
テキストファイルを、ファイル...
-
CADでグラフ作成
-
ExcelVBA テキストファイルから...
-
htmlとして保存されているファ...
-
Windowsのメモ帳に何かを書いた...
-
アクセスログのテキストファイ...
おすすめ情報