KoMaDo   VISIO SQUARE : VB/VBA  ■ Headline ■ HOME    

 KoMaDo / Headline / category :  【VISIO全般】  【News/宣伝】  【図形・操作】  【ファイル変換】  【ShapeSheet】  【VB/VBA】  【雑談その他】 ;

111 : イベント中にシェイプのCellの値が変更できない(01)  112 :VISIOシェイプのアングルをVBAで制御したい(04)  113 :画像ファイル出力オプションの指定方法について(05)  114 :見積書の自動作成(08)  115 :グループへの追加・削除について(04)  116 :DistanceFromメソッドがおかしい(05)  117 :OpenExで指定するファイル名と実際に開かれるファイル(09)  118 :Visual Studio .Net 2002からVisioにアタッチ(15)  119 :シェイプのテキスト文字数について(06)  120 :SelectionのDrop先(03)  121 :シェイプをレイヤに配置させたい(03)  122 :グループ化でオートメーション エラー(09)  123 :CTR+Zのときのイベントについて(03)  124 :TIPセルへの書き込み(05)  125 :selection_changed イベント(14)  126 :グループ化されたシェイプについて(26)  127 :動的コネクタの頂点のX,Y指定(10)  128 :クローズイベントについて(08)  129 :参照設定のパスについて(23)  130 :[表示(V)]メニュー[図形ウィンドウ(N)]の制御(18)  131 :シェイプのコピーを制限する方法について(02)  132 :図面をresizeする方法(09)  133 :絵のイメージで表示し、イベントはとりたい(04)  134 :EXCELのタスクをCOLSEするには?(03)  135 :vb6.0での(03)  136 :続)EXCELのデータを取り込むには?(03)  137 :VC++からのオートメーション起動について(02)  138 :drawingcontrol上の図面の印刷(06)  139 :シェイプがマスターより派生されたかどうか調べる方法(09)  140 :改行コードについて(03)  141 :図ツールの表示(10)  142 :メッセージを非表示に出来ないでしょうか?(08)  143 :ステンシルの編集について(03)  144 :貼り付けたエクセルデータの取得方法について(13)  145 :シェイプシートの関数取得について(04)  146 :用紙方向(印刷方向?)の情報取得について(06)  147 :シェイプが削除された時の処理を実行したい(09)  148 :強調表示させることは出来ますか?(06)  149 :ページ名称を消すことはできますか?(11)  150 : IOleInPlaceFrame インターフェイスを正しく実装する方法(02) 
ログ検索  リロード  前のページ  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 次のページ  総てのスレッド  スレッド総数 696111 - 120 を表示


111: イベント中にシェイプのCellの値が変更できない  全レス

01: 名前:イサキ投稿日:2006/06/02(金) 16:56
こんにちは。Visio初心者です。
Visio2003のマクロについてどなたかご教授ください。

現在、ドキュメントのイベント中(QueryCancelSelectionDelete)にて、
あるシェイプのCellを書き換えようとしているのですが、
参照はできても、参照先を書き換えようとすると、例外エラーが発生してしまいます。
仕様?とも思っているのですが。。。

Dim input_shp as Visio.Shape
Dim target_shp as Visio.Shape

set input_shp = 該当シェイプ
set target_shp = 参照シェイプ

input_shp.Cells(該当Cell).Formula = target_shp.Name & "!" & 参照Cell

どなたかよろしくお願い致します。

■トップに戻る リロード  単独スレ表示



112: VISIOシェイプのアングルをVBAで制御したい  全レス

01: 名前:たけし投稿日:2006/05/27(土) 17:24
VISIOのマクロは全くの初心者です!

VISIOシェイプのアングルをVBAで制御したいと考えております。
任意のシェイプ(例えばsheet.1)を指定しアングルのみ変更するコマンド
はありませんでしょうか?

02: 名前:yoda投稿日:2006/05/27(土) 20:08
VBAのプロパティには、アングルはありませんが、
シェイプシートのAngleセルに式を設定するような、
方法があります。たとえば、
shp.Cells("Angle").Formula = "pi() / 2.0"

03: 名前:名無しさん投稿日:2006/05/28(日) 05:46
失礼!
shp.Cells("Angle").Formula = "90 deg" でした。

04: 名前:yoda投稿日:2006/05/28(日) 05:47
あわてたら、名無しになってしまいました。

■トップに戻る リロード  単独スレ表示



113: 画像ファイル出力オプションの指定方法について  全レス

01: 名前:shin投稿日:2006/05/22(月) 11:41
画像ファイルの出力について

挿入された画像を出力するにあたって、
JPG/PNGなどの拡張子を選択し出力しようとすると、
出力オプション画面が表示されます。
このとき、何らかのオプションを指定し出力します。
この一連のオペレーションを自動マクロに記録しても
オプション指定の内容が記録されてなく、
以下のコードのみ記録されます。

ActiveWindow.DeselectAll
ActiveWindow.Select Application.ActiveWindow.Page.Shapes.ItemFromID(1), visSelect
Application.ActiveWindow.Selection.Export "C:\Documents and Settings\デスクトップ\図面2.jpg"


出力オプションの内容をVBAのプログラム側から指定して、出力したいと考えています。
指定する方法がありましたら、教えて頂けないでしょうか?

以上、宜しくお願いします。

02: 名前:yoda投稿日:2006/05/22(月) 16:16
前にも同じ質問があったと思いますが、結論はどうでしたか、、、
多分、できないと思いましたが、、、、、

03: 名前:shin投稿日:2006/05/22(月) 18:35
yoda様
いつもお世話になっています。

過去ログを参照したところ(※Exportメソッドの設定の変更方法?)、
質問に対してのレスが一つもなかったので
質問させて頂きました。

VBAから出力オプションの設定ができないということは、
Exportメソッドで出力する際のオプションの設定内容は、
どんな値で出力されるものなのでしょうか?
デフォルト値みたいなものがあるのでしょうか?

以上、宜しくお願いします。

04: 名前:yoda投稿日:2006/05/22(月) 19:14
すみません、わかりません。

05: 名前:shin投稿日:2006/05/22(月) 20:05
yoda様

返信ありがとうございます。
まて、何かありましたら質問させて頂きたいと
思いますm(_ _)m

■トップに戻る リロード  単独スレ表示



114: 見積書の自動作成  全レス

01: 名前:タケシ投稿日:2006/05/18(木) 14:51
VISIO初心者のタケシと申します。

VISIOでラック図とかの自動見積りみたいなのが出来るようなのですが、
マイクロソフトのサンプルには図面だけで、計算機能のサンプルがありません。
どのように、図面上にある、各、アイテムの金額等を取得するのかわからないので
取得方法をアドバイス頂けないでしょうか?

出来れば、ラックの中のグループ単位の小計も取りたいのですが・・・

宜しくお願いします。

02: 名前:yoda投稿日:2006/05/18(木) 16:00
カスタムプロパティを調べると良いと思います。
詳しくは、ヘルプや、「Visio 2000ソリューション開発ガイド」
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/visio/DVS_00_Preface535.asp [source] [check]
や、Visio2003SDKのサンプルを参考にするとよいと思います。

03: 名前:visGeek投稿日:2006/05/19(金) 09:36
ツール→レポートもお試しください。

04: 名前:タケシ投稿日:2006/05/19(金) 13:08
ツール→レポートは最初に試してみましたが、
思うような結果は得られませんでした。
yodaさんに教えて頂いた、HPで取得の方法はわかりました。
これから、エクセル等への吐き出し方法等を探してみようと思っていますが、
上手くいくか自信が全然、ありません(笑)
また、お願いします。

05: 名前:visGeek投稿日:2006/05/19(金) 13:43
ツール→レポートでは望みものに
どう足りないのかを書くと、適切な回答が得られるかもしれませんよ。

06: 名前:タケシ投稿日:2006/05/20(土) 08:47
VISGEEKさんありがとうございます。
配置されている図形が、どのグループに所属しているかを取りたいのです。
それによって、このエリアに何が何個で、総額がいくらみたいなが出来たら良いなと思っています。

07: 名前:yoda投稿日:2006/05/20(土) 13:16
データベース・エキスポート・ウイザードで、ExcelかAccessにデータを
エキスポートして、計算させるというのは、どうでしょうかねー?
グループになっている図形の扱いが、どうなっているかですが。

08: 名前:visGeek投稿日:2006/05/21(日) 10:11
ツール→データベースにエクスポートおよび
ツール→アドオン→Visioエクストラ→データベースエクスポートウィザードは、
指定したセルのデータが出力されるだけです。
一方、シェイプが所属しているグループは
既存のセルやシェイプシート関数からは取得できません。
このままではお望みの結果を得ることはできないかと思います。

所属しているグループからではなくカスタムプロパティなどから
エリアの情報を取得する仕様にすれば
上記の機能を使ってエリア情報を出力することが可能になります。

■トップに戻る リロード  単独スレ表示



115: グループへの追加・削除について  全レス

01: 名前:shin投稿日:2006/05/19(金) 12:50
いつもお世話になっています。

グループシェイプについて質問させてください。

あるグループシェイプAに対して
シェイプBをドロップ&ドラッグでグループに追加します。

このシェイプBは、グループシェイプAの子シェイプとしてのみ
図面上の配置させたいと考えています。

ドロップ&ドラッグで、シェイプAに子シェイプとして配置されたのか?
ただ、図面に配置されたのか?判断する方法はありますでしょうか?
※ただ、図面に配置された場合や、グループシェイプから外された場合は、
 メッセージボックスでメッセージを表示しようとしています。

以上、よろしくお願いします。

02: 名前:visGeek投稿日:2006/05/19(金) 13:48
Document_ShapeAdded内でShape.Parentを検査すると良いでしょう。

03: 名前:shin投稿日:2006/05/19(金) 15:16
visGeek様

返信ありがとうございます。
Parentを試したところ、以下のコードでエラーになってしまいます。(Setのところで)
エラー内容は、型が一致していません。

現象としましては、シェイプBをグループに配置した際は、エラーは発生しません。
図面上に配置すると上記のエラーが発生します。

発生するときと、しないときの違いは何でしょうか?

Dim pShape As Visio.shape
Set pShape = shape.Parent

04: 名前:shin投稿日:2006/05/19(金) 15:23
visGeek様

すみません。
解決しました。
お騒がせしましたm(_ _)m

■トップに戻る リロード  単独スレ表示



116: DistanceFromメソッドがおかしい  全レス

01: 名前:yoda投稿日:2005/12/15(木) 16:00
英文の掲示板で、「DistanceFromメソッドがおかしい」ということが、
話題になっています。
二つのシェイプについて、シェイプAからシェイプBまでの距離と、
シェイプBからシェイプAまでの距離とが、食い違うことがある、
というものです。テストしてみると、確かに、そういう場合があります。
距離には、方向性はないというのが常識でしょうから、おかしい
というわけでしょうか。
http://msdn.microsoft.com/newsgroups/default.aspx?dg=microsoft.public.visio.developer.vba&lang=en&cr=US [source] [check]

02: 名前:M1号投稿日:2005/12/15(木) 17:44
同じ大きさの四角形シェイプでも片方を回転すると距離が異なるようです。
たぶん自分のコーナー(角)を基点に一番近い部分までの距離を測ってるからおかしなことになるんじゃないでしょうか・・・
文章では上手く説明できないのでuploadのほうに資料を載せました。

03: 名前:yoda投稿日:2005/12/16(金) 10:39
資料ありがとうございました。
距離が異なるという場合、どちらか短いほうが、
正しい距離になるのではないかという感じが
しますが、はたして、どうかわかりません。

04: 名前:yoda投稿日:2005/12/19(月) 10:34
距離が大幅に異なる例が、ありました。
逆台形と円の場合で、逆台形から測ると、
17.9mm、円から測ると、52.7mmでした。
17.9mmは、正しい距離のようですが、
52.7mmは、いったい、何なのか不明です。
upload bbs に図をアップしました。

05: 名前:visGeek投稿日:2006/05/06(土) 13:40
円と長方形の組み合わせでも同様の現象が確認できました。
大きな方の値が何であるかは、この場合に限ってですが分かりました。
http://visio.seesaa.net/article/17452169.html [source] [check]

仕様かバグか不明ですが、次期バージョンでは
まともな動きになることを期待します。

■トップに戻る リロード  単独スレ表示



117: OpenExで指定するファイル名と実際に開かれるファイル  全レス

01: 名前:visGeek投稿日:2006/05/04(木) 17:09
OpenExメソッドのヘルプにある「Basic_U.vss」を
Documents.OpenExすると、「Basic_M.vss」という
ステンシルが開かれ、Visio上での表示は「基本図形」となります。
「Basic_U.vss」というファイルは存在しません。

1)
なぜ、指定したものと違うファイル名の
ステンシルが開かれるのでしょうか?

「*_U.vss」を指定して、存在しない場合には
自動的に「*_M.vss」が開かれるという仕様というわけではなさそうです。
自作ステンシルに「_M」を付けておいて「_U」の指定では開けませんでした。

2)
Visio上に表示されるステンシルの
名前(基本図形)を、ファイル名(Basic_M.vss)以外
にするにはどうすればよいでしょうか?

02: 名前:yoda投稿日:2006/05/04(木) 17:33
日本語バージョンのVisioには、_U のステンシルは、入っていません。
呼んでも無駄だと思います。しかし、ファイル名だけで呼ぶと、確かに
そのようになりますねー。なぜでしょう。しかし、ファイル名をフルパスに
すると、「ファイルが見つかりません。」というエラーになります。
質問2は意味が分かりません。ファイル名を変更する方法ですか?

03: 名前:yoda投稿日:2006/05/04(木) 18:02
今、思い出したのですが、_Uで呼んでも、_Mが出てくるのは、多分、
セットアップファイルで、ファイル名の別名が定義してあるからでは
ないかと、思います。それを確認するには、Visioのセットアップファイル
の.msiという拡張子の付いたファイルをVisio2003SDKの配布用ツールか
WindowsXPのSDKの中にある、Orcaというユーティリティで分析すると
わかると思います。別名を定義してインストールすれば、多分、あくま
でも多分、逆に自分で作ったステンシルでも、同じようにすることがで
きるのではないかと、思います。

04: 名前:visGeek投稿日:2006/05/04(木) 20:07
1)
なるほど、別名というのがあるのですね。
Document.AlternateNamesプロパティの動き、確認しました。

また、Visio Solution Publishing Toolのヘルプによると
セットアップで別名を定義した場合にはAlternateNamesの
設定より優先されるとのことです。
レジストリに、この設定らしきキーを発見しました。
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Components\D884F1FCF6D8C9947AD820E6D13F1810

2)
通常「A.vss」を開けば、Visioのステンシルウィンドウのタイトルに
「A」(ドッキングの場合)や「A.vss」(非ドッキングの場合)と表示されます。
ところが「Basic_M.vss」を開くと「Basic_M」ではなく「基本図形」と表示されます。
Visio標準のステンシルはだいたいこのような動きになるようです。

これは、どういった仕組み(どこで設定する)でしょうか?
上記レジストリにそれらしい記述があり、Publishing Toolで
設定するような気もしますが、ヘルプの内容がいまいち理解できません。

-----Publishing Toolのヘルプより抜粋
Alternate names

Specifies a semi-colon-delimited list of alternate names
for the stencil. Determines the second part
(after the vertical separator) of the entry
in the AppData column for the record for this stencil file
in the PublishComponent table in the MSI.

This list overrides any existing list of alternate names
in the stencil file that was specified by using
the AlternateNames property of
the Microsoft Office Visio Document automation object.
When a stencil is published to Visio as an entry in
the PublishComponent table in an MSI, Visio ignores
the list of alternate stencil names stored in
the stencil document file and instead uses the list of
alternate names in the PublishComponent table
to find and open stencil files.
The Document.AlternateNames property returns
the list that is stored in the stencil document file,
not the list of alternate names from the PublishComponent table.

05: 名前:yoda投稿日:2006/05/04(木) 21:11
今、VisioのSetupファイルをOrcaで覗いてみましたが、
File Table のファイル名のところで、 | で区切って、別名が
定義できるのですが、SetUpファイルでは、ステンシルについては、
定義していませんでした。私の思い違いだったようです。

06: 名前:yoda投稿日:2006/05/05(金) 09:56
>「Basic_M.vss」を開くと「Basic_M」ではなく「基本図形」と表示されます。
>これは、どういった仕組み(どこで設定する)でしょうか?
これは、、PublishComponent tableのAppDataで定義します。
テンプレート(vst)の定義で、たとえば、
「配管アイソメ図\配管アイソメ図|tmpIsome.vst」 とし、
ステンシルの定義で、「配管継手|stnISOME.vss」とすると、
「図面の種類の選択画面」、テンプレートの大きなアイコン
の下のタイトル、開いたテンプレートのステンシルのタイトル
が日本語で表示されます。

07: 名前:visGeek投稿日:2006/05/05(金) 10:41
なるほど。

ということは、ステンシルファイル自体を
いじってどうなるというものではなく、
インストーラを作成しないといけないのですね。

参考になりました。
ありがとうございます。

08: 名前:yoda投稿日:2006/05/05(金) 17:17
06のようにしてインストールしたステンシルを、「名前をつけて保存」を
すると、「個人用図形」フォルダに保存されますが、そのときのファイル
名は、もとのファイル名ではなく、ステンシルのタイトルに表示されてい
る日本語のファイル名になってしまいます。もっと、わからないのは、
インストールされているステンシルのタイトルを、Titleプロパティで取得
しても、ステンシルに表示されているタイトルではなく、インストールされ
る前の、ステンシルのタイトルが取得されることです。

09: 名前:yoda投稿日:2006/05/06(土) 06:13
要するに、Visioのこの部分を作成した作者は、ステンシルのファイル名とタイトルを
混同している、ということのようです。

■トップに戻る リロード  単独スレ表示



118: Visual Studio .Net 2002からVisioにアタッチ  全レス

01: 名前:visGeek投稿日:2006/04/27(木) 21:53
Visual Studio .Net 2002にてmanaged COM add-inを作成しています。
作成したアドイン自体は正常に動作するのですが、VSから
Visioにアタッチしてでバッグ実行することができません。

VSからVisioを起動すると、起動直後にVisioが不正終了します。
ただ、自作以外のものも含めて、Visio起動時にアドインが
一つもロードされないような状態にしておくと、不正終了しません。

また、先にVisioを起動しておいてVSからアタッチをかけると
Visioは正常ですがブレークポイントが「?」マーク付きとなりストップしません。

VS2003でも同様でした。

原因・回避方法などご存じでしたらご教示ください。

07: 名前:visGeek投稿日:2006/05/01(月) 10:06
ご教示いただいた↓の方法で解決できました。
http://www.outlookcode.com/codedetail.aspx?id=1143 [source] [check]

ありがとうございます。

なお、VS2005ではデフォルトのままで
全く問題なくデバッグできるようです。

08: 名前:yoda投稿日:2006/05/01(月) 11:27
えーっ、できたんですかー?
私も、もう一度やってみます。

09: 名前:yoda投稿日:2006/05/02(火) 00:59
蛇足ですが、そのものずばりの記事がありました。
http://www.talkaboutsoftware.com/group/microsoft.public.visio.developer/messages/6130.html [source] [check]

10: 名前:yoda投稿日:2006/05/02(火) 02:10
Visio2003SDKのlesson3で、上のとおり、試してみましたが、
私の場合は、「現在の場所のソース コードを表示できません。」
と言うメッセージがでて、「混合モードを表示する」で、混合モード
になってしまいます。ヘルプを見ると、「ソースのないプロジェクト」を
クリックした。」と書いてあります。確かに、Visio.exeには、ソースは
ありませんが、、、、  いったい、何が原因でしょう?

11: 名前:visGeek投稿日:2006/05/02(火) 09:42
作成したアドインはロードされていますか?
ツール→マクロ→COMアドイン
で確認してください。

読み込んでいるアドインが最新のものでない場合、
下記手順で更新するとデバッグできるようです。
ソリューションエクスプローラのセットアッププロジェクト右クリックからアンインストール
→ソリューションをリビルド
→セットアッププロジェクトからインストール

12: 名前:yoda投稿日:2006/05/02(火) 11:59
ご回答ありがとうございました。
教えていただいた方法で、アドインをインストールし、ロードされたことを、
確認しましたが、結果は同じでした。
Visioを起動し、VS.netを起動、ソリューションを開き、Visioをアタッチ
すると、ソースコードのブレークポイントのマークが、?マークに変わって
しまいました。

13: 名前:yoda投稿日:2006/05/02(火) 13:09
できました!! ありがとうございました。
迷いのため、ソリューションファイルを移動してしまったのが
いけなかったようです。SDKのサンプルの場所へファイルを
戻し、再実行したら、出来ました。ありがとうございました。

14: 名前:visGeek投稿日:2006/05/04(木) 19:32
日本語の情報がないようですので、下記にまとめてみました。
http://visio.seesaa.net/article/17381275.html [source] [check]

15: 名前:yoda投稿日:2006/05/05(金) 10:22
たしかに、VS2005では、何の苦もなく、デバッグが開始できました。
アドインのプロジェクトのプロパティのデバッグで、「外部プログラムの開始」
を、Visio.exeにしておけば、正常にデバッグを開始できました。

■トップに戻る リロード  全レスを表示



119: シェイプのテキスト文字数について  全レス

01: 名前:shin投稿日:2006/04/22(土) 21:57
いつもお世話になっています。

配置されているシェイプのテキストに設定できる文字数を
取得する方法はありますでしょうか?

シェイプの面積以上の文字列を設定すると
シェイプをはみ出して文字が表現されてしまうところを
表示できる文字数だけシェイプ上に表示したいと考えています。
(シェイプテキストに設定する文字列は、カスタムプロパティで管理しています。)

以上、宜しくお願いします。

02: 名前:yoda投稿日:2006/04/23(日) 09:20
VBAなら、VBAのLEN関数、シェイプシートでなら、シェイプシートの
LEN関数で、求められると思います。どちらも、日本語の場合はどう
したらよいか、シェイプシートの場合は、関数の引数をどうしたらよいか
研究してみてください。

03: 名前:shin投稿日:2006/04/24(月) 10:59
yoda様
いつもありがとうございます。

説明が分りづらくて申し訳ありません。

やりたいことは、"シェイプに設定されている文字数"ではなく、
"シェイプからはみ出さずに設定できる文字数"を知りたいのです。

LEN関数で取得できるのは、"設定されている"文字数ですよね?

以上、宜しくお願いします。

04: 名前:yoda投稿日:2006/04/24(月) 18:26
それは、多分できないか、できたとしても、かなり複雑な処理が必要
だと思います。たとえば、フォントを変えただけでも、変わってしまいます。
Visioについている、注釈のシェイプを参考にすると、わかりますが、
テキストに合わせてサイズを変えるのが、せいぜい簡単に出来ること
ではないかと、思います。

05: 名前:shin投稿日:2006/04/26(水) 22:01
yoda様

確かに方法が見つかりませんでした。
せめて、シェイプからはみ出している状態か、
収まっている状態かくらいの情報を取得できれば
何とか対応な気がしましたが・・・

別の視点から探って見ます。
ありがとうございます。

06: 名前:M1号投稿日:2006/05/09(火) 16:15
>"シェイプからはみ出さずに設定できる文字数"を知りたいのです。
プロポーショナルフォントを使っていると文字単位でサイズが変わるので無理でしょうね。

入力されたテキストがはみ出したか否かであれば何とかできそうですけど^^;

■トップに戻る リロード  単独スレ表示



120: SelectionのDrop先  全レス

01: 名前:visGeek投稿日:2006/04/23(日) 22:10
コピー元ページの全シェイプを
コピー先ページの同じ位置にDropする機能を作成しています。

コードは下記の通りですが、コピー元ページに
ガイドや動的コネクタが含まれている場合に、
不正な場所にDropされることがあるようです。
ガイドがある場合には必ず不正で、コネクタの場合には
形状によって不正になったり正常になったりする気がします。

原因・回避方法などわかりましたらアドバイスをお願いします。
なお、シェイプを1つずつDropする方法は接着が維持されないのでNGです。


'コピー先にある既存のシェイプを全消去
Dim sl As Selection
Set sl = pgTo.CreateSelection(visSelTypeAll)
sl.Delete

'コピー元の全シェイプ
Set sl = pgFrom.CreateSelection(visSelTypeAll)

Dim dLeft As Double, dBottom As Double, dRight As Double, dTop As Double
sl.BoundingBox visBBoxExtents, dLeft, dBottom, dRight, dTop

Dim dXPos As Double, dYPos As Double
dXPos = (dLeft + dRight) / 2
dYPos = (dBottom + dTop) / 2

'ガイドや動的コネクタがある場合に不正な場所にドロップされることがあるが、回避方法不明
On Error Resume Next
pgTo.Drop sl, dXPos, dYPos 'ここで無意味なエラーが発生する
On Error GoTo 0

02: 名前:yoda投稿日:2006/04/24(月) 18:54
私も、以前このようなことで、だいぶ悩みました。
http://www32.ocn.ne.jp/~yoda/VISIO/Visio_Cpy_Paste.htm [source] [check]
に、以前作成した、コピー&ペーストのソフトがあります。
これは、マウスで指示した点に貼り付けるものですが、
X、Yに、0を入れ、別のページを開いて、「貼り付ける」を押せば、
選択した複数の図形が、同じ座標に複写できます。
今、簡単なテストをしたところでは、ガイドやコネクタがあっても、
正確に複写できるようです。細かいことは、忘れてしまいまし
たので、すみませんが、ダウンロードして、ごらんになってみて
ください。

03: 名前:visGeek投稿日:2006/04/26(水) 20:35
私のコードではずれが生じる図面でも
yoda様のソフトを使用すると正常に貼り付けられました。
コードの方、追って確認させていただきます。

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

■トップに戻る リロード  単独スレ表示


ログ検索  リロード  前のページ  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 次のページ  総てのスレッド  スレッド総数 696111 - 120 を表示