'//////////////////////////////////// ' 集計マクロ ' 39行に集計条件を入れること #Include "Constants.DAH" option base 0 const wDir = ".\" const wCard = "*.*" Main () silent() if dir(wDir + "*.*")="" then msgbox("環境設定が成されていません。") return end if insertstring(GetAllNames()) uniqsort() nosilent() refresh() msgbox("終了しました。") end proc getallnames() as string dim f% dim fn$ dim s$ dim o$ o="" command("NewFile") fn=dir(wDir + wCard) do while fn<>"" SetMessageText("Loading... " + fn) f=fopen(wwwdir + fn,"r") do until eof(f) s=fgets(f) 'この行に集計条件 if mid(s,1,4)=chr(9)+chr(9)+chr(9)+chr(9) then o=o+mid(s,5) loop fclose(f) fn=dir() loop return (o) end proc proc UniqSort() dim lpPr%,lpNx% dim stPr$,stNx$ dim kn%,k% setmessagetext("Sorting... ") command("SelectAll") Sort(0,True,false,"") lpPr=gettopline() kn=1 k=1 do while .totline>kn SetMessageText(str(kn) + " / " + str(.totline)) lpPr=getthisline(kn) stPr=loadthisline(lpPr) stNx=loadthisline(getthisline(kn+1)) if stPr=stNx then k=k+1 gotothere(kn+1,1) command("DeleteLine") else savethisline(lpPr,str(k) + chr(9) + stPr) kn=kn+1 k=1 end if loop savethisline(lpPr,str(k) + chr(9) + stPr) End proc