【Jw_cad】 Excelで外部変形

Jw_cadの外部変形をExcelで作成したものをUPしています。
勉強中の為いろいろと怪しげな感じに仕上がっています。
お勧めのVBA・外部変形解説HP、作成した外部変形の問題点等教えていただけると嬉しいです。
最新データはこちらからリンクされているものです。
※Excel関連の掲示板で質問に利用していたHNと統一するため途中でHNを変えています。

この掲示板はこちらで無料で借りることができます。

[ HOME一覧表示ツリー表示トピック表示新規投稿記事検索記事修正・削除携帯用URL管理用 ]


[120] H22.1.27 Excel文字外変 置換/集計/寸法反転/角度訂正 Name:O.M Date:2010/01/27(水) 11:23 [ 返信 ]
VBSなどその他ソフトをかませずbatファイルとエクセルのみでVBS経由の寸法反転のような処理ができる方法がありましたら教えていただきたいです。

H22.1.27変更内容
Excel置換
 1)batファイル表示文字訂正
Excel寸法反転
 1)batファイル線幅情報取得・曲線情報除外・ソリッド情報除外に変更
Excel文字角度訂正
 1)batファイル線幅情報取得・曲線情報除外・ソリッド情報除外に変更

詳しくは下記サイトか同封のTEXTファイルで確認して下さい。
http://blogs.yahoo.co.jp/nekobasu83/folder/553597.html


[124] H22.1.29 Excel文字外変 置換/集計/寸法反転/角度訂正 Name:O.M HOME Date:2010/01/29(金) 21:24
VBSなどその他ソフトをかませずbatファイルとエクセルのみでVBS経由の寸法反転のような処理ができる方法がありましたら教えていただきたいです。

H22.1.29変更内容
Excel置換 Ver0.01
 1)置換設定ユーザーフォムで結果確認保存設定を起動時に読み込まなくなっていたので読み込むように訂正
 2)結果確認が置換前と「置換後で文字が同じなら赤色」と逆設定になっていたので訂正
 3)標準モジュール名変更
 4)Run実行時のファイル名表記方法変更
 5)空白のみの文字の削除機能追加
 6)セル内容変更用コード追加
  半角→全角、全角→半角、半角数字→全角数字、全角数字→半角数字
  ※セル上で範囲選択→Alt+F8同時押→実行ボタン選択で実行

Excel集計 Ver0.01
 1)標準モジュール名変更
 2)Run実行時のファイル名表記方法変更
 3)セル内容変更用コード追加
  半角→全角、全角→半角、半角数字→全角数字、全角数字→半角数字
  ※セル上で範囲選択→Alt+F8同時押→実行ボタン選択で実行


詳しくは下記サイトか同封のTEXTファイルで確認して下さい。
http://blogs.yahoo.co.jp/nekobasu83/folder/553597.html


[122] H22.1.28 Excel複数図面置換Ver.0.01 Name:O.M HOME Date:2010/01/28(木) 02:29 [ 返信 ]
HiroCom777さん作 JwwDataViewerEx
JwwDataGlobalEx000
JwwDataModifyEx000
JwwDataReadVer0.95
JwwDataWriteVer0.85
を利用させていただいています。

HiroCom777さんHPのVBdeJWのは下記です。
http://www.h7.dion.ne.jp/~hirocom/VBdeJW/

ソフト説明は下記HPで確認してください。
http://blogs.yahoo.co.jp/nekobasu83/folder/553597.html


[123] H22.1.28 Excel複数図面置換Ver.0.02 Name:O.M HOME Date:2010/01/28(木) 17:13
HiroCom777さん作 JwwDataViewerEx
JwwDataGlobalEx000
JwwDataModifyEx000
JwwDataReadVer0.95
JwwDataWriteVer0.85
を利用させていただいています。

HiroCom777さんHPのVBdeJWのは下記です。
http://www.h7.dion.ne.jp/~hirocom/VBdeJW/

ソフト説明は下記HPで確認してください。
http://blogs.yahoo.co.jp/nekobasu83/folder/553597.html


[97] 作成中データ Name:O.M HOME Date:2009/11/27(金) 00:18 [ 返信 ]
機能追加したくていじりちゅー

VBdeJW HiroCom777さんのデータ利用
http://www.h7.dion.ne.jp/~hirocom/VBdeJW/

*ブロック図内の文字置換
*処理速度UP
*バックグラウンド処理
が目標、よくわかってないので教えてもらえたら嬉しいです。
(理解能力がないので理解できるかは怪しいです)

べんきょーちゅー
http://officetanaka.net/excel/vba/tips/tips23.htm


[110] 保存用の場所 Name:O.M HOME Date:2009/12/09(水) 16:49
いじり中2

[121] 保存用スペース2 Name:O.M Date:2010/01/27(水) 14:50
いじりちゅー

[119] H22.1.2 Excel複数図面置換 Name:O.M HOME Date:2010/01/02(土) 23:08 [ 返信 ]
HiroCom777さん作 JwwDataViewerEx
JwwDataGloballVer0.89
JwwDataReadVer0.95
JwwDataWriteVer0.85
JwwDataModifyVer0.25
を利用させていただいています。

HiroCom777さんHPのVBdeJWのは下記です。
http://www.h7.dion.ne.jp/~hirocom/VBdeJW/

ソフト説明は下記HPで確認してください。
http://blogs.yahoo.co.jp/nekobasu83/folder/553597.html


[118] H21.12.31 Excel複数図面置換 Name:O.M HOME Date:2009/12/31(木) 21:25 [ 返信 ]
※エラーありデータ(起動して1回目の置換実行時にエラーにあんる、2回目以降はOK)
HiroCom777さん作 JwwDataViewerEx
JwwDataGloballVer0.89
JwwDataReadVer0.95
JwwDataWriteVer0.85
JwwDataModifyVer0.25
を利用させていただいています。

HiroCom777さんHPのVBdeJWのは下記です。
http://www.h7.dion.ne.jp/~hirocom/VBdeJW/

ソフト説明は下記HPで確認してください。
http://blogs.yahoo.co.jp/nekobasu83/folder/553597.html


[117] H21.12.30 Excel複数図面置換 Name:O.M HOME Date:2009/12/30(水) 02:42 [ 返信 ]
HiroCom777さん作 JwwDataViewerEx
JwwDataGloballVer0.89
JwwDataReadVer0.95
JwwDataWriteVer0.85
JwwDataModifyVer0.25
を利用させていただいています。

HiroCom777さんHPのVBdeJWのは下記です。
http://www.h7.dion.ne.jp/~hirocom/VBdeJW/

ソフト説明は下記HPで確認してください。
http://blogs.yahoo.co.jp/nekobasu83/folder/553597.html


[116] H21.12.29 Excel複数図面置換 Name:O.M HOME Date:2009/12/29(火) 16:57 [ 返信 ]
※重大なエラーのあるデータです
訂正版はH21.12.30 Excel複数図面置換

HiroCom777さん作 JwwDataViewerEx
JwwDataGloballVer0.89
JwwDataReadVer0.95
JwwDataWriteVer0.85
JwwDataModifyVer0.25
を利用させていただいています。

HiroCom777さんHPのVBdeJWのは下記です。
http://www.h7.dion.ne.jp/~hirocom/VBdeJW/

ソフト説明は下記HPで確認してください。
http://blogs.yahoo.co.jp/nekobasu83/folder/553597.html


[115] H21.12.28(2) Excel複数図面置換 Name:O.M HOME Date:2009/12/28(月) 12:13 [ 返信 ]
HiroCom777さん作 JwwDataViewerEx
JwwDataGloballVer0.89
JwwDataReadVer0.95
JwwDataWriteVer0.85
JwwDataModifyVer0.25
を利用させていただいています。

HiroCom777さんHPのVBdeJWのは下記です。
http://www.h7.dion.ne.jp/~hirocom/VBdeJW/

ソフト説明は下記HPで確認してください。
http://blogs.yahoo.co.jp/nekobasu83/folder/553597.html


[114] H21.12.28 Excel複数図面置換 Name:O.M Date:2009/12/28(月) 01:25 [ 返信 ]
左下起点で複数図面の複数文字を置換します。

HiroCom777さん作 JwwDataViewerEx
JwwDataGloballVer0.89
JwwDataReadVer0.95
JwwDataWriteVer0.85
を利用しています。

HiroCom777さんHPのVBdeJWのは下記です。
http://www.h7.dion.ne.jp/~hirocom/VBdeJW/
※起点維持で文字置換する方法を掲示板で質問していますので分かる方いましたら教えていただきたいです。

ソフト説明は下記HPで確認してください。
http://blogs.yahoo.co.jp/nekobasu83/folder/553597.html


[71] 雑談・不具合報告用スレッド Name:O.M Date:2009/10/23(金) 14:54 [ 返信 ]
雑談や不具合報告などに利用して下さい。
掲示板下部の【管理者へ連絡】からメールしていただければ
メールでの御返信もします。
※メールはあまり確認して無いので反応が遅い可能性があります。

[77] RE:雑談・不具合報告用スレッド Name:いっち Date:2009/11/11(水) 18:48
こんばんは。
-----------------------------------
Jw_cadのページに書いたコメントは
削除しておきました。
(あそこは初心者板だし)
-----------------------------------
よくよく考えてみれば、
他言語が難しいわけではなくて、
今は、エクセルに夢中なのだから、
言語仕様のまったく異なる
ものを、同時に身につけようとするのは
少し無理があるっていうこと
なんじゃないかなって
思い直しました。

もう少しすれば、他言語だって
覚えられるようになると思います。
-----------------------------------
もし、このレスに不快感があるようでしたら、
速やかに削除して頂いて問題ありません。


[78] RE:雑談・不具合報告用スレッド Name:O.M Date:2009/11/11(水) 19:51
いっちさんこんばんは。
書き込みありがとうございます。

掲示板のコメントは拝見してたんですが、いろいろ指摘をうけたこともありきちんとした文章を書かねばと悶々と悩んで書き込めずにるうちに消えてしまっていて、あせってました。
(毎回かなり悩んで書き込むのですが失言が多いのでorz)

目先のコード作成にのみ夢中になって、手段を全く考えていなかったので、jwの掲示板に書き込んでいただいた件に関して、是非お礼をと思っていましたのでこちらに書き込んでいただきありがたいです。

VBSの方もデバックなども利用していなかったので、方法を提示していただいてすごく嬉しいです。

 エクセルは足・引・掛・割算しか分からない状態からネットで徐々にエクセルの公式を調べあらかたの式の組み方などを理解して、そこからマクロの記録→簡単なVBA自作へと順を追って進んでいったのですが(VBA作成しだすまでに2年程度)rubyはやりたい事が先にあって其れを実行するための手段を模索で、基礎ができてないのにいっきに発展系のことをしようとして余計混乱するのかなと反省中です。

 C言語のページも見てたりして、いろいろ手を出して何も身についていないというのもありますが・・・。

>エクセルに夢中
これもその通りで、エクセルにかけてる時間が一番長いというのも原因だと思います。
今はVBS経由でBookを非表示にしてユーザーフォームだけ表示させる方法を見つけて、それで外部変形をつくったら一見VBのように見えるんじゃないかと試行錯誤中です。

 理解能力も低いですしいろいろ手を出して余計に時間がかかるとは思いますが、地道に頑張ろうと思います。

指摘&書き込みありがとうございました。

[87] ブック非表示・ユーザーフォームのみ表示 Name:O.M Date:2009/11/23(月) 20:13
VBS経由でブック非表示にと書いていましたが、
エクセル起動時にブック非表示にしてユーザーフォーム起動でそれっぽくできました!

テンションあがりまくってます。
(テンションあがりすぎてて正常判断できてなさそうなので後でミス見つかりそうで怖いですが)

寸法反転も同じように対応させるか悩み中です。

追記
さっそくVBSファイルの同梱データ間違ってるの気がついて訂正しましたorz

[88] RE:雑談・不具合報告用スレッド Name:いっち Date:2009/11/23(月) 22:39
こんばんは。

>エクセル起動時にブック非表示にして
>ユーザーフォーム起動

まったくエクセルを表示させず、
ユーザーフォームのみ利用する方法なら
自分も作っていたのですが、
それとは違っていて、
O.Mさんのような作り方もあるんだなと、
思いました。

ユーザーフォームに力を入れられてるようで、
すばらしいフォームですね。

>テンションあがりまくってます。

そうおもいます。
エクセルは、楽しいですね。


[89] RE:雑談・不具合報告用スレッド Name:O.M Date:2009/11/24(火) 00:20
返信ありがとうございます。

いっちさんの発言を見てやっぱできるんだと思いいろいろ見返していたら、重大な間違いに気がつきました。

時々エラーになる(ブックを閉じたのに再度開こうとすると別のユーザーにより使われていると表示されて起動できない、対処法は再起動)と思ってたら別の場所に保存されている同名ブックが起動してました。

検索かけたら同名ブック1個に、原因不明ですがExcel置換のショートカットが200個ほど出てきて削除したら動作がきれいにいくようになりました。
※上記でエラーになっていたのを「終了時にBOOKが非表示になっていたらデータが読み込めず上手くいかない」と思い込み終了時にブックを再表示させてたのを消しました。

VBSを利用する場合とそうでない場合でエクセルのコードを変えるのは嫌な事、VBSからセルの値読みとって・・・などと考えて迷走してたのですが、
「エクセルのセルに文字記入して起動時判別してる」
ということで
1.VBSから非表示で起動
2.エクセル起動処理でセル記入の文字を判別して非表示or表示にする
(VBSで非表示にしていても、表示設定にしてるならエクセルの起動処理で表示に直す)
で対処で表示・非表示の場合両方対応できそうな気がしてます。

ただ、Excel非表示の場合にVBSを待機させるのが上手くいかず(1度対処できたと思ってたのですが勘違いでした)悩み中です。

教えていただいたコードの表示指定をFalseにするとエクセルにフォーカス(?)がいかないのか上手くいかず、(AppActiveで対応できるかと思ったのですがよくわからず)Runを利用すると待機させるのが楽なのかなと思ったのですが、エクセルの起動が遅いっぽいのと、Runの場合のマクロ有効にしての起動方法が分からないため挫折しました。

よろしければ非表示で起動して待機させる方法を教えていただきたいです。

追記
自宅のVista Excel2007、XP Excel2003では起動にそんなに時間がかからなかったのですが、会社のXP Excel2003ではアドインが入っていてアドイン読み込みでExcelの起動が遅くOpen処理で表示→非表示になるまでの時間が長く、いろいろなソフトが入っているせいか処理自体が遅く微妙でした。
最初のエクセル表示も1瞬で割と快適に動作すると思っていたので会社のPCの場合の動作の遅さにがっくりでしたorz

[92] RE:雑談・不具合報告用スレッド Name:O.M Date:2009/11/24(火) 15:15
教えていただいたVBScript逆引き大全500見ながら四苦八苦して自己解決しました!
ブックが開いているかどうかでVBSの終了を判別したかったのですがやり方がわからず、動けばいいだろう的な乱暴な書き方ですがなんとかうまく動きました。

[93] RE:雑談・不具合報告用スレッド Name:いっち Date:2009/11/24(火) 20:43
こんばんは。

>教えていただいたVBScript逆引き大全500見ながら四苦八苦して自己解決しました!

よかったです。
-----------------------------------------------------------------------------
ご存知だとは思いますが、念のため、
基本的なことだけ書かせて頂きます。

VBSからエクセルを非表示にして、ユーザーフォームを出し、
ユーザーフォームを閉じたら終了するものでしたら、
待機のコードは不要です。

※ユーザーフォームが1つしかなく、モードレスでない場合。
(自分で作っているものは、このパターンが多いです。)
-----------------------------------------------------------------------------
エクセルを非表示にして利用する場合に問題となるのは、
エクセル非表示の状態で、エラーが発生した場合への
対処だと思います。

対処方法としては、
1.エラーが発生したら、エクセルを表示させる。
2.エラーが発生したら、直に終了させる。

のいずれかではないでしょうか。

自分の場合は、1.のエラーが発生したら、エクセルを表示させる。
でやっています。

なぜそのように対処するのかは、対処させない状態で
エラーが発生した場合を、体験するとわかりますが
そのブックを再度、開けなくなります。

体験してしまった場合の一番簡単な対処方法は、
パソコンを再起動するのが一番簡単です。

↑書籍によっては、再起動させない方法を、説明してあるものが
 あるかもしれませんけど。

...というか、もう体験されたんじゃないでしょうか。
--------------------------------------------------
余談ですが、非表示の状態で、無限ループにおちいると
結構あせります。

自分は、そのようなやってはいけないミスを
過去に1度だけやってしまいました。(汗


[94] RE:雑談・不具合報告用スレッド Name:O.M Date:2009/11/24(火) 21:40
丁寧にありがとうございます。
無限ループはまさしく陥っていてVBSファイルに訂正をかけました、かなりあわててうろたえていました。


>VBSからエクセルを非表示にして、ユーザーフォームを出し、
>ユーザーフォームを閉じたら終了するものでしたら、
>待機のコードは不要です。
いまさら全見直しする気力がないのでユーザーフォーム2つ+BOOKを行き来予定ですので今のコードで行こうかと思ってます。

ブックが開けなくなるエラーですが、起きなくなったと思ってたのですがいじっていたら置きました。

http://park11.wakwak.com/~miko/Excel_Note/11-01_userform.htm
に閉じる際にブックを表示するとありますし、最初にやっていた閉じる際にブックをを表示させる方法が正解で、再表示の記述を消しちゃったのが間違いだったのかなと思って訂正予定です。
(それで起動できなくなるエラーがで無くなったはずなので、よくわからないのでいじり倒してそれで大丈夫か確認してみます)

丁寧なご説明ありがとうございました、これから頑張ってみます!

≪結果≫
全部のエラーに対応しているかというと不安ですが、エラー時にBOOK表示にできたような気がします。

最初にブック全体にわたってエラー処理しなきゃいけないのかと思いエラー時に表示という方法は半分あきらめていたのですが、よくよく考えたらブックが非表示になっている間に使われるコードだけにエラートラップすればいいという事に気がついて処理かけてみたところ、いじった限りでは異常が出なくなりました。

ミスが多いので見落としがあるかもしれませんが、とりあえずは完成かと思います、ありがとうございます!

追記
ふとBook終了コードいれてたはの部分でもエラー出てなかったっけと思いコード見返してみたら、Me.hide入れて満足してUnload Me入れ忘れてました。
もしかしてこれもエラーー原因だったかもしれません。

[100] RE:雑談・不具合報告用スレッド Name:いっち Date:2009/11/27(金) 19:24
こんばんは。

>VBSファイルがいっぱいになるのでまとめる方法があったら教えてほしいです。

どういうことを考えているのかはわかりませんけど、2つの方法で。
------------------------------------------------------------------------
(1つめ)

BATからVBSにコマンドラインオプションを送ると、
VBS内で受け取ったコマンドラインオプションを元に
動作を分けられます。

今のO.Mさんなら、ご自分で調べられるんじゃないかと思います。
エクセルを学ぶ上で、VBScriptの知識は、必須だと思いますので。
------------------------------------------------------------------------
(2つめ)

VBSのコードをBAT内に記載する方法というのがあります。

しかし、個人的にはこの方法を好みません。
そのような方法では、VBScriptのデバッグが出来なくなるからです。

しかしながら、わずか数行しかなく、デバッグする必要が無いものまで、
良くないとも言い切れませんので、O.Mさんの利用している
VBScript程度であれば、こちらでも良いかもしれません。(簡単だし。)

あえて、どこのホームページをご覧になれば良いか
書かなくても、わかるんじゃないかと思います。
------------------------------------------------------------------------


[101] RE:雑談・不具合報告用スレッド Name:O.M Date:2009/11/27(金) 19:33
検索は上手い方だとよく言われるのですが、今回vbsからbatファイルに引数を送るパターンばかりヒットしてなかなかこれだと思うものに行き当たりません。

batファイルから引数を送る
http://oshiete1.goo.ne.jp/qa4716356.html
VBSで引数を受け取る
http://blog.livedoor.jp/akf0/archives/51368492.html
おそらく上記の内容でビンゴじゃないかと思ってるんですが寝不足で頭が働かなくなってるので(というか寝てしまいそう)明日になるかもしれません。
VBS経由でExcelコード実行
http://chaichan.web.infoseek.co.jp/vbtips/VBMemo2006082401.htm

11/30追記
コマンドライン引数取得
http://chaichan.web.infoseek.co.jp/vbtips/VBMemo2006082201.htm

12/02追記
VBSその他経由でExcelコード実行
http://oshiete1.goo.ne.jp/qa4276876.html

[102] RE:雑談・不具合報告用スレッド Name:sugi Date:2009/11/28(土) 00:54
BATファイルから引数を受けとるやりかたです。

あまり、答えそのものというのもどうかと思うのですが、外部変形
の作成に慣れてくればこの辺の処理は誰が作っても同じような感じ
になると思うので。:-)

--
sugi


[103] RE:雑談・不具合報告用スレッド Name:O.M HOME Date:2009/11/28(土) 01:44
sugiさんありがとうございます、綺麗に動作しました。
掲示板にUPしていたVBSコードを使って書いていただいたおかげで利用方法を一発で理解できました。
(ちょっと書き方変わるとすぐ理解できなくなるような状態なので)
自分でも利用できるようになったと思います。


下記のような感じかと思って試行錯誤中で回答から遠いとこにいました。

batファイル

wscript.exe "C:\args.vbs" "1" "2" "3" "4" "5" "6" "7" "8" "9"

VBS

Dim oParam
Set oParam = WScript.Arguments
Dim idx

If oParam(1) = "1" Then
・・・
Elseif oParam(2) = "2" Then
・・・
Elseif oParam(3) = "3" Then
・・・


分かると簡単に思えるのですが、分からない状態だと本当に分からずずーっとひたすら悩み続けてしまうので、本当にありがとうございます。
(エクセルのクラスモジュールとかここ3カ月位調べてるんですがいまだにわかってなかったりします)

それから、寸法の質問の際に図示していただいたデータで文字データの構成が理解できて、寸法関連のデータの処理がとてもはかどりました、ありがとうございます。
(教えていただいたベクトルはいまだ理解できてないのですが・・・わかりそうでわからないorz)


sugiさんがRubyを使いこなしてるのを見て自分も使いたいと思いとRubyも調べてるのですが、そちらも全然進んでなかったりします(寸法と文字に色をつけるRuby愛用してます、ありがとうございます)
エクセルとJWも3年目でやっと結構わかるようになった気がしているとこなのでRubyも数年かけて調べようと思ってます。

ありがとうございました。

[105] RE:雑談・不具合報告用スレッド Name:O.M Date:2009/11/28(土) 19:47
sugiさんの書いてくださったbatファイルのコードを多少改変して、VBSのコードの繰り返し部分をまとめて短くしてUPしなおしました、ありがとうございます!

同じコードはcallで呼べばいいのかなとcall方法調べようと悩んでたのですが、callする必要がないのにやっと気がつきました。

[112] RE:雑談・不具合報告用スレッド Name:いっち Date:2009/12/23(水) 00:24
O.Mさん、こんばんは。

今回、sugiさんが、Jw_cadのページで、公開された
円の個数を数える外変ってありますね。

あれは、とっても判りやすいコードで、
Rubyをまったく勉強していない自分がみても、
コード展開を追えました。
-------------------------------------------------
確実に理解するのに、今の自分はRubyでは無理なので、
自分が判る言語で、同様なものをつくると、
sugiさんの外変のコードの意味がより良く
判りました。
-------------------------------------------------
今のO.Mさんは、どちらかというと
VBdeJWさんに夢中になっておられるようなので、
jwc_temp.txtの読み書きからは、
少し離れているかもしれないけど、

エクセルで、あれと同一のものを
作られると、Rubyまで、少しわかるんじゃ
ないかなとふと、思いました。
(いづれ、Ruby外変も、つくられるんですよね?)
まぁ、おせっかいかもしれませんけど。

...既に理解されているようでしたら、
   申し分けないです。


[113] RE:雑談・不具合報告用スレッド Name:O.M Date:2009/12/23(水) 21:04
いっちさんこんばんは。
親切にありがとうございます。

あっちに手を出しこっちに手を出し浮気性でrubyも勉強中です〜。
sugiさんのデータも解析試み中なのですが、大まかにどこで何をやっているかというのは何となく予測付けれてるとおもうのですが、詳しくは理解できてない感じです。

VBAでの対比表とか作ってみます!


[ HOME一覧表示ツリー表示トピック表示新規投稿記事検索記事修正・削除携帯用URL管理用 ]
1件〜10件(全49件)  12345       <RSS>    【管理者へ連絡


WEBでき掲示板 無料レンタル掲示板