KoMaDo   VISIO SQUARE : VB/VBA  ■ Headline ■ HOME    

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

321 :強制終了された場合のイベント処理(04)  322 :VBAで図形の色を変更する (05)  323 :クリップボードをクリア(06)  324 :CSV出力でエラー(05)  325 :VisioでComment機能(08)  326 :VISIO図面内の1つのシェイプを選択する方法(06)  327 :MDI機能がありますか?(04)  328 :ExcelからVisioへの出力(05)  329 :Visioで。。(07)  330 :VB6からVISIO2003の図形操作かのうですか?(41)  331 :フォーカス機能?(18)  332 :Visio標準の保存をしたくない(03)  333 :ステンシルのVBAが別なOS・パソコンで動作しない(05)  334 :イミディエイトウインドウをクリアするツールボタン(03)  335 :プリインストールダイアログを消したい(04)  336 :ファイルパスの取得(04)  337 :カスタムプロパティをVBAで消す方法(04)  338 :ファイル保存時のメッセージ(11)  339 :Shapeのフォント名変更(15)  340 :ツールバーへコンボボックス(06)  341 :ハイパーリンクの削除(03)  342 :txtを元にした自動作図(03)  343 :2本の線を1つのパターンとして取得(05)  344 :選択した図形のシェイプシートの値をVBAで変更(05)  345 :VISIO2002、2003非互換について(06)  346 :新しいページの挿入法(05)  347 :Visioのオブジェクトモデルについて(03)  348 :グループ内の子シェープの選択判定(03)  349 :Shapeの色をRGB値で取得する方法(03)  350 :レイヤープロパティの「#」(02)  351 :SelectionChangedイベントについて・・・(05)  352 :図面内のアクティブなステンシルの取得(05)  353 :特定の図面オープン時に特定アドオンの実行(02)  354 :マクロで色を一括変換(07)  355 :グループ化した図形の座標取得(11)  356 :カスタムプロパティの変更前の値取得って可能なのですか?(03)  357 :ページを順番に取得する方法(02)  358 :XYToPageメソッドについて(05)  359 :マクロの削除の仕方(06)  360 :コネクタの経路を取得したい(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 次のページ  総てのスレッド  スレッド総数 696321 - 330 を表示


321: 強制終了された場合のイベント処理  全レス

01: 名前:けんくん投稿日:2004/04/28(水) 20:05
こんばんは。VBで2つのプロセスを作成しています。
メインとなるプロセス(@)で、別のプロセス(A)を起動し
メイン側で起動したプロセス(A)を強制終了しています。
プロセス(A)のフォーム終了時に処理させたいのですが
どんなイベントがあるのか分かりません。
何か良い方法があったら、教えて頂けないでしょうか?
宜しくお願いします。

02: 名前:yoda投稿日:2004/04/28(水) 20:37
>プロセス(A)のフォーム終了時に処理させたいのですが
何を終了させたいのでしょうか?プロセス(@)ですか?

03: 名前:yoda投稿日:2004/04/30(金) 17:26
ごめんなさい、読み間違えていました。
強制終了させたときは、Formのどの
VBのイベントを使っても、中で処理ができないですね。
なにか、他の方法があるとも、思えませんが。

04: 名前:yoda投稿日:2004/05/01(土) 00:05
http://homepage1.nifty.com/MADIA/vb/vb_bbs/200207_02070009.html [source] [check]
が参考になればいいのですが。

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



322: VBAで図形の色を変更する  全レス

01: 名前:とっとっとっ投稿日:2000/10/16(月) 19:36
VBAでshapeの色の替え方を教えていただけませんでしょうか?お願いします。

(windows2000professional,visio2000)

02: 名前:JunPapa投稿日:2000/10/17(火) 19:00
「塗りつぶしの書式」セクションの「FillForegnd」もしくは「FillBkgnd」を設定する
ことで出来ますが、設定の仕方に少しクセがあります。
塗りつぶしの模様が「0:なし」か「1:塗りつぶし」の場合は「FillForegnd」を設定して、
それ以外(斜線等の模様入り)の場合は「FillBkgnd」を設定します。
模様入りの場合に「FillForegnd」を設定してしまうと模様自体の色が変わってしまいます。
セルの設定の仕方はVisioの色番号(デフォルトは0〜23)でできますが「RGB」関数を使うと
好きな色を設定できるので便利です。

VBのコードで具体的にすると、
 ・ShapeObj.Cells("FillPattern")を取得するか設定する
  (この値が「0」の場合は「塗りつぶしなし」なので「0」以外を設定する)
 ・ShapeObj.Cells("FillPattern")の値が、
   「0」か「1」なら「ShapeObj.Cells("FillForegnd")」を設定、
   それ以外なら「ShapeObj.Cells("FillBkgnd")」を設定します。
 ・色の指定は(例です)、
   RGBで指定するなら、ShapeObj.Cells("FillBkgnd").Formula = "RGB(255,255,255)"
   Visio色番号で指定するなら、ShapeObj.Cells("FillBkgnd") = 1

こんな感じでできると思います。

03: 名前:とっとっとっ投稿日:2000/10/18(水) 12:28
できました!感謝感謝のシェイシェイです。ありがとうございました。

04: 名前:ピロ投稿日:2004/04/28(水) 19:17
オブジェクトの色を変更したく、こちらのスレッドを見たのですが、
いまいちVBA側から図形の色を変更できません。

具体的には「塗りつぶし色」で色をつけておき、その後シェイプシートの
"FillForegnd"項目を確認すると、色に応じてVisio色が記入されています。
しかし、ここの"FillForegnd"項目の数値を直接変更しても、図形には色が
反映されません。
同様にして、 ShapeObj.Cells("FillForegnd") = 1 などとVBAで記載しても
色が変更されません。図形は正しく選択されていますし、逆にMSGBOX等で
FillForegndの数値を取得して表示させると、現在の色は取得できます。
ちなみにFillPatternは0です。

VBAのコードから色を変更する場合には、上記のこと以外に設定する項目が
あるのでしょうか。

すみませんが、教えて頂ければ幸いです。

05: 名前:M2号投稿日:2004/04/28(水) 23:00
>ちなみにFillPatternは0です。
FillPatternが「0」ということは、塗りつぶしなしの状態です。
「0」以外を指定してください。通常のベタ塗りは「1」です。
また、図形座標セクションの「Geometry?.NoFill」セルが「True」の場合も
塗りつぶされないので「False」にしてください。

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



323: クリップボードをクリア  全レス

01: 名前:clip投稿日:2004/04/28(水) 13:32
クリップボードをクリアする方法が分かりません。

現在開いている図面の内容を全てコピーして、
別の図面に貼り付けるマクロを作成しているのですが、
後々の処理の都合で、クリップボードの中身をクリアしておきたいのです。

どなたかご存知の方、ご教授ください。
よろしくお願い致します。

02: 名前:yoda投稿日:2004/04/28(水) 16:02
http://www.f3.dion.ne.jp/~element/msaccess/AcTipsOfficeClipBoard.html [source] [check]
を参考にして見てはいかがでしょう?
クラスモジュールをダウンロードして見ましたが、
VisioのVBAでも、ソースコードが読めるので、
検討できそうです。
もし、うまくいったら、教えてくださいね。

03: 名前:yoda投稿日:2004/04/28(水) 16:09
ExcelのVBAでは、クリップボードを経由せずに、
コピーペーストできるというHPがあります。
Visioではどうでしょうか?
もしできれば、クリップボードをクリアする
必要もなさそうです。ここです。
http://www.asahi-net.or.jp/~zn3y-ngi/YNxv209.html [source] [check]

04: 名前:なか投稿日:2004/04/28(水) 16:24
↓こんな感じでどうでしょう
Private Declare Function OpenClipboard Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function EmptyClipboard Lib "user32" () As Long
Private Declare Function CloseClipboard Lib "user32" () As Long

Sub CopyPaste(shpObj As Visio.Shape)

ActiveWindow.Selection.Copy visCopyPasteNormal
ActivePage.Paste visCopyPasteNormal

OpenClipboard (Application.WindowHandle32)
EmptyClipboard
CloseClipboard

End Sub

05: 名前:clip投稿日:2004/04/28(水) 17:14
>yadaさま、なかさま
早速のご教授ありがとうございます!!


>yadaさま
クラスモジュールをダウンロードして
実行してみましたが、オブジェクト定義が。。とエラーになってしました。
' ------------//変数宣言部//-------------
Dim cb As CommandBar
Dim ocb As udtOfficeClipBoard
' --------------------------------------
上記の変数宣言がうまく機能していないようです(?)
もしかすると、私のやり方がヘタなだけかもしれません。
連休明けにでも、「クリップボードを経由せずに・・」
の方法も試してみようと思います。


>なかさま
早速実行したところ、バッチリうまくいきました!
ありがとうございました!!

06: 名前:clip投稿日:2004/04/28(水) 17:15
スミマセン!
yodaさまを間違えて、yadaさまと打ってしまっています。
申し訳ありません(ーー)

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



324: CSV出力でエラー  全レス

01: 名前:レレレ投稿日:2004/04/26(月) 17:02
Excel2000にVBAマクロが組み込んであるのですが、
シートからレコードを読み込んで、
単純にCSV出力でファイルを生成する処理を行なうのですが、
Viso5がインストールされているPCで動かすと途中でエラー表示され、
型が一致しないといわれます。
Visio5をアンインストールすると正常に処理されます。
出来れば、Visio5をアンインストールしない方法で解決したいのですが、
どなたかご存知であれば、原因だけでも教えてください。

02: 名前:yoda投稿日:2004/04/26(月) 17:17
参照設定で、microsoft office xx object libraly
を、追加すれば、良いと思います。

03: 名前:yoda投稿日:2004/04/26(月) 17:20
失礼、違うかもしれません。

04: 名前:レレレ投稿日:2004/04/26(月) 17:32
yodaさん、ありがとうございます。
念のため、確認してみます。

05: 名前:yoda投稿日:2004/04/26(月) 18:43
これも、Visio5とは、関係ないので、
違うと思うのですが、
Office2000で参照設定の項目数が、
4を超えるとき、型が違うというエラーが頻発
することがありました。

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



325: VisioでComment機能  全レス

01: 名前:投稿日:2004/04/22(木) 15:09
 入力するFormでtxtBoxのオブジェクトの名前がtxtOutlineです。

1。ICONをダブルクリックをするとFormが出て
2. 使用者がFormの中でオブジェクトの名前がtxtOutlineのtxtBoxに 入力
  したい文章を入力してOKボタンを押します。
3. MouseがICONの上に位置すると入力した文章が出ます。

私はこの中で3番の機能を具現したいです。
もちろん、ICONをクリックして insert-comment をクリックするとcommentに
文章を入力する事ができますが、私の場合はこの機能をVisualBasic Editor
で処理したいです。

お願いします。

02: 名前:yoda投稿日:2004/04/22(木) 15:22
Visioの図面の上での話ですか?
ICONというのは、Visioのシェイプのことですか?

03: 名前:投稿日:2004/04/23(金) 09:44
はい、そうです。

04: 名前:yoda投稿日:2004/04/23(金) 10:14
1.についてご返事します。
EventDblClickセルに、
CALLTHIS関数を適用します。
CALLTHIS関数については、HELP
の開発者用リファレンスの、シェイプシート
の、関数の中に、説明があり、その中の、
例3が参考になります。
CALLTHIS関数で指定したプロシージャ
(標準モジュール)
の引数shObjで、ダブルクリックしたシェイプを
取得できます。
例3のように、
Sub A(shpObj As Visio.Shape)のようになりますが、
shpObj As Visio.Shapeを忘れると、シェイプを
ダブルクリックしても、反応しないので、
注意してください。
Optionalキーワードも必須です。
ついでにRUNADDON関数についても、
参考にしてください。Visioの最新版では、
RUNADDON関数は、使わない方が無難です。

05: 名前:M2号投稿日:2004/04/25(日) 23:02
>ついでにRUNADDON関数についても、
>参考にしてください。Visioの最新版では、
>RUNADDON関数は、使わない方が無難です。

どうしてでしょうか?

06: 名前:yoda投稿日:2004/04/26(月) 04:58
原因は分かりませんが、
旧バージョンでは動いていたものが、
最新のバージョンでは、
CAKLLTHIS関数に変えなければ、
ならなくなるケースがありました。

07: 名前:yoda投稿日:2004/04/26(月) 05:01
過去ログにもあると思います。

08: 名前:M2号投稿日:2004/04/26(月) 09:25
過去ログ確認しました。ありがとうございます。

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



326: VISIO図面内の1つのシェイプを選択する方法  全レス

01: 名前:ピロ投稿日:2004/04/24(土) 22:39
VISIO図面内に配置した複数のオブジェクトのうちの1つを選択する方法が
分かりません。
"ActiveWindow.SelectAll" を記述するとすべてのオブジェクトが選択されますが
特定の1つを選択したい場合にはどのようにすればよいのでしょうか。

よろしくお願い致します。

02: 名前:yoda投稿日:2004/04/25(日) 03:56
Selectメソッドを使います。
ヘルプに使用例も書いてありますが。
たとえば、
Dim shp As Visio.Shape
Set shp = ThisDocument.Pages(1).Shapes(1)
ActiveWindow.Select shp, visSelect
のようにします。括弧の中は、
"名前" 又はインデックス です。

03: 名前:ピロ投稿日:2004/04/25(日) 19:11
yoda様
ご回答誠にありがとうございます。
もう1つお聞きしたいのですが、名前又はインデックスはどこで調べられるので
しょうか。オブジェクトを右クリック→プロパティで見ているのですが、それらしき
項目が見つけられませんでした。お手数をおかけしますが、教えて頂ければ
幸いでございます。お願い致します。

04: 名前:yoda投稿日:2004/04/25(日) 23:07
名前やインデックスは、メニュ「書式」の
「オブジェクト情報」で調べます。
IDがインデックスです。
IDは変えられません。
もちろん、shapeに対して、
nameプロパティや、indexプロパティで、
取得できます。

05: 名前:ピロ投稿日:2004/04/26(月) 01:45
yoda様
大変助かりました。できました。
教えて頂き、ありがとうございました。

06: 名前:yoda投稿日:2004/04/26(月) 04:54
IDとインデックスは、違います、
どのように違うかは、HELPで、
調べてください。

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



327: MDI機能がありますか?  全レス

01: 名前:投稿日:2004/04/23(金) 19:28
VISIOのVBでMDI機能がありますか?

02: 名前:yoda投稿日:2004/04/23(金) 20:43
MDI機能とは、何のことでしょうか?

03: 名前:yoda投稿日:2004/04/24(土) 01:53
MDIフォームなら、過去ログに質問が
ありますが、回答がなかったようです。
ここです。
http://www.mster.co.jp/visiosquare/cgi-bin/visbbs/mibbs.cgi?mo=p&fo=auto&tn=0379&rn=30 [source] [check]

04: 名前:yoda投稿日:2004/04/24(土) 05:44
これは、VisioのVBAフォームではなく、
VB6.0のフォームのようですね。

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



328: ExcelからVisioへの出力  全レス

01: 名前:josep投稿日:2004/01/29(木) 02:24
こんにちは,Visioの初心のものです.
エクセルのセルの値をそのままVisioのボックスに値を入れたいのですが,
どのようにすればいいのでしょうか.
あまりに初歩的な質問で申し訳ございません.

02: 名前:yoda投稿日:2004/01/29(木) 08:45
過去ログにないか、
さがしてみることを、
お勧めします。

03: 名前:多賀幸男投稿日:2004/04/22(木) 20:31
エクセルソフトからビジョソフトに変換するソフトが無いか

04: 名前:多賀幸男投稿日:2004/04/22(木) 20:33
エクセルからビジョに変換するソフトが無いか。

05: 名前:yoda投稿日:2004/04/22(木) 21:50
ないと思います。

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



329: Visioで。。  全レス

01: 名前:投稿日:2004/04/20(火) 23:07
String Typeを HyperLink に入れる方法がありますか?

02: 名前:M1号投稿日:2004/04/20(火) 23:42
shpObj.AddSection visSectionHyperlink
shpObj.AddNamedRow visSectionHyperlink, "url", 0
shpObj.Cells("Hyperlink.url.address").Formula = """http://www.yahoo.co.jp/"""

shpObjにハイパーリンクセクションを追加し行の名前を"url"とし値(飛び先)をYahooにしています。
これで分かりますか?

03: 名前:投稿日:2004/04/21(水) 09:53
申し訳ありませんが私のソースを下に書きました。
 でもエラーが発生しましたけど、AddSectionは
 shpObj.AddSection(Section as Integer) as Integer形じゃないですか?

 Private Sub btnOK_Click()
Dim scaleSize As String
Dim shpObj As Visio.Shape
Dim cellObj As Visio.Cell
Dim visSectionHyperlink As Hyperlink

  shpObj.AddSection visSectionHyperlink 'Error発生
shpObj.AddNamedRow visSectionHyperlink, "url", 0
shpObj.Cells("Hyperlink.url.address").Formula = """http://www.yahoo.co.jp/"""
 
  

04: 名前:M1号投稿日:2004/04/21(水) 11:06
VISIOのヘルプ-開発者用リファレンスのオートメーションの列挙型に定数一覧がありまして
visSectionHyperlinkは244(10進)となっているようです。

05: 名前:M1号投稿日:2004/04/21(水) 11:12
業務で開発なさるならyodaさんが教えてくださったMSサイトの『Visio 2000ソリューション開発ガイド』を印刷して
いつでも読めるように手元に置いておかれたほうがいいと思います。
基本的にはVisio2000でも2002でも2003でもオートメーションの考え方などは同じですから役に立つと思いますよ^^

06: 名前:投稿日:2004/04/21(水) 14:37
はい、本当に^^;
あなたが言うとおりにするつもりです。
VisioとVisualBasicも始めですから。。大変ですね。ㅡㅡ;

07: 名前:M1号投稿日:2004/04/21(水) 18:23
がんばってください。

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



330: VB6からVISIO2003の図形操作かのうですか?  レス数30でのページ 1 2  全レス

01: 名前:久利同憂投稿日:2004/01/13(火) 21:03
過去ログ VB6で検索したのですが、あまりいいのがないので新しく質問します。
.netも勉強中ですが、VB6もまだまだ仕事で使う予定です。よろしくお願いします。
ちなみにVISIO2003買う予定です。

33: 名前:なか投稿日:2004/04/15(木) 13:52
>VB6では、そもそも、ポップアップしないのでしょうか?
インテリジェンス機能のことですよね。VB6ありますよ。

>参照設定が正しくないからだと、思います。
私もそう思います。

>以下の設定でただしいですか?
それ、参照設定ちがうし

>Microsoft Visio 11.0 Drawing Contorol Type Library
>ならありますが、2003のときはこれでしょうか?
2003もってないんで分りませんが調べる方法はあります。
VBAの方の参照設定を調べてみてください。
そこには既に必要な参照設定がされているはずです。

34: 名前:久利同憂投稿日:2004/04/15(木) 16:40
>VBAの方の参照設定を調べてみてください。
とは、どうのような手順でしょうか?

35: 名前:久利同憂投稿日:2004/04/15(木) 16:42
ついでに、
>参照設定ちがうし
とはどのように違いますか?

36: 名前:yoda投稿日:2004/04/15(木) 16:59
私は、持っていないのですが、
Visio2003はお持ちですか?
34については、Visio2003のVBAの画面の、
メニュー「ツール」に、「参照設定」があると思います。

37: 名前:なか投稿日:2004/04/15(木) 17:00
>VBAの方の参照設定を調べてみてください。
とは、どうのような手順でしょうか?
Visioのメニュー[ツール]-[マクロ]-[Visual Basic エディタ]を選択
VBEのメニュー[ツール]-[参照設定]を選択
すると参照設定というタイトルのダイアログが開かれます。

>参照設定ちがうし
とはどのように違いますか?
VB6のメニュー[プロジェクト]-[参照設定]を選択
すると参照設定というタイトルのダイアログが開かれます。

VBAとVB6の参照設定でVBA側には設定してあって
VB6側に設定していないものを設定してやればできるはずです。

38: 名前:yoda投稿日:2004/04/15(木) 17:04
35については、VB6の場合でも、
「参照設定」の画面には、「参照設定」と、
書いてあると、思います。
ご提示の画像だと、「コンポーネント」と、
書いてありますね。
どのように違うのかは、知りませんが。

39: 名前:久利同憂投稿日:2004/04/16(金) 09:01
できました。★(@_@;)★!!!
とても大きな進展でした。ありがとうございます。

VsoCtl Type Liblary では参照設定がだめで
Microsoft Visio 11.0 Type Liblary では 参照設定 可能でした。

ちなみに
こんなんです。
http://www.coon.cc/users/bbb/Book5.html [source] [check]

次は文字出しと、図形ドロップに挑戦してみます。

40: 名前:なか投稿日:2004/04/16(金) 09:54
>できました。★(@_@;)★!!!
良かったですね。

>VsoCtl Type Liblary では参照設定がだめで
(31で追加されたコントロールを使用する場合は必要ですが使わない場合は)
これはいらないはずです。
不必要な参照設定は外しておくことをお勧めします。

>次は文字出しと、図形ドロップに挑戦してみます。
開発者リファレンスにサンプルなどもあるのでそれを見ながら頑張ってください。

#yodaさんお疲れ様でした。

41: 名前:久利同憂投稿日:2004/04/21(水) 12:29
みなさまのおかげで、いろいろわかりました。ありがとうございました。
以下にわかったことをまとめてみました。VISIO2003 を VB6でコントロール
されるかたがあれば、ご利用ください。

http://visio.coon.cc/ [source] [check]

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

 レス数30でのページ 1 2 [最新レス]

ログ検索  リロード  前のページ  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 次のページ  総てのスレッド  スレッド総数 696321 - 330 を表示