多数のFAILに分割するマクロNo.03298
bas さん 02/08/30 12:12
 
超初心者です。
約1mbのTXTファイルを約1000の小さなTXTファイルに分割する必要があります。
手作業でやっていたのでは何時終わるか分かりません
マクロと思ったのですが、よく分かりません。
何方か教えてください。
1元のファイルの一部を選択
2ファイル名を手入力(ファイル名に規則性が無いため)
3選択した部分のみの新規保存
この作業を1000回繰り返したいのですが?。

[ ]
RE:03298 多数のFAILに分割するマクロNo.03300
bas さん 02/08/30 13:06
 
>2ファイル名を手入力(ファイル名に規則性が無いため)
すみません連番でも可能でした

[ ]
RE:03298 多数のFAILに分割するマクロNo.03303
番頭++ さん 02/08/30 20:12
 
元データに何らかの「キソクセイ」が無いと、無理です。
セキュリティを考慮して、元データの、一部、数十行とかを示すのも案です。

[ ]
RE:03298 多数のFAILに分割するマクロNo.03304
山紫水明 さん 02/08/30 21:19
 
 basさん,こんばんは。

》約1mbのTXTファイルを約1000の小さなTXTファイルに分割する必要があります。

 マクロがお使いになれれば,次のマクロで試してください。
 (マクロとしては例外処理など不完全です)

//---- DivideSave.mac ----------------------------------------------------//
$f = "File";    //ファイル名の頭(ここは適当に変更できる))
#n = 5;   //分割数
     //(とりあえず少ない数でやってみて,うまくいけば,1000 にする)
#i = 1;
#handle1 = hidemaruhandle( 0 );
while( #i <= #n ) {
    while(!selecting) inputpos "範囲選択してリターンキーを押してください。";
    cut;
    newfile;
    paste;
    #handle2 = hidemaruhandle( 0 );
    $s = input( "ファイル名は", $f + str( #i ) + ".txt" );
    saveas $s;
    #i = #i + 1;
    setactivehidemaru #handle1;
    closehidemaru #handle2;
}
clearupdated;
reopen;
message "終わりました!";
endmacro;
//-----------------------------------------------------------------------//

     では, (^^)/~
                                        山紫水明

[ ]
RE:03298 多数のFAILに分割するマクロNo.03305
bas さん 02/08/30 21:20
 
早速ありがとうございます。悩んでいます。
説明が悪くてすみません。

元DATAは法律の条文+アルファーです。
各条文毎に別ファイルにしてアクセスの高速化等を図る必要があります。
例外処理が沢山ありすぎて完全自動は無理と思います。
手作業で抽出部分は選択しワンタッチで小ファイルに保存する作業を1000回やる
つもりです。
-------------------------------------
マウスで区切る場所を指示しマクロでそれより前の部分をカット&コピーし、別の小
ファイルに保存
その時ファイル名は0001.txtから順次連番処理
--------------------------------------
こんなことが出来れば理想なんですが。
つまり1000回マウスで区切り部分を突付くのみで小ファイルが1000個出来上がり。
よろしくご指導ください。



[ ]
RE:03298 多数のFAILに分割するマクロNo.03306
bas さん 02/08/30 21:23
 
山紫水明さんと同時UPになってしまいました。
すばらしい
早速組み込んでみます。

[ ]
RE:03306 多数のFAILに分割するマクロNo.03307
山紫水明 さん 02/08/31 08:18
 
 basさん,こんにちは。

 前のはうっかり行頭に全角スペースを入れてしまったのでエラーになるはずです。

》その時ファイル名は0001.txtから順次連番処理

 ファイル名を規則的に連番にするなら次のようにした方が,手間が省けるでしょう。

//---- DivideSave.mac ------------------------------------------------------
-//
$f = "File";    //ファイル名の頭(ここは適当に変更できる))
#n = 5;   //分割数
          //(とりあえず少ない数でやってみて,うまくいけば,1000 にする)
#i = 1;
#handle1 = hidemaruhandle( 0 );
while( #i <= #n ) {
    $s = $f + rightstr("000" + str(#i), 4) + ".txt";
    while( !selecting ) inputpos "範囲選択してリターンキーを押してください。"
     + $s;
    cut;
    newfile;
    paste;
    #handle2 = hidemaruhandle( 0 );
    saveas $s;
    #i = #i + 1;
    setactivehidemaru #handle1;
    closehidemaru #handle2;
}
clearupdated;
reopen;
message "終わりました!";
endmacro;
//-------------------------------------------------------------------------/
/

     では, (^^)/~
                                        山紫水明

[ ]
RE:03307 多数のFAILに分割するマクロNo.03308
番頭++ さん 02/08/31 10:29
 
そこまでするのなら、inputous で指定された場所に「@aa.aaaa\n」みたいなマーカ
をつけるマクロと、それを元にした、インデックスつきの html ファイル群にするマ
クロとか。aa は何条、bbbb は第何項みたいな感じで。
必ず規則性は在ると思うのですが。

[ ]
RE:03308 多数のFAILに分割するマクロNo.03309
山紫水明 さん 02/08/31 22:12
 
 番頭++さん,こんばんは。

》inputous で指定された場所に「@aa.aaaa\n」みたいなマーカをつけるマクロ
》と、それを元にした、インデックスつきの html ファイル群にするマクロとか。
》aa は何条、bbbb は第何項みたいな感じで。

 たしかにしゃれていますね。でも,如何せん,マーカーをつけるのはともかく
として,私にはインデックスつきの htmlファイルを作るスキルがありません。(..)

    では, (^^)/~
                                        山紫水明

[ ]