***************100名以上に誕生祝いをする人のためのマクロ******************** ;○"用紙作成.DEF"マクロで作成した、暦用紙に、誕生者名を記入するマクロ ; 「誕生者リスト」のファイル("誕生台帳")から読み取って、"暦用紙"に、氏名、 ; 年齢、電話番号を書き込む。 ; 同じ日の誕生者が4名以内という条件にしてあります。 ; 「誕生者リスト」の内容は、氏名(全角6桁、空白も全角)、生年月日(YYYY/MM/DDの ; 半角10桁)、電話番号(半角12桁)を、左から順に、一人分を1行に書いたもの。 ; 誕生者リストのファイル名は、"誕生台帳"としています。 ;○このマクロを使うには、エディター"VZ"が必要です。VZと同じディレクトリーにこの ; マクロを格納して下さい。 ; マクロのファイル名は"誕生暦.DEF"等、拡張子に".DEF"をつけて下さい。 ; VZのワードサーチはOFFにしてください。(VZ.DEF中のEwをEw-にする) ; デンポラリーバッファー、デキストバッファーは64Kにしてください。(VZ.DEF中の ; Bq,BtをBq64,Bt64にする) ; 表示カラム数(WD)は、130桁(WD130)にして下さい。 ;○VZを起動し、"暦用紙"を画面に呼出したら、[ESC]を押してから[^]を押すとマクロ ; を選択するメニューがでます。 ;○"暦用紙"の印刷は、B4縦か、連続用紙の 15 X 11 を使用してください。 ; 1カ月分が1頁で、128桁 X 70行です。 ==================================誕生暦.DEF================================== * M 89 ^\ "" ; &t ?. mi-, ;挿入モード &y(9), ;カレンダーの初期行 #O,&?("誕生台帳"),#m, ;誕生者リスト E=6, ;曜日 M+, ;月 Y+, ;第何週 F=31, ;月の最終日 D-, ;日 :A &#T(1),&#r(Y),#x,Y+,E++,D++,C=E*18-15, ;C=カーソル位置(桁) &#T(2),#<,#^,#F,&?("/"),&?("%2u",M),&?("/"),&?("%2u",D),#m, :B #c,(r>=0)? {&01,&02,&03,>B,}, ;氏名、年齢、電話 (E>=7)? {E-,&#T(1),&#c(11-Y),Y+,}, ;11=最大人数(4) X 2行 + 3 (D>=F)? {Y+,D-,M++,(M>12)? .,&#T(1),#F,&?("月"),#m,#c,&#c(7),&04,} >A, 1: #<,(6){#g},&#T(1),&x(C),#x,Y++,(6){#u},(5){#d},#f,(6){#h}, 2: &#T(2),(2){#d},&n N=95-r,&#T(1),(2){#s},&?("%2u",N),#f,#h, 3: &#T(2),(8){#d},#l,&#T(1),&x(C),#x,Y++,#u,(9){#d},#f,(6){#h},&#T(2), 4: F=31,(M==4 || M==6)? F=30,(M==9 || M==11)? F=30,(M==2)? F=28, * ====================================END========================================