110.日付変更マクロ | AutoCADマクロ屋本舗
[110]
日付変更 [属性値記入済版]
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),dist;^X日付記入(L)/今日の日付(R)^X\$M="""$(if,$(getvar,cmdactive),;setenv;day1;YEAR^X\;day2;MONTH^X\;day3;DAY^X\;d1;0,setenv;d1;1)""";;to;1,zoom;w;non;0","0;non;$(getvar,limmax);setenv;to;2,,,)$(nth,$(getenv,to),,,;to;3;-attedit;y;*;DAY;;w;non;0","0;non;$(getvar,limmax);;v;r;;n;$M="""$(if,$(getvar,cmdactive),v;r;;,id;)""",,)$(nth,$(getenv,to),,,,-attedit;n;n;*;DAY;;;$(edtime,$(getvar,date),$(nth,$(getenv,d1),$(getenv,day1)". "$(getenv,day2)". "$(getenv,day3),YY". "M". "D));setenv;to;4,GRAPHSCR;id;^C;^Z【更新完了】^X)^M


LT2000/LT2004 動作確認済

●使い方
1.マクロ実行後、左クリックで日付を記入。
  右クリックで現在の日付を自動記入。


▲注意
1.あらかじめ、ブロック化された属性名"DAY"を図面上に配置した上で
  マクロを実行して下さい。

【例】日付用属性作成マクロ
^C^Cid;\-attdef;;DAY;;2005.**.**;non;@;$M=$(*,$(getvar,dimscale),3);0;chprop;L;;C;ByBlock;LT;ByBlock;LW;ByBlock;LA;0;;copybase;non;@;p;;erase;p;;pasteblock;@^M

・元々属性が作成して有る場合は、上記マクロは不要です。
・基本的には、上記マクロで属性を作成せず、図枠やテンプレートて
 属性名"DAY"付のブロックを作成して下さい。


2.属性名"DAY"の既定値に、必ず文字を記入しておいて下さい。
3.日付を編集可能な属性名"DAY"の数は2個までです。
  3個以上の属性名"DAY"付のブロックを配置しないで下さい。
※以上の条件が満たされていない場合、マクロが途中で止まってしまいます。


■コメント
かなり昔に作ったマクロですが、今でも現役で使用中。
某掲示板や、ココの掲示板でも質問が有りましたので紹介します。



使える! AutoCAD & LT カスタマイズブック 使えるカスタムプログラム100、使える.../ソフトバンククリエイティブ

¥3,360
Amazon.co.jp



通常は、日付は記入するものなので、テンプレートや図面枠に
あらかじめ、文字(数値)を記入しておくと、マクロ的にも楽です。

元図の属性値に文字(数値)を記入して無い場合は
上記マクロでは動作しませんので、以下のマクロをご使用下さい。


↓↓↓別バージョン↓↓↓


日付変更 [属性値記入/無記入対応版]
*^C^C$M=setenv;to;0;$(nth,$(getenv,to),dist;^X日付記入(L)/今日の日付(R)^X\$M="""$(if,$(getvar,cmdactive),;setenv;y0;YEAR^X\;m0;MONTH^X\;d0;DAY^X\;d1;0,setenv;d1;1)""";;to;1,zoom;w;non;0","0;non;$(getvar,limmax);setenv;to;2,,,)$(nth,$(getenv,to),,,;to;3;-attedit;n;n;*;DAY;;;*;;y;*;DAY;;w;non;0","0;non;$(getvar,limmax);;v;r;;n;$M="""$(if,$(getvar,cmdactive),v;r;;,id;)""",,)$(nth,$(getenv,to),,,,-attedit;n;n;*;DAY;;;$(edtime,$(getvar,date),$(nth,$(getenv,d1),$(getenv,y0)". "$(getenv,m0)". "$(getenv,d0),YY". "M". "D));setenv;to;4,GRAPHSCR;id;^C;^Z【更新完了】^X)^M


LT2000/LT2004 動作確認済

●使い方
1.マクロ実行後、左クリックで日付を記入。
  右クリックで現在の日付を自動記入。


▲注意
1.あらかじめ、ブロック化された属性名"DAY"を図面上に配置した上で
  マクロを実行して下さい。
2.日付を編集可能な属性名"DAY"の数は2個までです。
  3個以上の属性名"DAY"付のブロックを配置しないで下さい。
3.マクロが長い為、カスタマイズダイアログに直接貼付け出来ない場合は
  メニューファイルに直接貼り付けて下さい。


■コメント
某掲示板で依頼が有り作成しました。
日付が記入されていなくても、自動で日付を記入します。

が・・・

テンプレートや図枠の属性値に、あらかじめ文字(数値)を記入していれば
これ程マクロを長くせずに済むので、このマクロよりも最初に紹介した
[属性値記入済版]のマクロをオススメします。


使える! AutoCAD & LT カスタマイズブック 使えるカスタムプログラム100、使える.../ソフトバンククリエイティブ

¥3,360
Amazon.co.jp