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

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

VER2022 119.矩形 自動対角線作図
AucoCAD2022 で119.矩形 自動対角線作図が途中で止まるようになりました。
(2021までは正常に動いていました)
以下がマクロ中の動作です。
「コマンド:
コマンド:
コマンド: setenv
変数名を入力: to
値 <0>: 0
コマンド:
コマンド: setenv
変数名を入力: OFFSET
値 <366>: *キャンセル*
; エラー: 関数は取り消されました
コマンド:
コマンド:
コマンド: setenv
変数名を入力: to
値 <0>: 0
コマンド:
コマンド: select
オブジェクトを選択: もう一方のコーナーを指定: 認識された数: 3
オブジェクトを選択: もう一方のコーナーを指定: 認識された数: 3, 総数 6
オブジェクトを選択:
コマンド: copybase
基点を指定: non
0<0
オブジェクトを選択: p
認識された数: 6
オブジェクトを選択:
コマンド: setenv
変数名を入力: gm
値 <0>: 0
コマンド:
コマンド:
SETENV
変数名を入力: to
値 <0>: 1
コマンド:
コマンド:
コマンド:
コマンド: setenv
変数名を入力: to
値 <1>: 0
コマンド:
コマンド:
SETENV
変数名を入力: to
値 <0>: 2
コマンド:
コマンド: gridmode
GRIDMODE の新しい値を入力 <0>: 0
コマンド: erase
オブジェクトを選択: p
認識された数: 6
オブジェクトを選択:
コマンド: pasteblock
重複したブロック定義 BDOT は無視されます。
挿入点を指定: non
0<0
コマンド: explode
オブジェクトを選択: l
コマンド: erase
オブジェクトを選択: p
認識された数: 6
オブジェクトを選択: r
除外するオブジェクトを選択: l
認識された数: 1, 除外された数: 1, 総数 5
除外するオブジェクトを選択:
コマンド:
コマンド:
コマンド: setenv
変数名を入力: to
値 <2>: 0
コマンド:
コマンド: ucs
現在の UCS 名: *ワールド*
UCS 原点を指定 または [面(F)/名前の付いた UCS(NA)/オブジェクト(OB)/直前(P)/ビュー(V)/ワールド(W)/X/Y/Z/Z 軸(ZA)] <ワールド>: ob
UCS を位置合わせするオブジェクトを選択: l
コマンド: id
点を指定: non
0<0
X = 0.0000 Y = 0.0000 Z = 0.0000
コマンド: explode
オブジェクトを選択: l
コマンド: erase
オブジェクトを選択: l
認識された数: 1
オブジェクトを選択:
コマンド: ucs
現在の UCS 名: *名前なし*
UCS 原点を指定 または [面(F)/名前の付いた UCS(NA)/オブジェクト(OB)/直前(P)/ビュー(V)/ワールド(W)/X/Y/Z/Z 軸(ZA)] <ワールド>: ob
UCS を位置合わせするオブジェクトを選択: l
コマンド: erase
オブジェクトを選択: l
認識された数: 1
オブジェクトを選択:
コマンド:
ERASE
オブジェクトを選択: l
認識された数: 1
オブジェクトを選択:
コマンド:
ERASE
オブジェクトを選択: l
認識された数: 1
オブジェクトを選択:
コマンド: line
1 点目を指定: non
@
次の点を指定 または [元に戻す(U)]: non
0<0
次の点を指定 または [元に戻す(U)]:
コマンド: ucs
現在の UCS 名: *名前なし*
UCS 原点を指定 または [面(F)/名前の付いた UCS(NA)/オブジェクト(OB)/直前(P)/ビュー(V)/ワールド(W)/X/Y/Z/Z 軸(ZA)] <ワールド>: ob
UCS を位置合わせするオブジェクトを選択: l
コマンド: lengthen
計測するオブジェクトを選択 または [増減(DE)/比率(P)/全体(T)/ダイナミック(DY)] <全体(T)>: l
現在の長さ: 14869.6609
計測するオブジェクトを選択 または [増減(DE)/比率(P)/全体(T)/ダイナミック(DY)] <全体(T)>:
全体の長さを入力 または [角度(A)] <1.0000>:
変更するオブジェクトを選択 または [元に戻す(U)]:
コマンド: setenv
変数名を入力: to
値 <0>: 3
コマンド:
コマンド:
コマンド:
コマンド: setenv
変数名を入力: to
値 <3>: 0
コマンド:
コマンド:
SETENV
変数名を入力: to
値 <0>: 4
コマンド:
コマンド: id
点を指定: non
7434.83047268<0
X = 7434.8305 Y = 0.0000 Z = 0.0000
コマンド: ucs
現在の UCS 名: *名前なし*
UCS 原点を指定 または [面(F)/名前の付いた UCS(NA)/オブジェクト(OB)/直前(P)/ビュー(V)/ワールド(W)/X/Y/Z/Z 軸(ZA)] <ワールド>: p
コマンド:
UCS
現在の UCS 名: *名前なし*
UCS 原点を指定 または [面(F)/名前の付いた UCS(NA)/オブジェクト(OB)/直前(P)/ビュー(V)/ワールド(W)/X/Y/Z/Z 軸(ZA)] <ワールド>: p
コマンド:
UCS
現在の UCS 名: *名前なし*
UCS 原点を指定 または [面(F)/名前の付いた UCS(NA)/オブジェクト(OB)/直前(P)/ビュー(V)/ワールド(W)/X/Y/Z/Z 軸(ZA)] <ワールド>: p
コマンド: id
点を指定: non
@
X = 161218.1019 Y = 45675.9390 Z = 0.0000
コマンド: ucs
現在の UCS 名: *ワールド*
UCS 原点を指定 または [面(F)/名前の付いた UCS(NA)/オブジェクト(OB)/直前(P)/ビュー(V)/ワールド(W)/X/Y/Z/Z 軸(ZA)] <ワールド>: o
新しい原点を指定 <0,0,0>: non
161218.10190483,45675.93904412,0
コマンド:
コマンド:
コマンド: setenv
変数名を入力: to
値 <4>: 0
コマンド:
コマンド:
SETENV
変数名を入力: to
値 <0>: 5
コマンド:
コマンド: mirror
オブジェクトを選択: l
認識された数: 1
オブジェクトを選択:
対称軸の 1 点目を指定: non
10<0
対称軸の 2 点目を指定: non
-10<0
元のオブジェクトを消去しますか? [はい(Y)/いいえ(N)] <いいえ>: n
コマンド: ucs
現在の UCS 名: *名前なし*
UCS 原点を指定 または [面(F)/名前の付いた UCS(NA)/オブジェクト(OB)/直前(P)/ビュー(V)/ワールド(W)/X/Y/Z/Z 軸(ZA)] <ワールド>: p
コマンド: pasteblock
コマンド: non
そのようなコマンド "NON" はありません。ヘルプを表示するには F1 キーを押してください。
コマンド: 0<0
そのようなコマンド "0<0" はありません。ヘルプを表示するには F1 キーを押してください。
コマンド: explode
オブジェクトを選択: l
オブジェクトは分解できません。
何も見つかりません。
オブジェクトを選択: copybase
*選択無効*
点を指定 または 最後(L)/すべて(ALL)/グループ(G)」

ポリラインの四角形を6個選択した後、1個目を作図して止まっています。

治りますでしょうか?よろしくお願いいたします。
  • つの
  • MAIL
  • 2021/06/09 (Wed) 13:47:23
Re: VER2022 119.矩形 自動対角線作図
その履歴を見るとマクロが機能しないというより、クリップボードに異常がありそうな感じです。
どの図面でも駄目ですか?新規図面でも?

そのエラーが出る図面で、何かのオブジェクトをコピー(複写コマンドではなくクリップボードにコピー)して、
そのまま、その図面に貼り付ける事はできますか?
  • Lon
  • 2021/06/09 (Wed) 14:21:38
Re: VER2022 119.矩形 自動対角線作図
返信ありがとうございます。

試しに新規図面でポリラインを書いてコマンド実行してみましたが
やはり途中で止まってしまいました。

クリップボードを使ってのコピーは問題なく使えています。

参考になるか分かりませんが、止まった段階のスクショを添付します。
  • つの
  • MAIL
  • 2021/06/09 (Wed) 16:29:35
Re: VER2022 119.矩形 自動対角線作図
画像が送れていませんでした
  • つの
  • 2021/06/09 (Wed) 16:31:49
Re: VER2022 119.矩形 自動対角線作図
ポリラインを1つだけ選択したときは正常ですか?
  • Lon
  • 2021/06/09 (Wed) 17:46:55
Re: VER2022 119.矩形 自動対角線作図
1つだけの時でも、対角線が記入されてポリラインが消えている状態(上の画像と同じ状態)で止まってしまいます。
  • つの
  • 2021/06/10 (Thu) 10:29:16
Re: VER2022 119.矩形 自動対角線作図
コマンド履歴の下記の部分がマクロが止まる原因です。

>コマンド: pasteblock
>コマンド: non
>そのようなコマンド "NON" はありません。ヘルプを表示するには F1 キーを押してください。


この様な表示になるのは、クリップボードに何も入っていない時です。
パソコンを起動してすぐにCADを起動し、pasteblockコマンドを実行すると同様になります。

CADのオブジェクトをコピーした後や、何かのテキスト(CAD以外のアプリのテキストでも)をコピーした後に、
pasteblockコマンドを実行すると「挿入点を指定:」となるはずなんです。


一方、コマンド履歴では、pasteblockコマンド実行よりも前に

>コマンド: copybase
>基点を指定: non
>0<0
>オブジェクトを選択: p
>認識された数: 6
>オブジェクトを選択:

と、正常にクリップボードへオブジェクトがコピーされています。
「クリップボードに何も入っていない」状況ではないんです。

つまり、クリップボードへコピーしたはずなのに空になっている。

ですから、クリップボードに異常が有ると判断しました。
マクロ自体に異常はなさそうなので、当方では対応策は分かりません。
  • Lon
  • 2021/06/10 (Thu) 12:59:12
Re: VER2022 119.矩形 自動対角線作図
詳しく解説ありがとうございます。
どういう現象で止まっているかが分かりすっきりしました。

クリップボードの異常とのことなので、ちょっと調べてみようと思います。

丁寧にご対応くださってありがとうございました。
  • つの
  • 2021/06/10 (Thu) 14:42:45
Re: VER2022 119.矩形 自動対角線作図
今2021バージョンから設定をマイグレートしなおしたところ、
今のところ止まらずに正常に動くようになりました。

念のためご報告させていただきます。

ご迷惑をおかけいたしました。
  • つの
  • 2021/06/10 (Thu) 14:55:01
Re: VER2022 119.矩形 自動対角線作図
久しぶりでございます。

あれから、やはり同じ症状が起こり悩み続けていましたが、
この度解決できましたのでご報告だけさせていただきます。
(同じ症状の方がもしかしたら出るかもしれないので)

WINDOWSの設定で、「クリップボードの履歴を残す」設定にしていると、
今回の症状になるようです。

デフォルトでは履歴を残さない設定になっていて、私のPCも履歴を残さない設定に戻したところ、マクロが正常に動くようになりました。

「クリップボードの異常だろう」という指摘がずっと引っかかっていたのですが、
その助言のおかげで無事解決できました。

ありがとうございました!
  • つの
  • 2021/08/13 (Fri) 14:44:44
Re: VER2022 119.矩形 自動対角線作図
これ僕にも当てはまりました。
クリップボードの履歴を残すをオンにしているとマクロのスピードが早くて
クリップボードの値を取りに言っている間に流れちゃってクリップボードの戻り値が
取れない感じですね。
Lonさんもよく気づいたなー。
  • zukki-
  • 2021/08/29 (Sun) 20:44:25

返信フォーム






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