この掲示板は AutoCADマクロ屋本舗 の掲示板です。

【 注意 】最初に必ず ↓↓ 下記内容 ↓↓ を参照ください。
① マクロが分からない方は、まず 【 マクロ講座 】 を参照ください。
② 質問の前に 【 マクロ使用前の注意事項 】 をお読みください。
③ 質問する時は、新規投稿フォーム下の【 新規投稿時のお願い 】を必ずお読みください。

図面枠を変更するマクロについて
お世話になります。
マクロについて相談させていただきます。

以前、同僚に図面枠の尺度変更するマクロを作ってもらいました。
昔のバージョンの時は動いてましたが
AutoCAD 2014になってからはまともに動いてくれません。

マクロの使い方は[新規作成]よりテンプレートにしてある図枠を開いた後に
マクロを使ってます。

AutoCAD 2014になってからは途中で止まってる感じで
Enterを押してマクロ終了させてます。
マクロ終了後に、[寸法スタイル管理]内の[フィット]にて
寸法の尺度を図枠の尺度に合わせる作業をしてます。

下記のマクロはAutoCAD 2014で使えるように出来ますか?
仮に出来た場合、そのマクロはAutoCAD 2017でも使えるのですか?

もう一点、マクロの中に「A0」が入ってますが
現在はA1〜A4までの使用なので必要ない「A0」は削除可能ですか?

マクロに関しては全く無知ですが、宜しくお願いします。

現在、使用してるマクロは以下になります。
また、途中で止まってる感じのコマンドもコピーしました。


^C^Cuseri1;\dimscale;\ltscale;$M=$(*,10,$(getvar,dimscale));limits;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));zoom;w;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));-layer;a;s;now;;;lo;*;u;frame;s;frame;^c^c_erase;all;;^c^c-insert;$(nth,$(getvar,useri1),A0,A1,A2,A3,A4);s;$(getvar,dimscale);0,0;0;^c^c-layer;u;*;^c^c-insert;TITLE2;s;$(getvar,dimscale);$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,704,464.5,291.5,166.75,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,15,10.8,9.5,10.4,297));0;;;;;;;;;;;;;1:;$(getvar,dimscale);;;;;;;-layer^Ma;r;now;d;now;;;



コマンド: useri1
USERI1 の新しい値を入力 <1>: 1
コマンド: dimscale
DIMSCALE の新しい値を入力 <1.0000>: 1
コマンド: ltscale
新しい線種尺度を入力 <10.0000>: 10
コマンド: limits
モデル空間 の図面範囲をリセット:
左下コーナーを指定 または [オン(ON)/オフ(OF)] <0.0000,0.0000>: 0,0
右上コーナーを指定 <841.0000,594.0000>: 841,+594
コマンド: zoom
窓のコーナーを指定、表示倍率を入力(nX または nXP) または
[図面全体(A)/中心点(C)/ダイナミック(D)/オブジェクト範囲(E)/前画面(P)/倍率(S)/窓(W)/選択オブジェクト(O)] <リアル タイム>: w
最初のコーナーを指定: 0,0
もう一方のコーナーを指定: 841,+594
コマンド: -layer
現在の画層: "0"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: a
オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: s
新しい画層状態の名前を入力: now
画層状態
表示 はい
フリーズ はい
ロック はい
印刷する はい
新ビューポートでフリーズ はい
色 はい
線種 はい
線の太さ はい
透過性 はい
印刷スタイル はい
変更する画層状態を入力
[表示(O)/フリーズ(F)/ロック(L)/印刷(P)/新ビューポートでフリーズ(N)/色(C)/線種(T)/線の太さ(W)/透過性(TR)/印刷スタイル(S)]:
オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]:
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: lo
ロック にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u
ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: s
現在層にする画層名を入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: *キャンセル*
コマンド:
コマンド: _erase
オブジェクトを選択: all
認識された数: 4
3 個はロックされた画層上にあります。
オブジェクトを選択:
コマンド:
コマンド:
コマンド: -insert
ブロック名を入力 または [一覧(?)]: MCCA1
単位: 単位なし 変換: 1.00000000
カスタマイズ ファイルは正常にロードされました。カスタマイズ グループ: ACAD
カスタマイズ ファイルは正常にロードされました。カスタマイズ グループ: SKETCHUPIMPORTSKP
AutoCAD 2010/LT 2010 形式のファイルを開いています。
モデルを再作図中。
コマンド:
AutoCAD メニュー ユーティリティ がロードされました。コマンド行でsetenvとgetenvを使用できます。<www.cadic.co.jp>
コマンド: Layer
コマンド: adcenter
ADCENTER
コマンド: properties
コマンド: COMMANDLINE
コマンド:
Autodesk DWG です。このファイルはオートデスクの開発した、またはライセンスを受けたアプリケーションによって保存された、TrustedDWG ファイルです。
コマンド:
コマンド: *キャンセル*
コマンド:
コマンド:
コマンド: useri1
USERI1 の新しい値を入力 <1>: 1
コマンド: dimscale
DIMSCALE の新しい値を入力 <1.0000>: 1
コマンド: ltscale
新しい線種尺度を入力 <10.0000>: 10
コマンド: limits
モデル空間 の図面範囲をリセット:
左下コーナーを指定 または [オン(ON)/オフ(OF)] <0.0000,0.0000>: 0,0
右上コーナーを指定 <841.0000,594.0000>: 841,+594
コマンド: zoom
窓のコーナーを指定、表示倍率を入力(nX または nXP) または
[図面全体(A)/中心点(C)/ダイナミック(D)/オブジェクト範囲(E)/前画面(P)/倍率(S)/窓(W)/選択オブジェクト(O)] <リアル タイム>: w
最初のコーナーを指定: 0,0
もう一方のコーナーを指定: 841,+594
コマンド: -layer
現在の画層: "0"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: a
オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: s
新しい画層状態の名前を入力: now
画層状態
表示 はい
フリーズ はい
ロック はい
印刷する はい
新ビューポートでフリーズ はい
色 はい
線種 はい
線の太さ はい
透過性 はい
印刷スタイル はい
変更する画層状態を入力
[表示(O)/フリーズ(F)/ロック(L)/印刷(P)/新ビューポートでフリーズ(N)/色(C)/線種(T)/線の太さ(W)/透過性(TR)/印刷スタイル(S)]:
オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]:
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: lo
ロック にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u
ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: s
現在層にする画層名を入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: *キャンセル*
コマンド:
コマンド: _erase
オブジェクトを選択: all
認識された数: 4
3 個はロックされた画層上にあります。
オブジェクトを選択:
コマンド:
コマンド:
コマンド: -insert
ブロック名を入力 または [一覧(?)]: MCCA1
単位: 単位なし 変換: 1.00000000
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: s
XYZ 軸に対する尺度を指定 <1>: 1
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: 0,0
回転角度を指定 <0>: 0
コマンド:
コマンド:
コマンド: -layer
現在の画層: "FRAME"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u
ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: *キャンセル*
コマンド:
コマンド: -insert
ブロック名を入力 または [一覧(?)] <A1>: TITLE2
単位: 単位なし 変換: 1.00000000
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: s
XYZ 軸に対する尺度を指定 <1>: 1
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: 704,+15
回転角度を指定 <0>: 0
属性値を入力
エリア名:
図面名称:
図面番号:
西暦:
月:
日:
作図:
担当:
検視:
検視:
承認:
REV:
分子: 1:
分母: 1
縮尺2:
縮尺3:
整理番号:
種別:
分図:
図面履歴:
コマンド: -layer
現在の画層: "FRAME"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: a
オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: r
復元する画層状態の名前を入力 または [一覧(?)]: now
オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: d
削除する画層状態の名前を入力 または [一覧(?)]: now
オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]:
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]:
  • 山本
  • MAIL
  • 2017/03/01 (Wed) 19:38:18
Re: 図面枠を変更するマクロについて
>AutoCAD 2014になってからはまともに動いてくれません。

どのようまともではないのでしょうか?


>AutoCAD 2014になってからは途中で止まってる感じで
>Enterを押してマクロ終了させてます。
>マクロ終了後に、[寸法スタイル管理]内の[フィット]にて
>寸法の尺度を図枠の尺度に合わせる作業をしてます。

最後にEnterを押さないと終わらないだけですか?


とりあえず、A0部分は消さずに
ちょっと修正してみたので、お試しください。

^C^Cuseri1;¥dimscale;¥ltscale;$M=$(*,10,$(getvar,dimscale));limits;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));zoom;w;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));-layer;a;s;now;;;lo;*;u;frame;s;frame;erase;all;;-insert;$(nth,$(getvar,useri1),A0,A1,A2,A3,A4);s;$(getvar,dimscale);0,0;0;-layer;u;*;-insert;TITLE2;s;$(getvar,dimscale);$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,704,464.5,291.5,166.75,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,15,10.8,9.5,10.4,297));0;;;;;;;;;;;;;1:;$(getvar,dimscale);;;;;;;-layer;a;r;now;d;now;;;^M




>仮に出来た場合、そのマクロはAutoCAD 2017でも使えるのですか?

試してみて、動かない様であれば、2017用に直すしかないです。
  • とってぃ
  • 2017/03/02 (Thu) 08:16:59
Re: 図面枠を変更するマクロについて
お世話になります。

「マクロがまともに動いてくれません」
↑を訂正します。
マクロが途中で止まってる感じがします。

「Enterを押してマクロ終了させてます」
↑も訂正します。
Escを押してマクロを終了させてます。

先程、修正していただいたマクロは下記の状態で止まってしまいます。


コマンド: useri1
USERI1 の新しい値を入力 <1>: ¥dimscale
-32768 から 32767 の範囲の整数を入力してください.
USERI1 の新しい値を入力 <1>: 1



今までのマクロの使い方は
最初にA1のテンプレートを開いた後に
マクロのアイコンを押して
A1なら「1」A2なら「2」と入力してました。
その後に尺度1/1なら「1」尺度1/20なら「20」と入力してました。
  • 山本
  • MAIL
  • 2017/03/02 (Thu) 09:50:19
Re: 図面枠を変更するマクロについて
>コマンド: useri1
>USERI1 の新しい値を入力 <1>: ¥dimscale

ユーザー入力の\を認識していないみたいですねー・・・

2014での不具合は、あまり聞かなかったですが
とりあえず

AutoCAD R/LT 2013の注意点
http://ameblo.jp/totthi-macro/entry-11228055581.html

こちらをご確認ねがいます。


あと、サービスパックは適用されていますか?

  • とってぃ
  • 2017/03/02 (Thu) 10:44:54
Re: 図面枠を変更するマクロについて
お世話になります。

ユーザー入力の/が認識されない場合は
何を設定すればよいのか分かりませんが・・・
・システム変数「clipromptupdate」を"1"に設定
・システム変数「pickadd」を"1"に設定する
の2点は設定しました。

後、サービスパックはAutoCAD2014 SP1
となってます。

上記の内容を設定しましたが
先程と同じところで止まってしまいます。
  • 山本
  • MAIL
  • 2017/03/02 (Thu) 11:19:27
Re: 図面枠を変更するマクロについて
最初に表示されてるコマンドラインでは

>コマンド: useri1
>USERI1 の新しい値を入力 <1>: 1
>コマンド: dimscale

ちゃんと動作しているみたいなんですが
どちらも2014で確認されていますでしょうか?


あと
外部ソフト等のアドオンソフトは載せてませんよね?
  • とってぃ
  • 2017/03/02 (Thu) 11:46:53
Re: 図面枠を変更するマクロについて
お世話になります。

外部ソフトは入れてません。

今は2014だけで使ってます。
とってぃ様のマクロでは
下記の状態で止まってます。

USERI1 の新しい値を入力 <1>: ¥dimscale
-32768 から 32767 の範囲の整数を入力してください.
USERI1 の新しい値を入力 <1>: 1
  • 山本
  • 2017/03/02 (Thu) 12:41:43
Re: 図面枠を変更するマクロについて
お世話になります。

申し訳ございません。
マクロのコピー+貼り付けの方法が悪かったみたいです。
コマンドは下記の状態で止まってます。


コマンド: useri1
USERI1 の新しい値を入力 <1>: 1

コマンド: dimscale

DIMSCALE の新しい値を入力 <1.0000>: 1

コマンド: ltscale
新しい線種尺度を入力 <10.0000>: 10

コマンド: limits

モデル空間 の図面範囲をリセット:
左下コーナーを指定 または [オン(ON)/オフ(OF)] <0.0000,0.0000>: 0,0

右上コーナーを指定 <841.0000,594.0000>: 841,+594

コマンド: zoom

窓のコーナーを指定、表示倍率を入力(nX または nXP) または
[図面全体(A)/中心点(C)/ダイナミック(D)/オブジェクト範囲(E)/前画面(P)/倍率(S)/窓(W)/選択オブジェクト(O)] <リアル タイム>: w

最初のコーナーを指定: 0,0
もう一方のコーナーを指定: 841,+594

コマンド: -layer

現在の画層: "0"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: a

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: s

新しい画層状態の名前を入力: now

画層状態
表示 はい
フリーズ はい
ロック はい
印刷する はい
新ビューポートでフリーズ はい
色 はい
線種 はい
線の太さ はい
透過性 はい
印刷スタイル はい

変更する画層状態を入力
[表示(O)/フリーズ(F)/ロック(L)/印刷(P)/新ビューポートでフリーズ(N)/色(C)/線種(T)/線の太さ(W)/透過性(TR)/印刷スタイル(S)]:

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]:
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: lo

ロック にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u

ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: s

現在層にする画層名を入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: erase

そのようなオプション キーワードはありません。
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: *キャンセル*
  • 山本
  • 2017/03/02 (Thu) 13:10:11
Re: 図面枠を変更するマクロについて
再度修正しました。
お試しください。


^C^Cuseri1;¥dimscale;¥ltscale;$M=$(*,10,$(getvar,dimscale));limits;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));zoom;w;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));-layer;a;s;now;;;lo;*;u;frame;s;frame;;erase;all;;-insert;$(nth,$(getvar,useri1),A0,A1,A2,A3,A4);s;$(getvar,dimscale);0,0;0;-layer;u;*;-insert;TITLE2;s;$(getvar,dimscale);$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,704,464.5,291.5,166.75,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,15,10.8,9.5,10.4,297));0;;;;;;;;;;;;;1:;$(getvar,dimscale);;;;;;;-layer;a;r;now;d;now;^M
  • とってぃ
  • 2017/03/02 (Thu) 15:46:34
Re: 図面枠を変更するマクロについて
お世話になります。

先程のマクロですと下記の状態で止まりました。


コマンド: useri1

USERI1 の新しい値を入力 <1>: 1

コマンド: dimscale

DIMSCALE の新しい値を入力 <1.0000>: 1

コマンド: ltscale
新しい線種尺度を入力 <10.0000>: 10

コマンド: limits

モデル空間 の図面範囲をリセット:
左下コーナーを指定 または [オン(ON)/オフ(OF)] <0.0000,0.0000>: 0,0

右上コーナーを指定 <841.0000,594.0000>: 841,+594

コマンド: zoom

窓のコーナーを指定、表示倍率を入力(nX または nXP) または
[図面全体(A)/中心点(C)/ダイナミック(D)/オブジェクト範囲(E)/前画面(P)/倍率(S)/窓(W)/選択オブジェクト(O)] <リアル タイム>: w

最初のコーナーを指定: 0,0
もう一方のコーナーを指定: 841,+594

コマンド: -layer

現在の画層: "0"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: a

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: s

新しい画層状態の名前を入力: now

画層状態
表示 はい
フリーズ はい
ロック はい
印刷する はい
新ビューポートでフリーズ はい
色 はい
線種 はい
線の太さ はい
透過性 はい
印刷スタイル はい

変更する画層状態を入力
[表示(O)/フリーズ(F)/ロック(L)/印刷(P)/新ビューポートでフリーズ(N)/色(C)/線種(T)/線の太さ(W)/透過性(TR)/印刷スタイル(S)]:

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]:
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: lo

ロック にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u

ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: s

現在層にする画層名を入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]:

コマンド: erase

オブジェクトを選択: all
認識された数: 4
3 個はロックされた画層上にあります。

オブジェクトを選択:

コマンド: -insert
ブロック名を入力 または [一覧(?)]: MCCA1

単位: 単位なし 変換: 1.00000000
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: s
XYZ 軸に対する尺度を指定 <1>: 1
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: 0,0

回転角度を指定 <0>: 0

コマンド: -layer

現在の画層: "FRAME"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u

ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: -insert

そのようなオプション キーワードはありません。
オプションを入力
  • 山本
  • 2017/03/02 (Thu) 16:07:56
Re: 図面枠を変更するマクロについて
これでどうでしょう。


^C^Cuseri1;¥dimscale;¥ltscale;$M=$(*,10,$(getvar,dimscale));limits;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));zoom;w;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));-layer;a;s;now;;;lo;*;u;frame;s;frame;;erase;all;;-insert;$(nth,$(getvar,useri1),A0,A1,A2,A3,A4);s;$(getvar,dimscale);0,0;0;-layer;u;*;;-insert;TITLE2;s;$(getvar,dimscale);$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,704,464.5,291.5,166.75,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,15,10.8,9.5,10.4,297));0;;;;;;;;;;;;;1:;$(getvar,dimscale);;;;;;;-layer;a;r;now;d;now;^M


\が文字として認識していましたが
元々のマクロの「¥」の文字の形式が違うみたいです。

こちら側から、削除後\を書き直すと、通常動作しました。


元のマクロはCADのバージョン何で使用されていましたか?
  • とってぃ
  • 2017/03/02 (Thu) 16:18:31
Re: 図面枠を変更するマクロについて
お世話になります。
お忙しいところをすいません。

今回は下記の状態です。


コマンド: useri1
USERI1 の新しい値を入力 <1>: 1

コマンド: dimscale

DIMSCALE の新しい値を入力 <1.0000>: 1

コマンド: ltscale
新しい線種尺度を入力 <10.0000>: 10

コマンド: limits

モデル空間 の図面範囲をリセット:
左下コーナーを指定 または [オン(ON)/オフ(OF)] <0.0000,0.0000>: 0,0

右上コーナーを指定 <841.0000,594.0000>: 841,+594

コマンド: zoom

窓のコーナーを指定、表示倍率を入力(nX または nXP) または
[図面全体(A)/中心点(C)/ダイナミック(D)/オブジェクト範囲(E)/前画面(P)/倍率(S)/窓(W)/選択オブジェクト(O)] <リアル タイム>: w

最初のコーナーを指定: 0,0
もう一方のコーナーを指定: 841,+594

コマンド: -layer

現在の画層: "0"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: a

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: s

新しい画層状態の名前を入力: now

画層状態
表示 はい
フリーズ はい
ロック はい
印刷する はい
新ビューポートでフリーズ はい
色 はい
線種 はい
線の太さ はい
透過性 はい
印刷スタイル はい

変更する画層状態を入力
[表示(O)/フリーズ(F)/ロック(L)/印刷(P)/新ビューポートでフリーズ(N)/色(C)/線種(T)/線の太さ(W)/透過性(TR)/印刷スタイル(S)]:

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]:
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: lo

ロック にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u

ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: s

現在層にする画層名を入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]:

コマンド: erase

オブジェクトを選択: all
認識された数: 4
3 個はロックされた画層上にあります。

オブジェクトを選択:

コマンド: -insert
ブロック名を入力 または [一覧(?)]: MCCA1

単位: 単位なし 変換: 1.00000000
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: s
XYZ 軸に対する尺度を指定 <1>: 1
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: 0,0

回転角度を指定 <0>: 0

コマンド: -layer

現在の画層: "FRAME"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u

ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]:

コマンド: -insert
ブロック名を入力 または [一覧(?)] <MCCA1>: TITLE2

単位: 単位なし 変換: 1.00000000
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: s
XYZ 軸に対する尺度を指定 <1>: 1
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: 704,+15

回転角度を指定 <0>: 0

属性値を入力
エリア名:
図面名称:
図面番号:
西暦:
月:
日:
作図:
担当:
検視:
検視:
承認:
REV:
分子: 1:
分母: 1
縮尺2:
縮尺3:
整理番号:
種別:
分図:
図面履歴:

コマンド: -layer

現在の画層: "FRAME"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: a

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: r

復元する画層状態の名前を入力 または [一覧(?)]: now

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: d

削除する画層状態の名前を入力 または [一覧(?)]: now

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]:
オプションを入力
  • 山本
  • 2017/03/02 (Thu) 16:33:22
Re: 図面枠を変更するマクロについて
今回は最後まで行ってますね。

前回のマクロの「^M」まで貼り付けていますでしょうか?
  • とってぃ
  • 2017/03/02 (Thu) 16:51:47
Re: 図面枠を変更するマクロについて
追記です。

以前のバージョンは2012です。

よろしくお願いします。
  • 山本
  • 2017/03/02 (Thu) 16:53:18
Re: 図面枠を変更するマクロについて
はい。
「^M」まで貼り付けてます。
  • 山本
  • 2017/03/02 (Thu) 16:55:53
Re: 図面枠を変更するマクロについて
最後の「^M」を「;」に書き換えて試してみて下さい。

※通常は動作するはずですが
そちらの文字のエンコードが影響しているような気がします。
  • とってぃ
  • 2017/03/03 (Fri) 08:07:26
Re: 図面枠を変更するマクロについて
お世話になります。

「^M」を「;」に書き換えて試してみましたが・・・同じく途中で止まってます。
文字のエンコードの件ですが・・・
普通にコピーしてるつもりですが、何かやり方が悪いのかもと思ってます。
色々なやり方でもう一度、とってぃ様が作っていただいたマクロをコピー等して挑戦します。
  • 山本
  • 2017/03/03 (Fri) 09:21:28
Re: 図面枠を変更するマクロについて
では、こちらをお試しください。


^C^Cuseri1;¥dimscale;¥ltscale;$M=$(*,10,$(getvar,dimscale));limits;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));zoom;w;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));-layer;a;s;now;;;lo;*;u;frame;s;frame;;erase;all;;-insert;$(nth,$(getvar,useri1),A0,A1,A2,A3,A4);s;$(getvar,dimscale);0,0;0;-layer;u;*;;-insert;TITLE2;s;$(getvar,dimscale);$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,704,464.5,291.5,166.75,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,15,10.8,9.5,10.4,297));0;;;;;;;;;;;;;1:;$(getvar,dimscale);;;;;;;-layer;a;r;now;d;now;;^M
  • とってぃ
  • 2017/03/03 (Fri) 09:35:28
Re: 図面枠を変更するマクロについて
お世話になります。

今回はこんな感じです。


コマンド: useri1
USERI1 の新しい値を入力 <1>: 1

コマンド: dimscale

DIMSCALE の新しい値を入力 <1.0000>: 1

コマンド: ltscale
新しい線種尺度を入力 <10.0000>: 10

コマンド: limits

モデル空間 の図面範囲をリセット:
左下コーナーを指定 または [オン(ON)/オフ(OF)] <0.0000,0.0000>: 0,0

右上コーナーを指定 <841.0000,594.0000>: 841,+594

コマンド: zoom

窓のコーナーを指定、表示倍率を入力(nX または nXP) または
[図面全体(A)/中心点(C)/ダイナミック(D)/オブジェクト範囲(E)/前画面(P)/倍率(S)/窓(W)/選択オブジェクト(O)] <リアル タイム>: w

最初のコーナーを指定: 0,0
もう一方のコーナーを指定: 841,+594

コマンド: -layer

現在の画層: "0"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: a

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: s

新しい画層状態の名前を入力: now

画層状態
表示 はい
フリーズ はい
ロック はい
印刷する はい
新ビューポートでフリーズ はい
色 はい
線種 はい
線の太さ はい
透過性 はい
印刷スタイル はい

変更する画層状態を入力
[表示(O)/フリーズ(F)/ロック(L)/印刷(P)/新ビューポートでフリーズ(N)/色(C)/線種(T)/線の太さ(W)/透過性(TR)/印刷スタイル(S)]:

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]:
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: lo

ロック にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u

ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: s

現在層にする画層名を入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]:

コマンド: erase

オブジェクトを選択: all
認識された数: 4
3 個はロックされた画層上にあります。

オブジェクトを選択:

コマンド: -insert
ブロック名を入力 または [一覧(?)]: MCCA1

単位: 単位なし 変換: 1.00000000
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: s
XYZ 軸に対する尺度を指定 <1>: 1
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: 0,0

回転角度を指定 <0>: 0

コマンド: -layer

現在の画層: "FRAME"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u

ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]:

コマンド: -insert
ブロック名を入力 または [一覧(?)] <MCCA1>: TITLE2

単位: 単位なし 変換: 1.00000000
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: s
XYZ 軸に対する尺度を指定 <1>: 1
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: 704,+15

回転角度を指定 <0>: 0

属性値を入力
エリア名:
図面名称:
図面番号:
西暦:
月:
日:
作図:
担当:
検視:
検視:
承認:
REV:
分子: 1:
分母: 1
縮尺2:
縮尺3:
整理番号:
種別:
分図:
図面履歴:

コマンド: -layer

現在の画層: "FRAME"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: a

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: r

復元する画層状態の名前を入力 または [一覧(?)]: now

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: d

削除する画層状態の名前を入力 または [一覧(?)]: now

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]:
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]:
  • 山本
  • 2017/03/03 (Fri) 10:40:40
Re: 図面枠を変更するマクロについて
erase;all;;を削除してみました。
あと、最後の部分に「;」追加しました。

こちらの2013で動作確認済みです。


^C^Cuseri1;\dimscale;\ltscale;$M=$(*,10,$(getvar,dimscale));limits;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));zoom;w;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));-layer;a;s;now;;;lo;*;u;frame;s;frame;;-insert;$(nth,$(getvar,useri1),A0,A1,A2,A3,A4);s;$(getvar,dimscale);0,0;0;-layer;u;*;;-insert;TITLE2;s;$(getvar,dimscale);$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,704,464.5,291.5,166.75,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,15,10.8,9.5,10.4,297));0;;;;;;;;;;;;;1:;$(getvar,dimscale);;;;;;;-layer;a;r;now;d;now;;^M
  • とってぃ
  • 2017/03/03 (Fri) 11:37:44
Re: 図面枠を変更するマクロについて
今回はこんな感じです。
宜しくお願いします。


コマンド: useri1

USERI1 の新しい値を入力 <1>: 1

コマンド: dimscale

DIMSCALE の新しい値を入力 <1.0000>: 1

コマンド: ltscale
新しい線種尺度を入力 <10.0000>: 10

コマンド: limits

モデル空間 の図面範囲をリセット:
左下コーナーを指定 または [オン(ON)/オフ(OF)] <0.0000,0.0000>: 0,0

右上コーナーを指定 <841.0000,594.0000>: 841,+594

コマンド: zoom

窓のコーナーを指定、表示倍率を入力(nX または nXP) または
[図面全体(A)/中心点(C)/ダイナミック(D)/オブジェクト範囲(E)/前画面(P)/倍率(S)/窓(W)/選択オブジェクト(O)] <リアル タイム>: w

最初のコーナーを指定: 0,0
もう一方のコーナーを指定: 841,+594

コマンド: -layer

現在の画層: "0"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: a

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: s

新しい画層状態の名前を入力: now

画層状態
表示 はい
フリーズ はい
ロック はい
印刷する はい
新ビューポートでフリーズ はい
色 はい
線種 はい
線の太さ はい
透過性 はい
印刷スタイル はい

変更する画層状態を入力
[表示(O)/フリーズ(F)/ロック(L)/印刷(P)/新ビューポートでフリーズ(N)/色(C)/線種(T)/線の太さ(W)/透過性(TR)/印刷スタイル(S)]:

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]:
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: lo

ロック にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u

ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: s

現在層にする画層名を入力 または <オブジェクトを選択>: frame
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]:

コマンド: -insert
ブロック名を入力 または [一覧(?)]: MCCA1

単位: 単位なし 変換: 1.00000000
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: s
XYZ 軸に対する尺度を指定 <1>: 1
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: 0,0

回転角度を指定 <0>: 0

コマンド: -layer

現在の画層: "FRAME"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: u

ロック解除 にする画層の名前リストを入力 または <オブジェクトを選択>: *
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]:

コマンド: -insert
ブロック名を入力 または [一覧(?)] <MCCA1>: TITLE2

単位: 単位なし 変換: 1.00000000
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: s
XYZ 軸に対する尺度を指定 <1>: 1
挿入位置を指定 または [基点(B)/尺度(S)/X/Y/Z/回転(R)]: 704,+15

回転角度を指定 <0>: 0

属性値を入力
エリア名:
図面名称:
図面番号:
西暦:
月:
日:
作図:
担当:
検視:
検視:
承認:
REV:
分子: 1:
分母: 1
縮尺2:
縮尺3:
整理番号:
種別:
分図:
図面履歴:

コマンド: -layer

現在の画層: "FRAME"
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]: a

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: r

復元する画層状態の名前を入力 または [一覧(?)]: now

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]: d

削除する画層状態の名前を入力 または [一覧(?)]: now

オプションを入力 [一覧(?)/保存(S)/復元(R)/変更(E)/名前(N)/削除(D)/読み込み(I)/書き出し(EX)]:
オプションを入力
[一覧(?)/現在の層の新規作成(M)/現在の層の変更(S)/新規作成(N)/名前変更(R)/表示(ON)/非表示(OFF)/色設定(C)/線種設定(L)/線の太さ(LW)/透過性(TR)/マテリアル(MAT)/印刷(P)/フリーズ(F)/フリーズ解除(T)/ロック(LO)/ロック解除(U)/画層状態(A)/説明(D)/正規画層(E)]:

コマンド: *キャンセル*
  • 山本
  • 2017/03/04 (Sat) 02:52:13
Re: 図面枠を変更するマクロについて
⬆の流れで、何が問題なんでしょうか?

ちゃんと動作しているように見えますが・・
  • とってぃ
  • 2017/03/05 (Sun) 12:33:55
Re: 図面枠を変更するマクロについて
お世話になります。
書き込みすると・・・スパム投稿と言われてなかなか書き込みが出来ません。

先日のマクロの件ですが、新規作成よりテンプレートを選び尺度1/1の場合は問題ないのですが、尺度1/10とかにした場合は最初の図枠が残ったままになってしまいます。
  • 山本
  • 2017/03/07 (Tue) 07:44:08
Re: 図面枠を変更するマクロについて
了解しました。

こちらをお試しください。


^C^Cuseri1;\dimscale;\ltscale;$M=$(*,10,$(getvar,dimscale));limits;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));zoom;w;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));-layer;a;s;now;;;lo;*;u;frame;s;frame;;erase;all;;-insert;$(nth,$(getvar,useri1),A0,A1,A2,A3,A4);s;$(getvar,dimscale);0,0;0;-layer;u;*;;-insert;TITLE2;s;$(getvar,dimscale);$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,704,464.5,291.5,166.75,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,15,10.8,9.5,10.4,297));0;;;;;;;;;;;;;1:;$(getvar,dimscale);;;;;;;-layer;a;r;now;d;now;;^M
  • とってぃ
  • 2017/03/07 (Tue) 08:04:28
Re: 図面枠を変更するマクロについて
お世話になります。

元の図枠は消えるようになりました。
ありがとうございます。

後、尺度を変更した時に寸法スタイル管理内の
[フィット]→[全体の尺度]の数値をマクロを使って変更する事は可能ですか?
  • 山本
  • 2017/03/07 (Tue) 10:03:44
Re: 図面枠を変更するマクロについて
マクロ冒頭の
^C^Cuseri1;\dimscale;\

dimscaleコマンドで変更されてます。
  • とってぃ
  • 2017/03/07 (Tue) 10:42:23
Re: 図面枠を変更するマクロについて
お世話になります。

マクロに関して全く無知で申し訳ございません。
dimscaleコマンドで何が出来るのか分かりませんが・・・
現状は図枠の尺度をマクロにて変更した後に
[寸法スタイル管理]を開いて〈優先スタイル〉を
右クリックして[現在のスタイルに登録]を押して
初めて[フィット]の全体の尺度が反映出来ます。

上記までマクロでする事は出来ないのでしょうか?
  • 山本
  • 2017/03/07 (Tue) 11:36:57
Re: 図面枠を変更するマクロについて
-dimstyle;s;「現在の寸法スタイル名」;y;

上記マクロを、

^C^Cuseri1;\dimscale;\ 以降に組み込めば可能です。


^C^Cuseri1;\dimscale;\-dimstyle;s;「現在の寸法スタイル名」;y;ltscale;$M=$(*,10,$(getvar,dimscale));limits;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));zoom;w;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,594,420,297,210,297));-layer;a;s;now;;;lo;*;u;frame;s;frame;;erase;all;;-insert;$(nth,$(getvar,useri1),A0,A1,A2,A3,A4);s;$(getvar,dimscale);0,0;0;-layer;u;*;;-insert;TITLE2;s;$(getvar,dimscale);$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),1188,704,464.5,291.5,166.75,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),
841,15,10.8,9.5,10.4,297));0;;;;;;;;;;;;;1:;$(getvar,dimscale);;;;;;;-layer;a;r;now;d;now;;^M


「現在の寸法スタイル名」を変更してお使いください。
  • とってぃ
  • 2017/03/07 (Tue) 11:46:13
Re: 図面枠を変更するマクロについて
お世話になります。

とってぃ様、ありがとうございます。
思い通りの動きをしてくれました。

因みに以前、お話をしましたが
現在、A0の図枠は使ってないので
マクロ内のA0を消したいと思ってますが
どれを削除すればよいのですか?
  • 山本
  • 2017/03/07 (Tue) 12:34:36
Re: 図面枠を変更するマクロについて
無理に消さなくても
最初の「useri1;\」で0を記入しなければいいだけとは思いますが

消すのであれば、こんな感じでしょうか?

^C^Cuseri1;\dimscale;\-dimstyle;s;「現在の寸法スタイル名」;y;ltscale;$M=$(*,10,$(getvar,dimscale));limits;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),,594,420,297,210,297));zoom;w;0,0;$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),,841,594,420,297,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),,594,420,297,210,297));-layer;a;s;now;;;lo;*;u;frame;s;frame;;erase;all;;-insert;$(nth,$(getvar,useri1),,A1,A2,A3,A4);s;$(getvar,dimscale);0,0;0;-layer;u;*;;-insert;TITLE2;s;$(getvar,dimscale);$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),,704,464.5,291.5,166.75,210)),+$(*,$(getvar,dimscale),$(nth,$(getvar,useri1),,15,10.8,9.5,10.4,297));0;;;;;;;;;;;;;1:;$(getvar,dimscale);;;;;;;-layer;a;r;now;d;now;;^M

動作確認はしていません。


尚、useri1;\で0を記入すると、動作しない可能性大です。
  • とってぃ
  • 2017/03/07 (Tue) 13:06:30
Re: 図面枠を変更するマクロについて
お世話になります。

とってぃ様、ありがとうございました。
先程のマクロも問題なく動きました。
  • 山本
  • 2017/03/07 (Tue) 17:57:32

返信フォーム






プレビュー (投稿前に内容を確認)